Announcement

Collapse
No announcement yet.

รู้ทัน HYDRA Engine แนวทางใหม่ของ Muti-GPU

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

  • รู้ทัน HYDRA Engine แนวทางใหม่ของ Muti-GPU





    BORKED



    รู้ทัน HYDRA Engine แนวทางใหม่ของ Muti-GPU

    สวัสดีครับ เพื่อนนักโพสต์ และนักอ่านกระทู้ที่รักทุกท่าน (รวมถึงท่านนักท่องเน็ตที่หลงเข้ามาด้วย)

    เมื่อเร็วๆนี้ทางเว็บไซด์ฮาร์ดแวร์ต่างประเทศหลายเว็บเริ่มมีการนำเสนอบทความเกี่ยวกับกับเมนบอร์ดที่สามารถทำ Multi-GPU ด้วยเทคโนโลยี HYDRA Engine กันไปแล้ว ซึ่งเสียงตอบรับก็ออกมาดีมากๆเลยครับ

    ดังนั้นวันนี้กระผมขออนุญาตินำเสนอบทความเกี่ยว HYDRA Engine ให้ทุกท่านได้รู้ทันกับเจ้าเทคโนโลยีใหม่แห่งการทำมัลติ GPU ตัวนี้กันนะครับ

    HYDRA Engine ความสำคัญอย่างไร
    หลายคนคงสงสัยว่า ทำไมเราจำเป็นต้องใช้เทคโนโลยี HYDRA Engine ด้วยในเมื่อเรามีเทคโนโลยีสำหรับทำ Muti-GPGPU กันอยู่แล้ว
    ไม่ว่าจะเป็น SLi จาก NVIDIA, CrossFireX จาก AMD และ Muti-Chrome จาก S3
    คำตอบคือ HYDRA Engine สามารถทำในสิ่งที่ ระบบเทคโนโลยีMulti-GPU ของทั้ง 3 ค่ายยังทำไม่ได้ครับ

    ตัวอย่างเช่น
    - HYDRA Engine สามารถทำ Multi-GPU ระหว่างการ์ดจอ AMD และ NVDIA ได้
    - HYDRA Engine สามารถทำ Multi-GPU ระหว่างการ์ดรุ่นเก่าและใหม่ได้ เช่าการทำ Multi-GPU ระหว่างการ์ดตระกูล G90 และ GT200 หรือการทำทำ Multi-GPU ระหว่าง HD4xxx กับ HD5xxx
    - HYDRA Engine สามารถลดปัญหาที่เกิดจาการทำ Muti-GPGPU ในบัจจุบันเช่น ปัญหา micro-stuttering เป็นต้น (ตรงนี้เป็นจุดที่สำคัญที่สุด ซึ่งผมจะอธิบายให้ฟังในหัวข้อถัดไป)

    ก่อนจะไปดูว่า Hydra Engine ทำงานยังไงเรามาทบทวนความรู้เก่ากันก่อนนะครับ





    ทบทวนการประมวลผล 3 มิติของ GPU (1 ตัว)

    1. ทำการประมวลผลทางโครงสร้าง 3มิติ (Geometry) ทำการสร้างโครงสร้างของวัตถุ 3มิติขึ้นมาด้วยการนำรูปสามเหลี่ยมมาต่อกันเป็นวัตถุ 3 มิติ (รูป สามเหลี่ยมดังกล่าวเรียกว่า Polygon) , ทำการจัดวางตำแหน่งของวัตถุ 3 มิติ ตามค่าพิกัดที่เกมส์ หรือโปรแกรมต่างๆกำหนดมาให้, หากวัดถุมีการซ้อนทับกันก็จะมีการตัด Polygon ในส่วนที่โดนบังออกเพื่อประหยัดหน่วยความจำ

    2. ทำการสร้างพื้นผิวให้วัตถุโดยเติมลวดลาย ใส่สี ตลอดจนการลงแสงและเงาให้วัตถุ โดยทั้งหมดนี้จะอยู่ในรูปของจุดภาพหรือ Pixel นั้นเองครับ เราเรียกขั้นตอนนี้ว่า Pixel Processing ครับ

    3.นำภาพที่ได้ไปเก็บในแรมบนการ์ดจอ และส่งไปแสดงผลบนจอภาพให้เราได้ชมกัน


    การประมวลผลแบบ Multi-GPU ที่ AMD และ NVDIA เลือกใช้

    AMD CrossfireX มีวิธีการประมวลผล Multi-GPU ให้เลือกใช้ 3 แบบได้แก่

    1. Supertiling mode
    2. Scissor mode
    3. AFR (Alternate Frame Rendering)






    NVIDIA SLi มีวิธีการประมวลผล Multi-GPU ให้เลือกใช้ 2 แบบได้แก่

    1. AFR
    2. Split-frame (เหมือนกับ Scissor mode ของ AMD เลยครับ )


    รู้จักกับข้อดีข้อเสียของทั้ง 3 วิธีกัน







    ภาพ แสดงทำงานของ Multi-GPU แบบ Supertiling mode




    1. Supertiling mode แบ่ง Frame ออกเป็นช่องๆคล้ายตารางหมากรุก ช่องละ 32 x 32 Pixel แล้วให้ทำการส่งช่องต่างๆให้ GPU แต่ละตัวประมวลผลในจำนวนช่องที่เท่าๆกัน

    ข้อดี
    ทำให้ GPU ทั้ง 2 ตัวรับงานมาทำได้อย่างสมดุลกันมากที่สุดใน 3 วิธี

    ข้อเสีย
    OpenGL ไม่สนับสนุนวิธีนี้ จึงทำให้วิธีนี้ได้รับความนิยมน้อยที่สุด






    ภาพ แสดงทำงานของ Multi-GPU แบบ Scissor mode หรือ Split-frame



    2. Scissor mode หรือ Split-frame แบ่ง Frame ออกเป็นส่วนๆและส่งแต่ละส่วนให้ GPU แต่ตัวประมวลผล

    ข้อดี
    ทำง่าย มีปัญหาน้อย

    ข้อเสีย
    ให้ประสิทธิภาพออกมาน้อยกว่า วิธีการแบบ AFR
    ใช่ทรัพยากรไม่คุ้มค่า ตัวอย่างเช่นเรามีการ์ด 2 ตัวแล้วนำมาทำมัลติ GPU ด้วยวิธี Scissor mode หรือ Split-frame ในการทำงาน 1 frame การ์ดทั้ง 2 ตัวจะต้องโหลดข้อมูลของ frame นั้นๆทั้ง frame มาไว้บนการ์ดทั้ง 2 ตัว เหมือนๆกัน จากนั้นการทั้ง 2 ตัวจะต้องทำการประมวลผลทางโครงสร้าง 3มิติ (Geometry) ของ frame นั้นๆทั้ง frame เหมือนๆกัน จากนั้นการ์ดทั้ง 2 ตัวก็ช่วยกันทำการสร้างพื้นผิวให้วัตถุ (Pixel Processing) โดยแบ่งกันคนละครึ่งเฟรม จากนั้นก็นำเฟรมมารวมกันและส่งไปแสดงผลบนจอภาพ สรุปคือวิธีนี้มันจะช่วยกันทำงานในขั้นตอน Pixel Processing เท่านั้นเองครับ







    ภาพ แสดงทำงานของ Multi-GPU แบบ AFR (Alternate Frame Rendering)



    3. AFR (Alternate Frame Rendering) คือ แบ่งให้ GPU แต่ละตัวประมวลผลตัวละ Frame สลับกันไปเรื่อยๆ เช่น GPU ตัวที่ 1 จะประมวลผล frame คี่ เช่น Frame ที่ 1, 3, 5 ... และ GPU ตัวที่ 2 จะประมวลผล frame คู่ เช่น Frame ที่ 2, 4, 6 ... เป็นต้น

    ข้อดี
    ให้ FPS Max และ FPS Average สูงที่สุดใน 3 วิธี (BenchMark ออกมาแล้วดูดี)
    ใช้ทรัพยากรได้คุ้มค้ากว่า Scissor mode หรือ Split-frame
    เป็นวิธีที่นิยมใช้กันมากที่สุดใน 3 วิธี


    ข้อเสีย

    มักจะเกิดปัญหา micro-stuttering ขึ้น
    ปัญหา micro-stuttering คือ ปัญหาที่เกิดขึ้นจากการไม่คงที่ของเวลาที่ใช้ในการเปลี่ยนจาก Frame หนึ่งไปยังอีก Frame หนึ่ง โดยมีหน่วยเป็น มิลิวินาที หรือ millisecond
    ปัญหานี้จะเกิดกับการทำ Multi-GPU แบบ AFR เท่านั้น
    ผลที่เกิดจาก micro-stuttering คือเล่นเกมแล้วกระตุกๆทั้งๆที่มีค่า FPS Max และ FPS Average สูงลิบลิ้ว หรือถ้าโชคร้ายเกมอาจจะมี Artifact (การประมวลผลกราฟิคออกมาผิดผลาด) เกิดขึ้นได้
    หากเกิดเหตุการดังกล่าวขึ้น ท่านสามารถแก้ปัญหาได้ด้วยการเปลี่ยนไปใช้ Multi-GPU แบบ Scissor mode หรือ Split-frame แทนแบบ AFR ปัญหาดังกล่าวก็จะหมดไปครับ (แต่ FPS Max และ FPS Average ก็จะลดลงด้วยนะครับ )









    ภาพ แสดงทำงานของ Multi-GPU โดยใช้ HYDRA Engine


    การทำ Multi-GPU โดยใช้ HYDRA Engine

    - HYDRA Engine จะไปรับข้อมูล 3D เข้ามาก่อน ที่ข้อมูลนั้นจะไปถึงไดรเวอร์การ์ดจอ
    - HYDRA Engine ทำการวิเคราะห์ข้อมูลที่ได้
    - HYDRA Engine วิเคราะห์ความสามารถในการประมวลผลของการ์ดจอแต่ตัวที่อยู่ในระบบ
    - HYDRA Engine แบ่งข้อมูลที่ได้รับมาเป็น Task (งาน) โดยแต่ละ Task คือ วัตถุ 3 มิติ ที่อยู่ใน Frame นั้นเองครับ
    - HYDRA Engine ส่ง Task แต่ละ Task ไปให้กับไดรเวอร์ของการ์ดจอแต่ละตัว(หรือของแต่ละค่ายก็ได้) โดยจำนวน Task ที่การ์ดจอแต่ละตัวจะได้รับนั้นขึ้นอยู่กับ ความสามารถของการประมวลผลที่การ์ดแต่ละตัวจะสามารถทำได้

    ตัวอย่างเช่น

    การทำทำ Multi-GPU ระหว่าง GTX280 กับ GTX260 ด้วย HYDRA Engine การ์ด GTX280 ก็จะได้ Task ไปประมวลผลเยอะกว่าเพราะมีประสิทธิภาพมากกว่า GTX260 จะได้ Task ไปน้อยกว่าเพราะมีประสิทธิภาพน้อยกว่า

    - Task หรือวัตถุ 3 มิติ ที่ถูกแบ่งไปประมวลผลจะถูกนำกลับมารวมกันอยู่ในเฟรมตามค่าพิกัดที่มันควรอยู่ และถูกส่งไปแสดงผลบนหน้าจออีกครั้ง


    ข้อดี

    1. วิธีการแบ่งงานได้สมดุลที่สุดเท่าที่เคยมีมาในวงการ Multi-GPU
    2. การ์ดเล็กไม่หน่วงการทำงานการ์ดใหญ่
    3. เขียวและแดงสมาณฉันกันได้
    4. สามารถนำการ์ดใหม่มาทำ Multi-GPU กับการ์ดเก่าได้
    5. คุณสามารถ เลือกได้ว่าจะทำ Multi-GPU กับ Hydra Engine หรือกลับไปใช้ SLi และ CrossfireX ก็ได้ ผ่านท่าน Control panel ของไดรเวอร์ Hydra Engine ครับ

    ข้อเสีย

    ในปัจจุบันนี้ ประสิทธิภาพ ยังไม่แน่นอน เมื่อท่านได้ดูกราฟแสดงผลการทดสอบแล้วจะรู้เองครับ แต่ในอนาคตคิดว่าคงจะดีขึ้น
    ผู้พัฒนา Hydra Engine อาจถูก NVIDIA ฟ้องได้เพราะไม่ได้ซื้อลิขสิทธิ์ SLi จาก NVIDIA อย่างถูกต้องนั้นเองครับ



    ข้อจำกัด (ในขณะเวลาปัจจุบัน ที่เขียนบทความนี้)

    - ไดรเวอร์การ์ดจอจะต้องเป็นไปตาม เวอร์ชั่นที่ไดรเวอร์ของ Hydra Engine รุ่นนั้นๆกำหนด
    - ขณะนี้ Hydra Engine สนับสนุน DX9 และ DX10 เท่านั้น
    - สนับสนุน PhyX ในกรณีที่นำการ์ด NVIDIA มาต่อใช้ด้วยกันเองเท่านั้น
    - N Mode หรือ โหมด Multi-GPU สำหรับ NVIDIA สนับสนุน G9x + G2xx, G2xx + G2xx, G9x + G9x
    - A Mode หรือ R Mode หรือ Multi-GPU สำหรับ AMD สนับสนุน HD4xxx + HD4xxx, HD5xxx + HD5xxx, HD4xxx + HD5xxx
    - X Mode Multi-GPU สำหรับให้ NVIDIA และ AMD สนับสนุน G9x, G2xx, HD4xxx และ HD5xxx เอา 4 ตัวนี้มาจับคู่กันตามใจชอบเลยครับ
    - N Mode และ A Mode สนับสนุน Win Vista และ Win 7
    - X Mode Win 7 เท่านั้น


    _____________________________________________________________________________________
    อ่านบทความของผมย้อนหลังได้ที่ : http://ionRa.blogspot.com

    123
    Supertiling mode
    14.63%
    18
    Scissor mode หรือ Split-frame
    4.07%
    5
    Alternate Frame Rendering
    9.76%
    12
    HYDRA Engine
    71.54%
    88
    Last edited by IonRa; 30 May 2010, 08:37:16.

  • #2

    กรณีศึกษา MSI’s Big Bang Fuzion

    เมนบอร์นี้ติดตั้งชิพเซต Intel P55 และชิพ HYDRA 200 มาด้วยเพื่อช่วยให้บอร์ดนี้สามารถทำ Multi-GPU โดยใช้ HYDRA Engine ได้ครับ




    ็HYDRA 200 ผลิตด้วยเทคโนโลยีการผลิตเทคโนโลยีการผลิต 65 nm มีหน่วยประมวลผลชนิด RISC ในตัวความเร็ว 300 MHz มี PCI-E lanse จำนวน 48 lanse แบ่งเป็น UpStream 16 และ DownStream 32 Lanse HYDRA กินไฟ 5.5 W





    เรียก Control ขึ้นมา





    อณุญาติให้เปิดปิด Hydra Engine เพื่อที่คุณจะได้กลับไปใช้งาน SLi และ CrossfireX ของ P55 ได้




    ก่อนเล่นเกมอย่าลื่ม Add เกมเข้าไปในรายการเพื่อให้มันรู้จักกับเกมที่เราจะเล่นด้วยนะครับ


    ท่านผลการทดสอบการทำ Multi-GPU ด้วย HYDRA Engine กับ เมนบอร์ดตัวนี้ได้ที่ เว็บเหล่านี้

    Tomshardware.com
    Guru3D.com
    Bit-tech.net
    Anandtech.com






    ผลการทดสอบจาก Tomshardware





    ผลการทดสอบ COD : Modern Warefare 2 จาก Guru3d





    ผลการทดสอบจาก Bit-tech





    ผลการทดสอบจาก Anandtech


    ใครชอบการนำเสนอของเว็บไหนก็ตามไปดูเว็บนั้นเลยนะครับ แต่ใจของผมอยากให้อดใจรอดูผลเทสของคนไทยด้วยกันเองมากว่านะครับ คิดว่าคงอีกไม่นานนะครับ รับรองว่าแรงจนฝรั่งยังอาย

    สรุป

    โดยภาพรวมแล้ว ประสิทธิภาพของการทำ Multi-GPU ด้วย HYDRA Engin ถือว่าทำออกมาได้ไม่ดีเท่าไรนัก(แต่ก็ไม่มีปัญหา micro-stuttering เกิดขึ้น) แต่หากจะถามว่าผมรู้สึกยังไงกับเทคโนโลยีตัวนี้ ผมบอกได้เลยว่าผมชอบมันมากๆ แค่เห็น GPU ของ AMD และ NVIDIA สามารถทำงานร่วมกันได้ และได้เห็นการ์ดรุ่นเล็กสามารถทำงานกับรุ่นใหญ่ได้เท่านี้ผมก็ปลืมใจแล้วครับ เพียงเท่านี้ก็ถือได้ว่า Lucid Logix ผู้พัฒนา Hydra Egine ก็ได้ฝากชื่อ และผลงานชิ้นเอกไว้ในหน้าหนึ่งของประวัติศาสตร์แห่งวงการ 3D ไว้เป็นที่เรียบร้อยแล้วครับ


    _____________________________________________________________________________________
    อ่านบทความของผมย้อนหลังได้ที่ : http://ionRa.blogspot.com

    Last edited by IonRa; 30 May 2010, 08:37:47.

    Comment


    • #3
      เนื้อหาแน่นมากครับท่าน หายไปนานเลย อิอิ Hydra สักวันผมคงได้ใช้ อิอิ ขอบคุณสำหรับความรู้ดีๆครับ ^^

      Comment


      • #4
        แหล่มเลยอะ เทคโนโลยีนี้

        Comment


        • #5
          ขอบคุณสำหรับข้อมูลครับ ความรู้ล้วนๆ อนาคตอาจต้องหาซื้อเมนบอร์ดที่ มี Hydra มาด้วยล่ะ

          Comment


          • #6
            ขอบคุณครับ

            Comment


            • #7
              เพิ่มเติม MSI’s Big Bang Fuzion ราคา $350 นะครับ เผื่อมีคนสนใจครับ
              Last edited by IonRa; 10 Jan 2010, 11:04:38.

              Comment


              • #8
                จาหนังสือ WM ผมอ่านเจอว่า nVidia ไม่ ล็อก Driver ไม่ทำอะไรทั้งสิ้นกับระบบที่ว่า
                แต่ nVidia comment ไว้ว่า

                ระบบที่สมบูรณ์ที่สุดคือระบบ SLI จาก nVidia เท่านั้นครับ (ต่อไป ATI ก็คงออกมาบอกเหมือนกันว่า CF มีดีมากกว่า หรือ สมบูรณ์กว่าเช่นกัน)

                Comment


                • #9
                  ยังติดปัญหาหลายอย่างเหมือนกันครับ โดยเฉพาะเรื่องไดร์เวอร์

                  Comment


                  • #10
                    พิมพ์ไปเยอะเลย แต่ตอนนี้แก้ไขเสร็จแล้วนะครับ

                    Comment


                    • #11
                      ขอความกรุณาช่วยกรอกแบบสอบถามให้ด้วยนะครับ

                      Comment


                      • #12
                        ขอบคุณสำหรับข้อมูลครับ

                        แต่ต้องดูว่า MS กับ AMD ใครจะไวกว่ากัน NV คงมั่นใจในสิ่งที่มีอยู่เกินไปคงไม่สนใจ

                        Comment


                        • #13
                          เอ่อ นั่นก็หมายความว่า ....

                          ผมมี 9800GT เอามา SLI คู่กับ 9600GT ได้
                          โดยใช้ ไฮดร้าเป็นตัวเชื่อม ถูกต้องไหมครับ?

                          Comment


                          • #14
                            Originally posted by เรกะกอร์ฟ View Post
                            เอ่อ นั่นก็หมายความว่า ....

                            ผมมี 9800GT เอามา SLI คู่กับ 9600GT ได้
                            โดยใช้ ไฮดร้าเป็นตัวเชื่อม ถูกต้องไหมครับ?

                            ได้ครับ เพราะ 9800GT และ 9600GT ทั้งคู่จัดอยู่ในตระกูล G90 ซึ่งเป็นไปตามเงื่อนไขของ Hydra Engine ครับ

                            Comment


                            • #15
                              แจ่มครับ

                              Comment

                              Working...
                              X