Announcement

Collapse
No announcement yet.

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

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

  • Comlow
    replied
    ขอบคุณครับผมที่เข้าใจ คิดว่าจริงๆ แล้วเขาเข้าใจนะครับ
    แต่เคยพลาดเพราะความเข้าใจผิดหลายๆ เรื่อง ในกระทู้นี้
    คิดว่า Intel ที่พัฒนาก่อนจะมีข้อจำกัดเหมือน AMD ที่เขาใช้
    เลยนำความเข้าใจในสถาปัตยกรรม AMD มาพยายามอธิบาย
    การทำงานของ Intel

    พอพบว่าตัวเองเสนอมาผิด ถูกแย้ง ตอบไม่ได้ ก็ค่อยๆ ยอมรับความจริง

    คิดว่าเขาคงรู้สึกขายหน้า ประกอบกับมีเพื่อนๆ จาก AMD Zone
    มาสนับสนุนให้แก้ตัวเรื่องที่ขายหน้าไว้หลายเรื่อง เลยพยายามที่จะแก้ตัว
    แต่ก็อย่างที่เห็นนะครับ ยิ่งพยายาม ยิ่งพลาดไปเรื่อยๆ ยิ่งแค้น


    ถูกตามที่ท่านได้สรุปความนั่นละ CPU Intel สนับสนุน AVX512 แต่ AMD ไม่มีแค่นั้นคือบทสรุป

    และเป็นเรื่องปกติที่ผู้ใช้ CPU ที่ไม่สนับสนุนคำสั่ง AVX512
    จะเข้าใจอะไรผิดเกี่ยวกับชุดคำสั่งนี้ เพราะมันไม่มีใน CPU
    ของเขานะครับผม
    Last edited by Comlow; 5 Feb 2020, 06:43:22.

    Leave a comment:


  • best0032001
    replied
    จริงๆ มันเถียงออกทะเล มาก
    ถ้าจะวัดกันจริงๆๆ คือ

    intel AVX 512 amd ไม่มี

    app ตัวไหน ใช้ AVX512 intel ใช้ได้ AMD ใช้ไม่ได้แค่นั้นจบ

    และมันก็เป็นแบบนี้มาตลอด เดียวสักพัก AMD gen ใหม่ ก็เพิ่ม AVX512 ตามเข้าไปอยู่ดี
    ไม่รู้เถียงกันทำไม

    Leave a comment:


  • Comlow
    replied
    Originally posted by ssk View Post
    ตาบอดสีเหรอครับ ไม่เห็นว่า เหลือล้อมเขียวอยู่ข้างใน แปลว่า เหลืองมันรวมเขียวด้วย
    ก็เพราะแบบนี้แหละ wiki ถึงบอกว่า
    Z+Y+X ถึง = 512

    มีปัญญาเถียง wiki เหมือนเถียงผมเหรอ?

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

    ไว้คุณมี CPU ที่สนับสนุนคำสั่ง AVX512 แบบผม แล้วค่อยลองเขียน Code ทดสอบเอาเองก็แล้วกัน

    Leave a comment:


  • Comlow
    replied
    Originally posted by ToehNarak View Post
    น้า Comlow เคลียร์ inbox หน่อยครับ จะส่งข้อความไปคุยด้วยครับน้า
    เคลียร์แล้วครับผม เชิญครับ

    Leave a comment:


  • Guest's Avatar
    Guest replied
    น้า Comlow เคลียร์ inbox หน่อยครับ จะส่งข้อความไปคุยด้วยครับน้า

    Leave a comment:


  • ssk
    replied
    ตาบอดสีเหรอครับ ไม่เห็นว่า เหลือล้อมเขียวอยู่ข้างใน แปลว่า เหลืองมันรวมเขียวด้วย
    ก็เพราะแบบนี้แหละ wiki ถึงบอกว่า
    Z+Y+X ถึง = 512

    มีปัญญาเถียง wiki เหมือนเถียงผมเหรอ?

    ขึ้น execute process พรุ่งนี้ก็จะเรื่องนี้แหละ
    ไปนอนล่ะ เดี๋ยวผู้ติดตามจะไม่กล้าเสนอความเห็นเพราะยังทะเลาะกันอยู่ กับผมไม่อยากอ้างอิงไกล

    Leave a comment:


  • Comlow
    replied
    ว่าจะไม่แล้วนะ แต่ขอทีนึงเหอะ

    เข้าเขียนอยู่ว่า 128+128 บนหัวโต้งๆ ว่า FMA-128+128
    สายตาคุณน่าจะมีปัญหา เห็นสีเหลืองๆ รอบๆ คำว่า FMA ไหมครับ
    นั่นละ เขาขยายมาเป็นภาพข้างล่างไงคุณ ข้างล่างคือสีเหลืองใหญ่ๆ น่ะครับ
    ปล่อยมุกอีกแล้วนะครับ


    มุกที่ 5 แล้วนะครับ ท่าน SSK ผมไม่เจตนาจะดักนะ แต่คุณอ่านคำบรรยายข้างๆ ดูละกัน

    Leave a comment:


  • ssk
    replied
    -
    Last edited by ssk; 20 Mar 2020, 13:18:53.

    Leave a comment:


  • Comlow
    replied
    ท่าน SSK เคยถามผมว่า ZMM0-ZMM เป็นรีจิสเตอร์กว้างกี่ bit ผมก็ตอบไปแล้วว่า 512-bit ซึ่งน่าจะชัดเจนแล้ว
    แต่ท่านยังคงสงสัยว่าอาจจะเป็น AVX256+AVX256 = AVX512 หรือเปล่า ?

    ผมจะขอเทียบเคียงกับกรณี Sandy Bridge Microarchitect ที่ Intel สนับสนุน AVX256 เป็นครั้งแรกในภาพ


    Sandy Bridge Microarchitect AVX256

    จากภาพข้างบนจะเห็นว่า Intel ได้เพิ่มความกว้างของรีจิสเตอร์ XMM0-XMM15 เดิมที่มีขนาดความกว้าง 128-bit เป็น 256-bit ทุกตัว
    และเปลี่ยนชื่อเรียกเป็น YMM0-YMM15 ในภาพ แต่ในยุค Sandy Bridge นั้นรีจิสเตอร์ YMM0-YMM15 อยู่ในส่วนของ FPU Pipeline
    ไม่ได้อยู่ในส่วนของ Integer Pipeline แบบใน Haswell Microarchitect เป็นต้นมา เพราะในชั้นแรกคำสั่ง AVX256 ใน Sandy Bridge
    นั้นมุ่งเน้นการทำงานกับข้อมูลชนิดทศนิยมและเวกเตอร์เป็นหลักเท่านั้น

    ต่อมาในยุค Haswell Microarchitect Intel ได้เปลี่ยน Dedicate Scheduler ใน Sandy Bridge มาเป็น Unified Scheduler และได้
    แนะนำคำสั่ง AVX2 เพิ่มเติมเข้ามาในภาพที่หลายท่านคุ้นตา ขอนำมาอีกสักครั้งเพื่อความเข้าใจที่ชัดเจนยิ่งขึ้น

    ็Haswell Microarchitect AVX2 / FMA

    จากภาพข้างบนเราก็จะเห็นได้ว่า รีจิสเตอร์ SSE XMM0-XMM15 นั้นก็เป็นส่วนหนึ่งของ รีจิสเตอร์ YMM0-YMM15 อย่างชัดเจน
    เวลาประมวลผลคำสั่ง SSE ตัว CPU ก็จะใช้รีจิสเตอร์ XMM0-XMM15 ในการทำงานเท่านั้น
    แต่ถ้าจะประมวลผลคำสั่ง AVX ตัว CPU ก็จะใช้รีจิสเตอร์เต็มความยาว 256-bit คือ YMM0-YMM15 ในการทำงาน

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

    จากกรณีของ Sandy Bridge และ Haswell เราจะเห็นว่า คำสั่ง SSE และ AVX นั้นมีความแตกต่างกันอย่างมีนัยยะ และการทำงานของ
    2 คำสั่ง SSE 128-bit นั้นไม่ได้เท่ากับ 1 คำสั่ง AVX 256-bit แต่อย่างใด ทั้ง SSE และ AVX ล้วนมีคำสั่งแยกเป็นอิสระ
    ไม่ใช่ว่า 2 x SSE 128-bit = 1 AVX256-bit แต่อย่างใดนะครับ

    เมื่อนำกรณีข้างบนที่ผมได้เล่ามา มาเทียบเคียงกับกรณี AVX512 หลายท่านก็น่าจะมองออกได้ชัดเจนว่า AVX512 ไม่ใช่ AVX256+AVX256 แต่อย่างใด

    ถ้าจะพูดให้ชัดลงไปก็คือ
    การประมวลผลข้อมูล AVX/AVX2 ใช้ทรัพยากรรีจิสเตอร์ในส่วนของ SSE ด้วยในการประมวลผล
    การประมวลผลข้อมูล AVX512 ใช้ทรัพยากรรีจิสเตอร์ในส่วนของ AVX/AVX2 และ SSE ด้วยในการประมวลผล


    แต่คำสั่ง AVX/AVX2 ไม่ใช่ คำสั่ง SSE+ คำสั่ง SSE
    และคำสั่ง AVX512 ไม่ใช่ คำสั่ง AVX256 + คำสั่ง AVX256


    นั่นเอง ผมขอสรุปตรงนี้ล่ะครับ คิดว่าคงกระจ่างเพียงพอแล้วนะครับ

    Leave a comment:


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

    Leave a comment:


  • Comlow
    replied
    Originally posted by หนูโด้ 1 View Post
    เห็นด้วยกับท่าน Comlow
    ขอบคุณมากครับ

    Leave a comment:


  • หนูโด้ 1
    replied
    เห็นด้วยกับท่าน Comlow

    Leave a comment:


  • Comlow
    replied
    Originally posted by redondo16 View Post
    i7-1065G7 นี่ยังไม่ใช่ tigerlake ใช่ไหมครับ เห็นอยู่ใน HP 15s ราคาไม่แรงดี แต่เสียดายจอ 15 นิ้วใหญ่ไปหน่อย
    https://*****************/notebook/9...-fq1002tu.html
    ยังเป็น Icelake U ครับผม ลองดูค่ายอื่นๆ อาทิ ACER LENOVO นะครับ มีรุ่น 14" ด้วยครับท่าน

    Leave a comment:


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

    Leave a comment:


  • Comlow
    replied
    Originally posted by winny6969 View Post
    1 ในประเด็นที่อ่านแล้วถกเถียงกัน คือ AVX512 มันคือ 256+256 หรือ 512 1 ชุด

    จากรูปนี้ คุณ Comlow พยายามบอกว่า อินเทล มันคือ 512 1 ชุดใช่มั้ยครับ ส่วนอีกฝั่งยึด Wikichip บอก 256+256
    เปล่าครับ ในรูปนั้นผมเปรียบเทีนบให้ SSK เห็นว่าระหว่าง Sunny Cove Microarchitect และ ZEN Microarchitect ครับท่าน winny6969

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



    รีจิสเตอร์ ZMM0-31 นั้นมีความกว้าง 512-bit ครับดังภาพที่ Intel ได้เสนอมาในเอกสารของเขาข้างต้นครับ

    ส่วน SSK พยายามจะบอกว่า AVX512=AVX256+AVX256 นั้น เป็นความเข้าใจของเขาว่าคำสั่ง AVX512 นั้นเกิดจากการเอาคำสั่ง AVX256 มารวมกัน 2 คำสั่ง
    ซึ่งไม่ถูกต้องนัก

    ในทางกายภาพ แม้ว่าการทำงานของคำสั่ง AVX512 จะอาศัยการ Fused รีจิสเตอร์ของ Port 0 และ 1 ที่เดิมใน Skylake Microarchitect Client
    เขาใช้ประมวลผลคำสั่ง AVX2 และ FMA3 ที่ทำงานกับข้อมูลขนาด 256 bit ก็ตาม แต่ว่าคำสั่ง AVX512 และคำสั่ง AVX2 นั้นแตกต่างกันเป็นคนละชุดคำสั่งเลย
    ดังจะเห็นจากสไลด์ของ Intel ข้างบนชัดๆ ว่า AVX512 แบ่งเป็น AVX512F/CD/BW/DQ/VL เป็นคำสั่งแม่ และแต่ละคำสั่งแม่ยังมีคำสั่งลูกแยกย่อยไปอีกมาก
    มาย ท่าน winny6969 อาจจะดูข้อมูลเพิ่มเติมได้จากที่นี่ https://en.wikipedia.org/wiki/AVX-512

    ส่วนคำสั่ง AVX256 หรือ AVX2 นั้นก็สามารถดูข้อมูลเพิ่มเติมได้จากที่นี่ https://en.wikipedia.org/wiki/Advanc...tor_Extensions

    AVX256 นั้นมีใน CPU Sandy Bridge และ Ivybridge และ AVX2 นั้นมีใน CPU Haswell เป็นต้นมา
    จะเห็นว่า เราไม่สามารถจะเอาคำสั่ง AVX256 หรือ AVX2 มาประมวลผลออกมา 2 ชุด แล้วรวมข้อมูลผลลัพธ์ออกมา
    เท่าหรือเหมือนกับ AVX512 ได้

    Leave a comment:

Working...
X