Announcement

Collapse
No announcement yet.

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

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

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

    Comment


    • 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 จะขนาดไหน
      นะครับ

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

      Comment


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

        Comment


        • Originally posted by ssk View Post
          ข้อ 2 อ่านดีๆครับ ว่า ถ้า ไม่อยู่ใน fuse state มันจะมุดได้มั้ย?
          ถ้าไม่ FUSE ทั้งก้อน 512 BITS มันจะเข้าได้ยังไงครับ คือ FUSE AVX-512 มุดได้น่ะถูก
          แต่ถ้าไม่ FUSE มันจะมุดยังไงครับ ในเมื่อเค้าเขียนว่าต้อง FUSE ก่อน ถึงจะมุดได้ครับ
          ถ้ามุดตรงๆมันก็ต้อง AVX 256 สิครับ ถูกมั้ย?
          มุดทำไมล่ะครับ ในเมื่อ instruction Windows กว้าง 512-bit จะมุดเพื่อ?
          โปรแกรมเมอร์ที่ฉลาด ถ้าไปตรงๆ ได้จะมาย่อเพื่อมุดทำไมครับ คุณเข้าใจ instruction windows wide ไหมตกลง?
          นี่ Skylake นะครับ ไม่ใช่ Ryzen ถึงจะต้องมุด

          อ่านที่ผมอธิบายดีๆ คุณจะประมวลคำสั่ง AVX512 หรือ AVX256 ล่ะ ตกลง

          Comment


          • ถ้าจะประมวลผล AVX512 แสดงว่าคุณจะทำงานกับข้อมูลชนิด 512-bit
            ประตูทางเข้า 512-bit คุณก็ส่งทั้ง คำสั่งและข้อมูลเข้าไปตรงๆ เลยพ่อหนุ่ม
            จะมาย่อลงเหมือน Ryzen 256-bit 2 ชุดให้เกิด Latency แบบในภาพนี้
            ไปเพื่ออะไร?


            Latency PXET/PDEP (ns) Lower is better

            Instructions Windows Wide 64Byte performance (SKL/KBL/CFL/CML) VS ZEN(Pinnacle ridge/Matisse) 32Byte wide

            เอาแค่หอมปากหอมคอน้อ ยิ่งลงลึก เดี๋ยวจะมีคนขาย Ryzen อาม่าทิ้งกันหมด

            Comment


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

              Comment


              • มุดทำไมล่ะครับ ในเมื่อ instruction Windows กว้าง 512-bit จะมุดเพื่อ?
                โปรแกรมเมอร์ที่ฉลาด ถ้าไปตรงๆ ได้จะมาย่อเพื่อมุดทำไมครับ คุณเข้าใจ instruction windows wide ไหมตกลง?
                นี่ Skylake นะครับ ไม่ใช่ Ryzen ถึงจะต้องมุด

                อ่านที่ผมอธิบายดีๆ คุณจะประมวลคำสั่ง AVX512 หรือ AVX256 ล่ะ ตกลง
                ผมเพิ่งเห็น คือผมจะบอกว่า
                - เดิม Port 0 กับ 1 ถ้าไม่ FUSE ประตูมันจะเป็น 2.5 เมตร+2.5 เมตร ที่ยังมีเสากลางถูกมั้ย?
                - ของกว้าง 5 เมตร มันจะเข้าไม่ได้เพราะติดเสากลาง ถูกมั้ย?
                - มันจึงต้อง Fuse เพื่อเอาเสากลางออก ถึงจะเอาของกว้าง 5 เมตร เข้าไปได้ ถูกมั้ย?

                นี่คือจุดมุ่งหมายที่ถามครับ

                Comment


                • Originally posted by ssk View Post
                  ผมเพิ่งเห็น คือผมจะบอกว่า
                  - เดิม Port 0 กับ 1 ถ้าไม่ FUSE ประตูมันจะเป็น 2.5 เมตร+2.5 เมตร ที่ยังมีเสากลางถูกมั้ย?
                  - ของกว้าง 5 เมตร มันจะเข้าไม่ได้เพราะติดเสากลาง ถูกมั้ย?
                  - มันจึงต้อง Fuse เพื่อเอาเสากลางออก ถึงจะเอาของกว้าง 5 เมตร เข้าไปได้ ถูกมั้ย?

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

                  และเพิ่มเติมให้อีกนิดนึง เห็นคุณมีพื้นฐานด้านการใช้ VM Emulated กว่าใคร ผมอยากให้คุณสังเกตเห็นอะไร
                  บางอย่าง ในสมัยก่อนคำสั่ง MMX 3DNOW SSE นั่นจะมีเพียงรีจิสเตอร์ 8 ชุดเท่าๆ กัน กับ IA32 X86 ใช่ไหม
                  ในช่วงนั้น พอมายุค AVX2 มีการเพิ่มจำนวนเป็น 16 ชุด กว้าง 256 bit และตามด้วยยุค AVX512 เพิ่มเข้ามา
                  เป็น 64 ชุดกว้าง 512 bit

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

                  และผมยินดีที่คุณเริ่มเข้าใจสิ่งที่ผมพยายามจะสื่อให้คุณและเพื่อนที่ใช้ AMD ทราบอย่างเป็นมิตร มิได้มุ่งจะ
                  กล่าวตำหนิหรือดูถูกดูแคลนผู้ใช้ AMD แต่อย่างใด
                  Last edited by Comlow; 1 Feb 2020, 10:42:43.

                  Comment


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

                    Comment


                    • โอ่ คุณ Comlow คุณโดนหยาบๆ ใส่คุณยังคุมอารมณ์

                      คุณหาข้อมูลมาแชร์ แล้วยังต้องต้องหาข้อมูลมาอธิบายอีกที

                      ขอชื่นชมคับ

                      Comment


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

                        Comment


                        • อันนี้ผมบ่นครับ
                          คือผมพยายามพูดให้เข้าใจง่ายๆ แล้วยังมีคนบ่นว่าฟังแล้วไม่เข้าใจเเลยครับ
                          ผมจึงไม่อยากไปยุ่ง ไปคุยอะไรที่มันอลังการดาวล้านดวง
                          - แบบความเทพของชุดคำสั่ง
                          - ไครมันจะใช้ ใช้กันทั่วโลก หรือ ทั่วจักรวาล ตั้งแต่อดีตกาล ยันอณาคต
                          - ไครมันจะมาแย่งซื้ออะไรไคร
                          - ไครอยากลองของใหม่ ไครนิยมสะสมของโบราณ
                          - ไครเป็นสาวก กำลังหนุนไคร
                          - ไครจะแทงเข่า ตีศอก ได้คะแนนยก 1-2-3 เท่าไหร่
                          นี่มันไม่ได้เกี่ยวกับผมนะ คือผมสนใจจะคุยแต่เรื่องที่ผมจะคุยอ่ะ....................................
                          ผมก็หลีก ผมก็เลี่ยงจะ ไม่เอาไม่พูด และ ไม่ตอบเรื่องพวกนั้นน่ะครับ เดี๋ยวมันจะใหลออกนอกเรื่องไป



                          มันจะประมานนี้แหละครับ

                          Comment


                          • Comment


                            • พักดีกว่า................
                              รู้สึกเบื่อๆ
                              Last edited by ssk; 2 Feb 2020, 17:27:43.

                              Comment


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

                                Comment

                                Working...
                                X