Announcement

Collapse
No announcement yet.

New Tigerlake CPU (Willow Cove Microarchitect) Update from CES 2020

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • ssk
    replied
    -
    Last edited by ssk; 20 Mar 2020, 13:17:08.

    Leave a comment:


  • Comlow
    replied
    Originally posted by ssk View Post
    ก่อนจะมาพูดแบบนี้นะครับ คุณควรเครีย
    เรื่อง fuse state ในประโยคที่คุณยกมา จาก wikichip ที่คุณใช้อ้างอิงว่าตอบผมก่อนครับ
    ตาม diagram ของ skylake ก็ในเมื่อ wikichip
    บอกว่าได้ คุณจะมาบอกว่าไม่ได้ ได้ยังไงครับ

    และช่วยตอบด้วยว่า
    1. คำสั่ง avx512 มันจะมุดเข้า FMA-256 bits ยังไงก่อนดีกว่าครับ
    2. ถ้า ไม่อยู่ใน fuse state มันจะมุดได้มั้ย?

    Dedicade ส่วน dedicade นะครับ
    นี่คุยเรื่อง fuse state อย่าเอามาปนกันครับ
    เอ ภาษาอังกฤษคุณท่าจะมีปัญหาจริงๆ เอ้า ผมจะอธิบายให้ง่ายๆ

    1 . คำสั่ง AVX 512 เมื่อ Decode แล้วก็จะเข้าสู่ Unified Scheduler ของ SKYLAKE X
    จากนั้นตัวคำสั่งก็จะทำการ Fused การทำงาน Port 0 และ 1 เพื่อรับชุดคำสั่งและข้อมูลเข้า
    ทำการประมวลผล ตัว Port 0 และ 1 มีขนาด รีจิสเตอร์กว้าง 256 bit เมื่อทำการ Fused
    เข้าก็จะได้รีจิสเตอร์กว้าง 512 bit ที่สามารถรับคำสั่ง AVX512 และข้อมูลขนาด 512-bit
    ได้พอดี แต่เนื่องจากว่าคำสั่ง AVX512 นั้นต้องการรีจิสเตอร์ทั้งหมด 32 ชุดในการทำงานคือ
    ZMM0-31

    ดังนั้น Intel จึงได้เพิ่มรีจิสเตอร์พิเศษ 256-bit เข้ามาให้ CPU Skylake X
    Cascade Lake และ CPU รุ่นใหม่กว่านี้เช่น Icelake Tigerlake ขึ้นไปอีก 16 ชุดสำหรับ
    พอร์ต 0 และ 1 นอกเหนือจาก Skylake Client ปกติ เมื่อทำงานกับคำสั่ง AVX512
    แล้วผลลัพธ์ก็จะส่งไปเก็บไว้ใน Port 4 ในภาพไดอะแกรมที่ได้รับการขยายความกว้าง
    Databus เป็น 512-bit ไว้รับผลลัพธ์ในการประมวลผลข้อมูล 512-bit ชุดที่ 1 ก่อนจะส่ง
    ออกไปสู่ L1 data cache L2 และ L3 cache ตามลำดับ

    นอกจากที่กล่าวมาแล้วใน Skylake X ขึ้นไป Intel ยังได้เพิ่ม AVX512 Unit อีกชุด
    ที่ไม่ต้อง Fused การทำงานแบบข้างบนที่กล่าวมาใน Port ที่ 5 ในไดอะแกรม ที่ได้รับ
    การขยายความกว้าง Databus เป็น 512 bit และมีรีติสเตอร์ ZMM0-31 อีกชุดรอไว้แล้ว
    เพื่อรองรับการประมวลผล AVX512 อีก 1 คำสั่งขนานไปกับชุดแรกที่เกิดจากการ Fused
    Port 0 และ 1 ครับ นี่คือที่มาของ FMA512 Unit 2 ชุดใน Data Sheet

    คุณก็จะเห็นได้ว่า Skylake X ขึ้นไป CPU Intel สามารถประมวลผลข้อมูลในลักษณะขนาน
    ได้ทั้ง X64/MMX/SSE/AVX/AVX2 และ AVX512 ได้อย่างสบาย ไม่ต้องรอแบบที่คุณเข้าใจ

    แต่ในส่วน Ryzen นั้นอาจจะตรงกันข้าม เพราะ FPU Pipeline ในภาพที่คุณได้เห็นจะแบ่ง
    การทำงานเป็น 2 ชนิดคือ FADD (การบวกลบทศนิยม เลขยกกำลัง Log) และ FMAC
    (การคูณ หาร สแควร์รูท ตรีโกณมิติ) ชนิดละ 2 pipe ชนิด FADD กว้าง 128 bit ใน
    ขณะที่ FMAC กว้าง 128/256(ZEN2) bit

    ถ้าเจอกับคำสั่ง FMA3 เช่น a x (b+c) =? เข้าไป ฝั่ง Intel สามารถประมวลผลได้
    เลย 2 คำสั่งต่อรอบสัญญานนาฬิกา ส่วน AMD ต้องรอผลลัพธ์จากแต่ละ pipe แล้วจึง
    นำมารวมกันอีก

    นี่แหละคือความแตกต่าง และที่ผมกล่าวว่า สถาปัตยกรรม Intel เหนือกว่ามาก


    2. ไม่ต้องมุดใดๆ เลยครับ ผมอธิบายให้คุณเห็นแล้วไงครับ ว่า Instruction Windows
    ของ Skylake Microarchitect ขึ้นไปกว้าง 64 Byte หรือ 512-bit อยู่แล้ว คุณสามารถ
    จะเลือกประมวลได้ทั้งรูปแบบการ Fused Port 0+1 หรือส่งเข้า Port 5 ตรงๆ เลยก็ได้
    มีจำนวนรีจิสเตอร์เหลือเฟือ 1 Core ของ Skylake X ขึ้นไป คุณมึ 64 ชุด 512-bit ครับ
    ก็ลองดูคร่าวๆ ตามหลัก More Core ของคุณว่า 18 Core 28 Core 56 Core จะขนาดไหน
    นะครับ

    โอเคนะครับผม

    Leave a comment:


  • ssk
    replied
    -
    Last edited by ssk; 20 Mar 2020, 13:17:02.

    Leave a comment:


  • Hangger
    replied
    ตัวเล็กตัวน้อยมาครบ

    Leave a comment:


  • Comlow
    replied
    Originally posted by ssk View Post
    และก็เรื่อง Optimised OS ผมไปย้อนนั่งอ่านที่พูดๆไปแล้ว
    ผมว่าเรื่องนี้จบตั้งแต่ ไม่เคยเล่น PUBG เรอะ นั่นแหละ
    ผมสรุปเลยละกัน

    คือ ที่มีคนพูดว่า
    เราก็รู้นี่ึรับว่า เราไม่เคยซื้อ CPU ด้วยเหตุผลแค่นานาจิตตังนะครับ เห็นแต่ดูความคุ้มค่า
    หลักๆเราก็ดู SPEC ราคา งบ กันแค่นั้นเอง ถ้างานเราไม่ได้ใช้ AVX512 ก็ตัดออก
    แต่เราก็มองที่จำนวน CORE สูงสุดต่องบที่เราเลือกเสมอนี่ครับ จริงมั้ย

    เพราะ MORE CORE = More MOdule More Processing Power ถูกมั้ยครับ
    จะอะไรเราก็ได้มากกว่าแค่ชุดคำสั่งของมัน

    ส่วน DUAL CORE จะไม่มีที่ยืนก็ถูกแล้ว จาก Roadmap Chart
    มันก็กำลัง PHASE OUT ออกไป
    และการที่มันจะอยู่หรือไปมันไม่ใช่ว่ายังมีไครใช้ของเก่าอยู่ครับ
    มันจะหายไปมี 2 อย่าง คือ
    ไม่มีไครซื้อ กับ ใช้งานในปัจจุบันไม่ได้

    ผมจบแค่นี้ ขอบคุณครับ
    ผมบอกแล้วประเด็นตรงนี้ตั้งแต่แรกว่าเป็นเรื่องนานาจิตตัง แต่ในที่สุดคุณสามารถเข้าใจได้ก็นับได้ว่า
    ผมไม่ได้เสียเวลาเปล่าที่พิมพ์บอกคุณไว้ตั้งแต่ต้น เงินใครก็ให้เขาตัดสินใจเองดีกว่า

    สำหรับผู้ที่ชอบสถาปัตยกรรม CPU ใหม่ๆ ทุกท่านคงไม่ลังเลจะเลือกสถาปัตยกรรมที่ดีกว่าและทันสมัยกว่า
    แต่สำหรับผู้ชอบความคุ้มค่าก็อาจจะพิจารณาเลือกสถาปัตยกรรมที่ล้าสมัยกว่า แต่จำนวน Core เยอะกว่า
    ยินดีครับที่คุณมาเข้าใจได้ว่า จะถกกันไปก็เสียเวลาเปล่าในประเด็นนี้

    Leave a comment:


  • Comlow
    replied
    Originally posted by ssk View Post
    ประโยคนี้ประโยคเดียว ก็เพียงพอที่จะ ทำให้เข้าใจเรื่อง AVX-512 VM และ ข้อข้องใจอื่นๆอีกเยอะ เดี๋ยวค่อยๆใล่เอามาเครียทีละข้อๆ


    [ATTACH=CONFIG]4487273[/ATTACH]


    กล่าวคือจากรูปนี้นะครับ เราจะเห็น Qoeue ของงาน ตามที่ผมเคยแปะไว้ข้างบน ผมใส่ MOVE BLOCK ประกอยครับ เพื่อขยายความเรื่อง More Core More Choise ของ SYSTEM ครับ คงจะเข้าใจกันนะครับ ไม่ต้องอธิบายเพิ่ม
    [ATTACH=CONFIG]4487162[/ATTACH]

    เมื่อ เจอคำสั่ง AVX 512 เข้ามา มันจะรวมชุดคำสั่ง 256 BITS 2 ชุดเข้ามาเป็นคำสั่งเดียว
    ถูกมั้ย เพื่อจัดการงาน ง ตามภาพนี้
    [ATTACH=CONFIG]4487254[/ATTACH]
    แล้วด้วยเหตุผลนี้ เราจึงสามารถจำลองคำสั่ง
    AVX-512 ด้วย AVX 256 2 ตาม ทฤษฎี Intel ถึงทำ VM SDE ที่ผมไปหามาให้
    ให้นักพัฒนาไปทดสอบก่อนได้ไงครับ เพราะการ FUSE ไม่ได้หลอมรวมกันครับ
    แต่ละบล๊อคก็มี Pipeline เป็นของตัวเอง มี Block ของ Module บน FAB แยกกัน
    ซึ่งคำสั่ง+DATA ตั้งแบ่งข้างกันเข้าข้างละ 256+256 ครับ ตามรูป
    ซึ่งตรงนี้ผมจะพาดพิงล่ะนะ

    ด้วยการทำงานแบบนี้ มีคนพูดไว้แบบนี้จึงผิดครับ


    ซึ่งตรงนี้ครับ ที่มันทำได้ นี่ครับ INTEL เป็นคนทำเอง ในการรวมคำสั่ง 256 BITS 2 ตัวขึ้นมา ส่วน Register ในเมื่อมันสามารถแบ่ง Operand เป็น 2 ส่วน เข้าไปได้
    Register ก็สามารแบ่งเป็น 256 BITS เข้าไปได้ หลักการนี้ก็ใช้กับ GPU ครับ
    ไม่งั้น GPU จะคำนวณ Double Precision Float ได้ยังไง

    ซึ่งการที่มีคนพูดในความเห็นนี้จึงผิด
    https://www.overclockzone.com/forums...1#post76873066
    ตามนี้จึงผิด


    เพราะการคำนวณส่วนใหญ่บนงาน Desktop ที่เราใช้ มันคำนวณแค่
    Single precision 32bits/64 bits double precision ครับ
    [ATTACH=CONFIG]4487272[/ATTACH]
    จากรูปก็จะเห็นว่า SMD คำนวณแบบนี้ แต่คำนวณทีละ 2-4 Word

    ซึ่งจากการทดลอง RUN BENCHMARK Software ก็เห้นว่ามัน Detech hardware ID
    แล้วจึงจัดการ Bench ด้วยชุดคำสั่งที่สนับสนุน ถ้ามันไม่สนับสนุน
    64 bits double precision Float calculate มันจะวัดค่าออกมาได้ยังไง
    และการวัดค้าลงมาแปะใน WEB แบบนี้ ถ้ามันทำไม่ได้เว็บดังๆอย่าง Tech Power Up เค้าคงไม่ลงครับ
    งานแบบนี้มโน คำนวณเทียบเอาไม่ได้ครับ
    https://www.techpowerup.com/gpu-spec...-gt-1030.c2954
    ถ้าทำได้มันก็ขัดกับที่ผม TEST R3-1200 ด้วย SDE-VM สิครับ ถูกมั้ย
    ตรงนี้เรื่อง VM-TEST ON CPU-Z จึงตกไปจริงๆ และผมไม่ได้ TEST แค่นี้
    ผมเทส 4 ตัว
    1. CPU-Z
    2. AIDA64
    3. SISSOFT SANDRA
    4. Prime 95
    ทุกตัวผลลัพท์ตรงกัน และผมได้แปะข้อจำกัดไปแล้ว แต่ยังมีบางคนใช้เป็นข้อต่อสู้ซ้ำๆซาก
    ผมจึงต้องด่าครับ จะได้หยุดและเข้าประเด็นจริงๆซะที


    เปิดให้อ่านรอขอ้โต้แย้งครับ 31-1 @16:30

    เพิ่มครับ จากหลักการ FUSE Module State จาก 256+256 มันยังทำให้ที่ผมพูดในนี้สอดคล้องกันครับ
    https://www.overclockzone.com/forums...1#post76872955

    ซึ่งการ FUSE จะต้องใช้ชุดคำสั่งที่คล้ายครึงกัน 2 ชุดครับ ในเมื่อ AVX256 เป็น SUBSET ของ AVX512 มันจึงใช้กับคำสั่งที่เป็น
    Complex 256+256 หลายๆตัวได้ครับ ซึ่งในการพัฒนา CPU นั้น คำสั่งแบบนี้เค้าก็ใช้วิธ๊ Doubled+add native ครับ
    คำสั่งที่พัฒนาต่อเนื่องหลายๆตัวเป็นแบบนี้แหละครับ ก็คือเราการขยาย Block คำสั่งดั้งเดิมที่จะใช้ให้ครอบคลุม Word Wide
    แล้วยืนยันได้จากอะไรล่ะ จำผี Meldown+spector ไม่ได้เหรอครับ
    ้เพราะมันโจมตีได้เพราะแบบนี้แหละครับ เพราะ CPU Gen ต่อ GEN มันพัฒนาโดยใช้การเพิ่มชุดคำสั่งดั้งเดิมเข้าไป
    การเพิ่มประสิทธิภาพ Instruction Percycle Time ตรงๆง่ายๆอย่างนึงคือการ Add Module Or Submodule เพิ่มครับ
    แล้วแยกเป็นสายไว้ที่เรียก PIPELINE เพื่อให้ Compatback และสามารถทำงานคู่ขนานกับคำสั่งเก่าๆได้
    ไม่ต้องรอสถานะว่างครับ ถ้าไม่มี Pipeline มันต้องรอคำสั่งก่อนหน้าทั้ง Block
    ทั้งๆที่ มันมีปีกว่างๆอยู่ ตามภาพด้านบนครับ Scheduler ก็ต้องมาคอยจัดคิวงานให้มันลงแน่นๆครับ
    สอดคล้องกับ Post คำถามแรกของวัน

    ซึ่งตรงนี้ต้องเครียก่อนครับ ถึงจะไปคุยเรื่อง Optimised More Core OR dual Core OS
    ที่เคยเถียงไว้ครับ และเป็นเหตุให้ผมโผล่มาแถวนี้แหละ
    555 เข้ามาอ่านช่วงหลังๆ แล้วค่อยชื่นใจหน่อยนะครับ ผมคิดว่ามีความเข้าใจผิดหลายจุดในสิ่งที่คุณ SSK ได้ยกมา

    1. กรณีที่ยกมาข้างบนสำหรับคำสั่ง AVX512 นั้น ไม่ใช่การรวมคำสั่ง AVX256 2 ชุดเป็นคำสั่งเดียวครับ
    ชุดคำสั่ง AVX512 แยกออกจาก AVX2 ค่อนข้างจะชัดเจน และแบ่งเป็นคำสั่งย่อยจำนวนมากดังแผนภูมิ
    Euler ที่ผมได้ลงให้ทุกท่านดูแล้วในคำถามที่ท่านโหงพรายได้ถามเรื่อง CPU AVX512 สำหรับ Desktop
    และคำสั่ง AVX512 F/CD/BW/IFMA/VBMI/VBMI2/.../VP2 Intersect นั้นก็มีการเรียกใช้ฮาร์ดแวร์
    เฉพาะของ CPU แต่ละ Generation ที่ต่างกัน

    ถ้าไปสรุปว่า AVX512 คือการรวมเอาคำสั่ง AVX2 256 บิต ที่คล้ายกันมารวมกันก็เข้าใจผิดสิ้นเชิงอย่างเต็มๆ ครับ
    และบทพิสูจน์ในเรื่องการทดสอบ Benchmark Sisoft Sandra ผ่าน VM ของท่าน SSK ก็ได้พิสูจน์ชัดแล้วนี่ครับ
    ว่าสิ่งที่คุณคิดมันผิด ซอฟต์แวร์ Emulated มันก็มีข้อจำกัดนะครับ ถ้า Hardware คุณไม่มีทรัพยากรที่ระบบต้องการ
    เป็นพื้นฐาน ยังไงมันก็ไม่สามารถทำงานได้อย่างที่ Ryzen 3 ไม่สามารถใช้คำสั่ง AVX512 BW/VL ได้ที่ทุกท่านได้
    เห็นมาแล้ว

    ด้วยเหตุผลเดียวกันนี้ แม้ CPU ที่สนับสนุน AVX512 อย่าง Skylake X ปัจจุบัน ก็ไม่สามารถประมวลผลคำสั่ง AVX512 VNNI/BFLOT16/GFNI/VBMI1/VBMI2/.../VP2INTERSEC ใน Cascadelake/Cooperlake /Icelake และ Tiger Lake ได้เพราะฮาร์ดแวร์ไม่สนับสนุนนะครับ

    เหมือนที่เราผ่านยุค SSE มาเป็น AVX2 นั้นละครับ ถ้า CPU เราสนับสนุนเพียง SSE 128-bit จะไปคิดรวมคำสั่งที่คล้ายๆ กัน 2 คำสั่งให้เป็นคำสั่ง AVX นั่นได้ไหม!? มันไม่ได้นะครับทุกท่าน ไม่ใช่ ช่องที่ 1 มี น้ำส้ม 1 ขวดเอามารวมกันเป็น น้ำส้ม 2 ขวด นะครับ แบบท่าน SSK คาดเดามานะครับ

    2. ส่วนปัญหา Spectre และ Meltdown นั้นเป็นคนละประเด็นกับเรื่องที่ท่านพยายามรวมกันมั่วไปหมดแบบจับต้นชนปลายกันเละเทะน้ำท่วมทุ่งต้องแยกเป็น Spectre และ Meltdown ซึ่งปัจจุบันได้รับการแก้ไขไปเป็นที่เรียบร้อยแล้วจาก Intel ด้วยการอัพเดต Microcode และทุกผู้ผลิตเมนบอร์ดรายใหญ่ๆ ต่างก็อัพเดต BIOS ที่บรรจุ Microcode ไว้แก้ไขปัญหา เหมือนกรณี AGESA ทางซีก AMD ที่อัพกันเรื่อยๆ

    สำหรับ เรื่อง Spectre และ Meltdown ก็ไม่ใช่ว่าจะเกิดกับ CPU Intel เพียงค่ายเดียวครับ CPU ที่มีพื้นฐานจาก ARM32/64 แม้กระทั่ง AMD ก็มีปัญหา อันเนื่องมาจากเทคนิค Speculative ใน CPU รุ่นใหม่ๆ ไม่เกี่ยวกับ AVX512 อะไรเลยครับ ถ้าจะคุยประเด็น Spectre และ Meltdown ลึกๆ ผมยินดีครับ
    Last edited by Comlow; 31 Jan 2020, 22:16:50.

    Leave a comment:


  • Comlow
    replied
    Originally posted by ssk View Post
    คุณยังตอบคำถามผมเองด้วยตัวเองยังไม่ได้เลย คำภามคุณผมไม่จำเป็นต้องตอบ
    ซึ่งการที่คุณไม่กล้าแปล แต่ไปยกที่ผมตัดมามาตอบผมเอง
    ถ้าคุณรู้เรื่องจริง คุณควรแปลให้ผมฟัง มันไม่ใช่คำตอบครับ
    อย่ามักง่าย

    คุณมันกลวง

    ผมคงไม่สนใจคำถามหรือคำตอบอะไรจากคุณแล้วล่ะ มันหมดความน่าสนใจไปแล้ว
    และผมคงไม่รอคุณแล้วล่ะนะ ผมไปของผมเองเรื่อยๆเลยละกัน
    จบเรื่องที่ผมต้องเสนอผมก็ไปใหนของผมไป
    คงมียก Qoute ของคุณมาบ้าง คุณจะตอบก็ได้
    แต่ไม่ใช่เรื่องของผม ผมคงไม่ตอบ

    คุณอยากพร่ามอะไรของคุณ หรือไครจะเสริมอะไรก็ตามสบาย
    ขออย่าให้ข้ามหน้า เดี๋ยวผมจะมาต่อ
    จะได้ไม่ต้องอ้างอิงไกลมาก
    555 อะไรกันครับ ผมได้ตอบคำถามไปชัดเจนแล้วนี่ เอ ภาษาอังกฤษคุณอ่อนแอถึงกับแปลไม่ออกเหรอครับผม ถึงกับจะต้องให้ผมมาแปลให้ โอย คุณ SSK

    แต่คุณกลับยังไม่ได้ตอบผมเลย ขนาดโพยอยู่ตรงหน้า
    Last edited by Comlow; 31 Jan 2020, 23:03:55.

    Leave a comment:


  • Dasd
    replied
    ตอนนี้ท่าน Comlow กำลังประลองวิทธยาวยุทรกับท่าน ssk อยู่ ครับ

    Leave a comment:


  • Dasd
    replied
    Originally posted by ไซย่า View Post
    บอกตรงๆ ครับ พยายามอ่านทุกบรรทัด แต่แทบจะไม่เข้าใจเลย..............
    ไม่เข้าใจ ก็ดูเฉยๆ ครับ คนที่เข้าใจได้ ต้องเรียนมาด้านนี้โดยตรง หรือไม่ก็ทำงานด้านนี้ ครับ
    Last edited by Dasd; 31 Jan 2020, 19:38:34.

    Leave a comment:


  • ไซย่า
    replied
    บอกตรงๆ ครับ พยายามอ่านทุกบรรทัด แต่แทบจะไม่เข้าใจเลย..............

    Leave a comment:


  • ssk
    replied
    อีกตัวที่ผมถามปีที่แล้ว LAKEFIELD Stack CPU


    ประมาณนี้ครับ

    Leave a comment:


  • ssk
    replied
    เก็บตกเรื่องนึงครับ ผมลือม เรื่อง HSA
    จริงมันเป็นเรื่อง SYSTEM Architecture มันไม่ได้พัฒนาเร็วครับ
    มันจะดูเงียบๆแบบนี้แหละครับ เราะมันเป็นกรอบกว้างๆของระบบ
    ตอนนี้แต่ละคนก็ทำ component ไปครับ นานๆโผล่ทีนึง
    ที่เห็นๆ ก็ ARM Dinamiq

    และก็พัฒนาพวก Cluster Component อย่าง N-core ที่สำหรับงาน AI ครับ
    https://www.arm.com/products/silicon-ip-cpu
    Last edited by ssk; 31 Jan 2020, 19:04:59.

    Leave a comment:


  • TWK.
    replied

    Leave a comment:


  • ssk
    replied
    -
    Last edited by ssk; 20 Mar 2020, 13:16:46.

    Leave a comment:


  • ssk
    replied
    -
    Last edited by ssk; 20 Mar 2020, 13:16:40.

    Leave a comment:

Working...
X