Announcement

Collapse
No announcement yet.

เกี่ยวกับ OpenCl

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

  • เกี่ยวกับ OpenCl

    ในตอนนี้มันเป็นยังไงเหรอครับทำงานเหมือน Physicx หรือเปล่า แล้วถ้าลงแล้วจะต่างจากไม่ลงยังไง
    ใช้ยังไงมีเกมส์รองรับหรือยัง ใครทราบแนะนำทีครับ

  • #2
    คำถามแบบนี้คงต้องรอผู้รู้จริงๆมาตอบ

    Comment


    • #3
      มันไม่ใช่อย่างนั้นครับ

      มันคนละเทคโนโลยีกัน

      OPENCL คือเทคโนโลยีที่ทำให้เกิดการประมวณผลข้ามแฟรชฟอร์มได้ครับ คือการให้การ์ดจอไปช่วยCPUประมวณผลงานของCPU หรือให้ CPU ประมวลผลงานของการ์ดจอ ที่เด่นๆก็คือมันจะทำให้ระบบมีการทำงานอย่างมีประสิทธิภาพมากขึ้นนั่นเองครับ การ์ดกับ CPU ก็จะช่วยประมวลผลงานเดียวกันได้ นั่นเองครับ มีใช้ทั้ง nVidia และ ATI ครับ ถ้ายังไม่เข้าใจก็ตามนี้ไปครับ
      http://forums.overclockzone.com/foru...d.php?t=678669 เครดิต คุณ THEFOOL

      ส่วนเรื่อง PhysX นั้นเป็นการประมวลการเคลื่อนไหวของวัตถุให้สมจริงมากขึ้นครับ แต่ถ้าใช้ DirectX 11 แล้ว ความสวยงามของภาพอาจจะทำให้เรามองข้ามส่วนนี้ไปครับ อันนี้เป็นเทคโนโลยีของ nVidia ครับ

      Comment


      • #4
        ขออนุญาติ ร่วมด้วยคนครับ

        ส่วนตัวผมเองคิดว่า เราควรทำความเข้าใจอย่างงี่ครับ (มอง AMD ATI เป็นหลักนะครับ ซึ่งจริงมันก็คล้ายๆ nVIDIA ล่ะ)

        - การ์ดจอรุ่นใหม่ ชัดเจนหน่อยก็นับตั้งแต่สมัย R600 หรือที่ที่ขายกันในรุ่น HD2000... สถาปัตยกรรมของ GPU ค่าย ATI ได้เปลี่ยนไป โดยมีการร่วมส่วนประมวลผล Shaders ได้แก่ Vertex, Geometry, Pixel เข้าเป็นหน่วยเดียวกัน เรียกว่า "Unified Shaders"... ซึ่งมันไม่ตรงตัวนักหรอก ถ้าเราจะคิดตรงๆว่า Unified นั้นออกมาแทน Vertex, Geometry, Pixel. แต่ตอนนั้นการประชาสัมพันธ์ก็บอกให้เราคิดกันอย่างงี่ จริงๆ Unified Shaders ซื่อมันบอกว่าเป็น"การรวม" ซึ่งก็คือ "ตัวมันเป็นกลางๆ" ขึ้นอยู่กับความต้องการว่าเราจะให้มันประมวลผลออกมาเป็นอะไร อาจฟังดูคล้ายๆCPU แต่ไม่เหมือนเพราะมันรองรับจำนวณคำสั่งน้อยกว่าCPU โดยมันถูกเน้นออกแบบให้รองรับการประมวลผลเชิงทศนิยมได้ดีเยี่ยม เรียกว่า GPU มันเก่ง FLOPS มากกว่า CPU (ฉะนั้น GPU หรือ GPGPU มันทำงานทดแทน CPU ไม่ได้)

        - ในเมือแนวคิดใหม่ของ GPU ทำให้มันเหมือนมีส่วน "ประมวลผลอเนกประสงค์" แยกออกมาเป็นตัวเป็นตนแล้ว คราวนี้มันจึงไม่กำจัดว่าให้มันประมวลผลเฉพาะแค่ Vertex, Geometry, Pixel. เท่านี้อีกต่อไป แต่ล่ะค่ายก็พยายามผลักแนวคิด "แบ่งงานให้GPUทำ" เข้าสูแวดวงโปรแกรมเมอร์ ทำนองจะบอกว่าGPUทางนี้ว่างงานอยู่นะ ส่งงานมาให้GPUช่วยทำบ่างก็ได้(โดยเฉพาะงานทศนิยม) จากนั้นคำว่า GPGPU ก็เกิดขึ้น เพื่อแสดงความหมายเป็นกลางของแต่ละยี่ห้อ.. ว่าๆ ATI เองเป็นค่ายที่ริเริ่มก่อนแต่ดูสับสนในช่วงแรก ไม่รู้จะเอาชื่ออย่างไงดี ตอนแรกก็เรียก StreamComputer (ผมชอบชื่อนี้นะครับ เพราะให้ความหมายตรงตัวดี) แต่มีปัญหาเพราะสู้กระแสCUDA ของค่ายnVidiaไม่ได้(เพราะแลดูCUDAจะอเนกประสงค์กว่า นิยมกว่า)... ช่วงหลัง AMD ATI ก็เลยสุ่มไปสนับสนุนกลุ่มนักพัฒนา โดยชูแนวคิด GPGPU สร้างเทคนิค(เหมือนจะ)ใหม่ขึ้นมา โดยเป็นสถาปัตยกรรมเปิด(ใครๆก็ใช้ได้ กะว่าใช้ของฟรี ถล่มCUDA) เลยเรียกว่า OpenCL... ซึ่งได้รับการสนับสนุนดีมากกว่าเดิมมาก แม้แต่ฝังเครื่อง Mac เองก็จัดว่า OpenCL เป็นคุณสมบัติที่ขาดไม่ได้


        แล้วความสับสนก็เกิดขึ้น ...? งั่นสรุป..เลิกงง
        - OpenCL ไม่ไช่ของ AMD โดยตรง แต่ AMD สนับสนุนในการพัฒนา
        - OpenCL ไม่ไช่สถาปัตยกรรมในรูปของHardware แต่มันเป็นสถาปัตยกรรมในเชิงSoftware คล้ายจะอุปมาเป็นภาษาคอมพิวเตอร์แบบนึง เช่นเดียวกับ OpenGL, OpenAL ก็เหมือนๆกันเลย
        - ด้วยความที่ OpenCL ตัวมันเป็นเชิงSoftware ตัวมันจึงสามารถรองรับข้ามแพลทฟอร์มได้ไง
        - มองอีกมุมนึง OpenCL กะ DirectCompu มันก็เทคนิคเดียวกันนั้นล่ะ แต่เป็นละรูปแบบ คนล่ะเจ้าของ และวิธีใช้งานต่างกัน
        - การใช้งาน OpenCL เราสามารถไช้งานโดยผ่านไลบารี่OpenCLในขั้นตอนเขียนโปรแกรม โปรมแกรมที่เราเขียนขึ้นจะสามารถเชื่อมไปยังการ์ดจอ และส่งOpenCLไปให้การ์ดจอทำงานเองได้เลย
        - ส่วน DirectCompu อันนี้เวลาจะใช้ต้องผ่านทาง DirectX11 ถ้าเครื่องไหนไม่มี DirectX11 ก็ใช้งานไม่ได้ ทำให้ Mac กะ Linux จึงใช้ไม่ได้(ยกเวนMicrosoftจะเล่นด้วย)
        - CUDA ของ nVIDIA ก็ ทำนองเดียวกับ OpenCL คือมีไลบารี่ให้เราสามารถนำไปใช้ในขั้นตอนเขียนโปรแกรมได้เลย โปรแกรมเราก็จะเทพ โดยไม่ต้องง้อ DirectX (แต่รู้สึกว่า CUDA จะเสียเงินนะ)
        - ความเหมือนที่แตกต่าง ลองนึกถึง X-Fi MB ของ Creative ซิครับ มันมาเหมือนกันเลย เพราะมีไลบรารี่ให้เราเขียนโปรแกรมส่งไปsoundcardประมวลผลได้ (เทียบได้กับ OpenAL)
        - ส่วน Physicx ถ้ามองตรงๆมันไม่เหมือน OpenCL (แต่ถ้ามองอ้อมๆมันก็ทำนองเดียวกัน) ปัจจุบันควรมองว่า Physicx เป็นส่วนหนึ่งของ CUDA อย่างกลายๆมากกว่า ถ้าผมไม่ผิดพลาด CUDA มันคือกำลัง(เชิงโปรกรมมิง)ในการประมวลผลPhysicx (คล้ายที่ DirectCompu เป็นส่วนนึงของ DirectX)
        - เราจึงควรเข้าใจว่า OpenCL เป็นการใช้ประโยชน์จาก Unified Shaders ของการ์ดจอ
        - ส่วนตัวผม รู้สึกว่า พักนี้ AMD ATI จะเน้นทาง DirectComputing มากกว่านะครับ เพื่อสนองประโยชน์ของ DirectX11 ซึ่งตลาดเกมต้องการมากกว่า

        - แล้ว OpenCL มันประมวลผลที่ไหน..?? คำตอบ ประมวลผลอยู่ใน Unified Shaders นั้นล่ะ มันไม่ได้มีส่วนไหนของGPUมาค่อยแบ่งรับเฉพาะงานมันไปทำ, GPU รุ่นใหญ่ที่มี ท่อเทียมเยอะๆ ก็จะประมวลผลได้มากกว่า.
        - แล้ว OpenCL มันประมวลผลแทน CPU ได้ไช่ไม๊..?? คำตอบ ไม่ไช่ เพราะมันรอบรับคำสั่งที่เฉพาะเจาะจงกว่า ไม่สามารถรองรับการประมวลผลต่างๆที่หลายหลายของระบบได้ และOpenCLจะสนับสนุนการประมวลผลข้อมูลในเชิง "ดาต้า" มากกว่า "โอเปอร์เรท" พูดเป็นภาษาคนหน่อยก็คือ OpenCL นิยมใช้ประมวลผลส่วนข้อมูลที่จะนำออกแสดงผล(รับข้อมูลดิบมาประมวลผล) ไม่นิยมใช้ประมวลผลข้อมูลที่จะใช้ควบคุมการทำงานของระบบ (ซึ่ง CUDA ก็ทำนองเดียวกันนี้)
        - แล้ว OpenCL ไว้ใช้เขียนเกมได้เปล่า..?? คำตอบ ก็ไม่เฉพาะเกมหรอก สามารถประยุกต์ใช้ได้หมดล่ะ แม้แต่โปรแกรมDatabaseก็ใช้ได้ ยิ่งถ้าเป็นข้อมูลเชิงทศนิยมจะดีมากเลย(gpuชอบ)
        - แล้วเราควรซื่อการ์ดจอ AMD ATI มาใช้ในเรื่อง เพื่อจะมี OpenCL เตรียมไว้ เลยไช่ไม๊..?? คำตอบ ก็ถ้าคุณจะใช้โปรแกรมที่มีความต้องการ OpenCL อย่างนี้ก็ต้องมีการืดจอ AMD ATI ครับ... แต่ถ้าคุณแค่พิมพ์word ทำexcle เกม3dก็ไม่เล่น ทำนองอย่างนี้ OpenCL ก็ไม่ได้ใช้ประโยชน์ครับ
        - สุดท้าย คิดๆไปแล้ว เครื่อง MAC ต่างหากที่ดูเหมือนจะใช้ประโยชน์ของ OpenCL ได้มากกว่า PC เหอะๆๆ
        Last edited by Dokmai; 22 Feb 2010, 10:52:24.

        Comment


        • #5
          Originally posted by Dokmai View Post
          ขออนุญาติ ร่วมด้วยคนครับ

          ส่วนตัวผมเองคิดว่า เราควรทำความเข้าใจอย่างงี่ครับ (มอง AMD ATI เป็นหลักนะครับ ซึ่งจริงมันก็คล้ายๆ nVIDIA ล่ะ)

          - การ์ดจอรุ่นใหม่ ชัดเจนหน่อยก็นับตั้งแต่สมัย R600 หรือที่ที่ขายกันในรุ่น HD2000... สถาปัตยกรรมของ GPU ค่าย ATI ได้เปลี่ยนไป โดยมีการร่วมส่วนประมวลผล Shaders ได้แก่ Vertex, Geometry, Pixel เข้าเป็นหน่วยเดียวกัน เรียกว่า "Unified Shaders"... ซึ่งมันไม่ตรงตัวนักหรอก ถ้าเราจะคิดตรงๆว่า Unified นั้นออกมาแทน Vertex, Geometry, Pixel. แต่ตอนนั้นการประชาสัมพันธ์ก็บอกให้เราคิดกันอย่างงี่ จริงๆ Unified Shaders ซื่อมันบอกว่าเป็น"การรวม" ซึ่งก็คือ "ตัวมันเป็นกลางๆ" ขึ้นอยู่กับความต้องการว่าเราจะให้มันประมวลผลออกมาเป็นอะไร อาจฟังดูคล้ายๆCPU แต่ไม่เหมือนเพราะมันรองรับจำนวณคำสั่งน้อยกว่าCPU โดยมันถูกเน้นออกแบบให้รองรับการประมวลผลเชิงทศนิยมได้ดีเยี่ยม เรียกว่า GPU มันเก่ง FLOPS มากกว่า CPU (ฉะนั้น GPU หรือ GPGPU มันทำงานทดแทน CPU ไม่ได้)

          - ในเมือแนวคิดใหม่ของ GPU ทำให้มันเหมือนมีส่วน "ประมวลผลอเนกประสงค์" แยกออกมาเป็นตัวเป็นตนแล้ว คราวนี้มันจึงไม่กำจัดว่าให้มันประมวลผลเฉพาะแค่ Vertex, Geometry, Pixel. เท่านี้อีกต่อไป แต่ล่ะค่ายก็พยายามผลักแนวคิด "แบ่งงานให้GPUทำ" เข้าสูแวดวงโปรแกรมเมอร์ ทำนองจะบอกว่าGPUทางนี้ว่างงานอยู่นะ ส่งงานมาให้GPUช่วยทำบ่างก็ได้(โดยเฉพาะงานทศนิยม) จากนั้นคำว่า GPGPU ก็เกิดขึ้น เพื่อแสดงความหมายเป็นกลางของแต่ละยี่ห้อ.. ว่าๆ ATI เองเป็นค่ายที่ริเริ่มก่อนแต่ดูสับสนในช่วงแรก ไม่รู้จะเอาชื่ออย่างไงดี ตอนแรกก็เรียก StreamComputer (ผมชอบชื่อนี้นะครับ เพราะให้ความหมายตรงตัวดี) แต่มีปัญหาเพราะสู้กระแสCUDA ของค่ายnVidiaไม่ได้(เพราะแลดูCUDAจะอเนกประสงค์กว่า นิยมกว่า)... ช่วงหลัง AMD ATI ก็เลยสุ่มไปสนับสนุนกลุ่มนักพัฒนา โดยชูแนวคิด GPGPU สร้างเทคนิค(เหมือนจะ)ใหม่ขึ้นมา โดยเป็นสถาปัตยกรรมเปิด(ใครๆก็ใช้ได้ กะว่าใช้ของฟรี ถล่มCUDA) เลยเรียกว่า OpenCL... ซึ่งได้รับการสนับสนุนดีมากกว่าเดิมมาก แม้แต่ฝังเครื่อง Mac เองก็จัดว่า OpenCL เป็นคุณสมบัติที่ขาดไม่ได้


          แล้วความสับสนก็เกิดขึ้น ...? งั่นสรุป..เลิกงง
          - OpenCL ไม่ไช่ของ AMD โดยตรง แต่ AMD สนับสนุนในการพัฒนา
          - OpenCL ไม่ไช่สถาปัตยกรรมในรูปของHardware แต่มันเป็นสถาปัตยกรรมในเชิงSoftware คล้ายจะอุปมาเป็นภาษาคอมพิวเตอร์แบบนึง เช่นเดียวกับ OpenGL, OpenAL ก็เหมือนๆกันเลย
          - ด้วยความที่ OpenCL ตัวมันเป็นเชิงSoftware ตัวมันจึงสามารถรองรับข้ามแพลทฟอร์มได้ไง
          - มองอีกมุมนึง OpenCL กะ DirectCompu มันก็เทคนิคเดียวกันนั้นล่ะ แต่เป็นละรูปแบบ คนล่ะเจ้าของ และวิธีใช้งานต่างกัน
          - การใช้งาน OpenCL เราสามารถไช้งานโดยผ่านไลบารี่OpenCLในขั้นตอนเขียนโปรแกรม โปรมแกรมที่เราเขียนขึ้นจะสามารถเชื่อมไปยังการ์ดจอ และส่งOpenCLไปให้การ์ดจอทำงานเองได้เลย
          - ส่วน DirectCompu อันนี้เวลาจะใช้ต้องผ่านทาง DirectX11 ถ้าเครื่องไหนไม่มี DirectX11 ก็ใช้งานไม่ได้ ทำให้ Mac กะ Linux จึงใช้ไม่ได้(ยกเวนMicrosoftจะเล่นด้วย)
          - CUDA ของ nVIDIA ก็ ทำนองเดียวกับ OpenCL คือมีไลบารี่ให้เราสามารถนำไปใช้ในขั้นตอนเขียนโปรแกรมได้เลย โปรแกรมเราก็จะเทพ โดยไม่ต้องง้อ DirectX (แต่รู้สึกว่า CUDA จะเสียเงินนะ)
          - ความเหมือนที่แตกต่าง ลองนึกถึง X-Fi MB ของ Creative ซิครับ มันมาเหมือนกันเลย เพราะมีไลบรารี่ให้เราเขียนโปรแกรมส่งไปsoundcardประมวลผลได้ (เทียบได้กับ OpenAL)
          - ส่วน Physicx ถ้ามองตรงๆมันไม่เหมือน OpenCL (แต่ถ้ามองอ้อมๆมันก็ทำนองเดียวกัน) ปัจจุบันควรมองว่า Physicx เป็นส่วนหนึ่งของ CUDA อย่างกลายๆมากกว่า ถ้าผมไม่ผิดพลาด CUDA มันคือกำลัง(เชิงโปรกรมมิง)ในการประมวลผลPhysicx (คล้ายที่ DirectCompu เป็นส่วนนึงของ DirectX)
          - เราจึงควรเข้าใจว่า OpenCL เป็นการใช้ประโยชน์จาก Unified Shaders ของการ์ดจอ
          - ส่วนตัวผม รู้สึกว่า พักนี้ AMD ATI จะเน้นทาง DirectComputing มากกว่านะครับ เพื่อสนองประโยชน์ของ DirectX11 ซึ่งตลาดเกมต้องการมากกว่า

          - แล้ว OpenCL มันประมวลผลที่ไหน..?? คำตอบ ประมวลผลอยู่ใน Unified Shaders นั้นล่ะ มันไม่ได้มีส่วนไหนของGPUมาค่อยแบ่งรับเฉพาะงานมันไปทำ, GPU รุ่นใหญ่ที่มี ท่อเทียมเยอะๆ ก็จะประมวลผลได้มากกว่า.
          - แล้ว OpenCL มันประมวลผลแทน CPU ได้ไช่ไม๊..?? คำตอบ ไม่ไช่ เพราะมันรอบรับคำสั่งที่เฉพาะเจาะจงกว่า ไม่สามารถรองรับการประมวลผลต่างๆที่หลายหลายของระบบได้ และOpenCLจะสนับสนุนการประมวลผลข้อมูลในเชิง "ดาต้า" มากกว่า "โอเปอร์เรท" พูดเป็นภาษาคนหน่อยก็คือ OpenCL นิยมใช้ประมวลผลส่วนข้อมูลที่จะนำออกแสดงผล(รับข้อมูลดิบมาประมวลผล) ไม่นิยมใช้ประมวลผลข้อมูลที่จะใช้ควบคุมการทำงานของระบบ (ซึ่ง CUDA ก็ทำนองเดียวกันนี้)
          - แล้ว OpenCL ไว้ใช้เขียนเกมได้เปล่า..?? คำตอบ ก็ไม่เฉพาะเกมหรอก สามารถประยุกต์ใช้ได้หมดล่ะ แม้แต่โปรแกรมDatabaseก็ใช้ได้ ยิ่งถ้าเป็นข้อมูลเชิงทศนิยมจะดีมากเลย(gpuชอบ)
          - แล้วเราควรซื่อการ์ดจอ AMD ATI มาใช้ในเรื่อง เพื่อจะมี OpenCL เตรียมไว้ เลยไช่ไม๊..?? คำตอบ ก็ถ้าคุณจะใช้โปรแกรมที่มีความต้องการ OpenCL อย่างนี้ก็ต้องมีการืดจอ AMD ATI ครับ... แต่ถ้าคุณแค่พิมพ์word ทำexcle เกม3dก็ไม่เล่น ทำนองอย่างนี้ OpenCL ก็ไม่ได้ใช้ประโยชน์ครับ
          - สุดท้าย คิดๆไปแล้ว เครื่อง MAC ต่างหากที่ดูเหมือนจะใช้ประโยชน์ของ OpenCL ได้มากกว่า PC เหอะๆๆ
          สุดยอดแห่งความรู้ครับ ขอคารวะหนึ่งจอก

          Comment


          • #6
            ถูกใจ
            - สุดท้าย คิดๆไปแล้ว เครื่อง MAC ต่างหากที่ดูเหมือนจะใช้ประโยชน์ของ OpenCL ได้มากกว่า PC เหอะๆๆ
            ถามต่อครับ หาก nVidia ออกมาพร้อม OpenCL มันทำงานด้อยกว่า ATI (เฉพาะที่เรียกใช้ OpenCL) ใช่หรือเปล่าครับ ???

            Comment


            • #7
              nVIDIA ก็มี open CL ครับ
              แต่เท่าที่ดูเนี่ย open CL เป็นที่นิยมในเหล่านักพัฒนา EMU มากๆอย่างเช่น Dolphin emu ของเครื่อง Wii และ GC ในเวอร์ชั่นใหม่ๆทำออกมาพัฒนา open CL ด้วยทำให้ใครที่มีการ์ดจอแจ่มๆสามารถเล่น EMU ได้ลื่นเนียนๆแม้คุณจะใช้ CPU แค่ celeron dual core ก็เถอะถ้าการ์ดจอคุณแรงพอ

              Comment


              • #8
                ของ Nvidia

                http://www.nvidia.com/object/cuda_opencl_new.html

                .

                Comment


                • #9
                  งั้นต่อ (ออกตัวก่อนนะครับ backgroundผมเองมาทางสายงาน CAD/CAM นะครับ)

                  - OpenCL มันเป็นสถาปัตยกรรมเปิด แต่ AMDเป็นโต้โผสนับสนุน และมันถูกผลักดันจะให้เป็นมาตรฐานทัดเทียมกับ OpenGL OpenAL

                  - ฝั่ง nVIDIA เองทางนั้นเขาที่ CUDA ที่แข็งมากๆ และCUDAเองมันครอบคุมทุกอย่างแล้ว สามารถใช้ทดแทน OpenCL ได้ทั้งหมด ฝั่งค่าย nVIDIA เขาเลยไม่ตื่นเต้นกับ OpenCL นัก... ซึ่งในทางเทคนิคแล้วก็สามารถปรับโมดูลประมวลผลCUDAให้รอบรับรูปแบบประมวลผลของOpenCLได้ ถ้าเรามองอีกมุมนึง nVIDIA ซิจะร้ายกาจกว่าเสียอีก เพราะรับหมดทั้ง CUDA, DirectCompu, และ OpenCL

                  - ถ้ามองในมุมนักพัฒนา เราคงเอา OpenCL กับ CUDA มาชนกันตรงๆไม่ได้ เพราะมันคือ ของฟรี ชนกับ ของเสียสะตัง ทางฝั่ง CUDA เองเขามีรากฐานนักพัฒนาที่นิยมCUDAเป็นทุนเดิมอยู่แล้ว และถ้าสังเกตุการตลาดของ CUDA เน้นไปทางโซลูชันใหญ่ๆ มากกว่าแอพพิเคชันเดียวๆเล็ก

                  - แต่ทุกท่านจงหยุดก่อน... เอา.! เราลองยกตัวอย่างโปรแกรมที่ใช้ประโยชน์จาก Cuda หรือ OpenCL มาให้ฟังสัก 1 อันซิ (อย่าตอบว่าเกมนะ) นึกออกกันไม๊.? ผมยกตัวอย่างให้1อันคือ Cyberlink PowerDirector... ส่วนถ้าใครจะตอบว่า Photoshop CS4 หรืออื่นในสาย CS4 ถ้าตอบแบบนี้คือ "ผิด" เพราะ Photoshop ใช้ OpenGL มาช่วยเร่งการประมวลผล (แต่ไม่ได้ไช้ OpenCL, CUDA หรืออื่นๆ) ซึ่งการ์ดจอใบไหนที่เร่งOpenGLเก่งๆก็จะเหมาะ แต่สำหรับPlug-inที่ใช่ร่วมกับ CS4 ต่างหากล่ะ ผู้ผลิตplug-inบ่างรายก็เลือกคุณสมบัติของCUDA, บางรายก็เลือกOpenCL ฉะนั้นโปรแกรมอย่าง Photoshop หรือ Premiere พวกมันได้ไช้งาน CUDA หรือ OpenCL โดยอ้อมต่างหากครับ... คือถ้าคิดกันดีๆแล้ว เราไม่เห็นโปรแกรมพื้นๆตัวใหนใช้คุณสมบัตพวกนี้เลยนะ.. ดูที่ฝั่งเครื่อง PC (ที่ใช้ Windows และ Linux) แม้แต่ตัวOSเอง ยั่งไม่ได้ใช้ประโยชน์จาก OpenCL หรือ CUDA นำมาประมวลผลในงานทั่วไปของOSเลย

                  - ซึ่งต่างจากฝั่งเครื่องแมค ระบบปฎิบัติการรุ่นใหม่ MAC OS X เวอรชัน 10.5 Leopard, 10.6 Snow Leopard พวกมันรีเควส OpenCL ในการทำงานระดับ OS แล้วนะครับ (เครื่องแมคเก่าที่ไม่รองรับOpenCL ลงSnow Leopardมีเซ็งกันง่ะ) ถ้ามองในมุมนี้ MacOSX ดูก้าวหน้ากว่า Windows 7

                  ** อยากให้เข้าใจก่อนว่า เราเองในระดับลูกค้า พวกเรากำลังถูกยัดเยียด OpenCL มาให้เราซื้อต่างหาก เพราะการ์ดจอรุ่นใหม่มันมีมาทุกใบ... ยกเว้นต้องการแบบสุดๆไปเลย อย่างนั้นเราต้องซื้อพวก การ์ดStream หรือพวก Tesla เอามาใช้โดยตรง

                  ** และปัจจุบัน สำหรับ Windows 7 ดูเหมือนว่า OpenCL ยังไม่จำเป็นกับโปรแกรมระดับพื้นๆ ฉะนั้นต่อให้เรามีการ์ดจอที่รัน OpenCL/CUDA ได้เร็วปี๊ดๆ มันก็ไม่ได้เพิ่มประสิทธิภาพให้กับตัวWindows 7เลย
                  Last edited by Dokmai; 22 Feb 2010, 16:45:10.

                  Comment


                  • #10
                    Originally posted by alice View Post
                    ถูกใจ

                    ถามต่อครับ หาก nVidia ออกมาพร้อม OpenCL มันทำงานด้อยกว่า ATI (เฉพาะที่เรียกใช้ OpenCL) ใช่หรือเปล่าครับ ???
                    อันนี้มองในมุมเครื่องแมคไช่ไม๊ครับ...
                    เครื่องแมคมันแตกต่างจาก PC นะครับ เพราะมันมี Hardware จำกัดกว่า มองบางมุมดูเหมือนว่า Apple เองเป็นคนจัดชุดมาให้เราล่วงหน้าแล้ว โดยมันขึ้นอยู่กับราคา รุ่นถูกรุ่นแพงมันก็มีการ์ดจอต่างกัน อย่างเครื่อง Mac Pro เองมันก็มีทั้ง nVidia และ AMD ATI บังเอิญว่าแมคโปรรุ่นแพงมันติดการ์ดจอ HD4870 มาก็เท่านั้น เราจะอุปมาได้ไม๊ว่า? Apple เลือกแล้วว่า HD4870 เหมาะที่สุดแล้ว(เลยไม่มอง GTX285)



                    แต่ถ้ามองในมุม PC ที่ใช้ Windows...
                    มันก็แน่ๆล่ะครับ AMD ATI เก่ง OpenCL มากกว่าแน่นอน เพราะลักษณะการืดจอ GPU ที่มีท่อเยอะกว่า ดูง่ายๆการ์ดจอ ATI มีผลคำนวณ GFLOPS ดีกว่าการ์ดจอ nVIDIA (ยิ่งเทียบรุ่นเทียบราคาแล้ว ATI นำหน้าGFLOPSเยอะเลย) ฉะนั้นถ้าเราเขียนโปรแกรมด้วย OpenCL โปรแกรมเดียวกัน ก็ย่อมคำนวณบนการ์ด ATI ได้ดีกว่าครับ...(แต่อย่าลืมนะ ATI คำนวณ CUDA ไม่ได้เลย)

                    จริงๆแล้ว AMD ATI เขายังมีของเล่นจุกจิกอีกหลายตัว จริงอยู่โปรแกรมทั่วไปอาจไม่ได้ใช้ OpenCL แต่ ATI ยังมี AVIVO ซึ่งตัวมันก็ประมวลอยู่บนส่วนUnified Shadersบนการ์ดจอนั้นล่ะ(แต่เขาเรียกใหม่ว่า UVD - Unified Video Decoder) ฉะนั้นถึงไม่ไช้ OpenCL โปรแกรมพวกดูหนังฟังเพลงก็ยังสามารถเข้าถึงการ์ดจอผ่านทาง AVIVO ได้เช่นกัน และเหมือนเดิม AVIVO นั้นฟรี แต่ PureVDO ของ nVIDIA นั้นไม่ค่อยจะฟรีนัก
                    Last edited by Dokmai; 22 Feb 2010, 16:46:46.

                    Comment


                    • #11
                      Originally posted by Khow View Post
                      nVIDIA ก็มี open CL ครับ
                      แต่เท่าที่ดูเนี่ย open CL เป็นที่นิยมในเหล่านักพัฒนา EMU มากๆอย่างเช่น Dolphin emu ของเครื่อง Wii และ GC ในเวอร์ชั่นใหม่ๆทำออกมาพัฒนา open CL ด้วยทำให้ใครที่มีการ์ดจอแจ่มๆสามารถเล่น EMU ได้ลื่นเนียนๆแม้คุณจะใช้ CPU แค่ celeron dual core ก็เถอะถ้าการ์ดจอคุณแรงพอ

                      ไช่ครับ

                      แต่ประเด็นนี้ ออกจะแนว Hack ครับ ซึ่งก็แนวๆโปรแกรม EMU มันมักมานอกกรอบเสมอ

                      Comment


                      • #12
                        Originally posted by TWK. View Post
                        นั้นแสดงให้เห็นว่า การ์ด nVIDIA ก็รองรับ OpenCL เหมือนกัน (อย่าไปซีเรียสที่ GFLOPS ต่ำกว่าเขาก็แล้วกัน)

                        ต้องดูต่อไปว่า OpenCL จะแรงแค่ไหน สมมุติว่า Windows 7 Sp1 หรือ Windows 8 หันมารองรับ OpenCL เพียงตัวเดียว(โดยยังไม่รอบรับCUDA) ถ้าอย่างนี้ nVIDIA จะเต้นแหย่งๆ ดีไม่ดีอาจจะชู OpenCL นำหน้าเลยก็ได้

                        แต่เออ..ว่าๆไป ถ้าเรามองข้ามเรื่อง OpenCL หรือ CUDA ไปซะ... การ์ดจอของ nVIDIA มีจุดแข็งที่ OpenGL มากว่า ATI นะครับ... พวกงานWorkstation การ์ดจอnVidiaก็ยังนำหน้ากว่าอยู่ดี(และราคาแพงกว่าอีกนั้นล่ะ)
                        Last edited by Dokmai; 22 Feb 2010, 16:42:35.

                        Comment


                        • #13
                          Originally posted by Dokmai View Post
                          ไช่ครับ

                          แต่ประเด็นนี้ ออกจะแนว Hack ครับ ซึ่งก็แนวๆโปรแกรม EMU มันมักมานอกกรอบเสมอ
                          โอ้ไม่ว่าจะคำถามใดที่ OCZ มีคำตอยให้เสมอ ขอบคุณครับ

                          Comment


                          • #14
                            งั้นขอถามต่อ สิ่งที่จะเทียบกับ Phsicx ของ ATI คือ Havok ใช่ไหมครับ แล้ว ตอนนี้มันไปถึงไหนแล้วได้ข่าวมานานแต่ยังไม่เห็นมาสักที แล้วถ้ามาจะดีกว่า Physicx ไหม เห็นว่าร่วมมือกับ Intel ด้วยไม่ใช่หรือ

                            Comment


                            • #15
                              Originally posted by lords View Post
                              งั้นขอถามต่อ สิ่งที่จะเทียบกับ Phsicx ของ ATI คือ Havok ใช่ไหมครับ แล้ว ตอนนี้มันไปถึงไหนแล้วได้ข่าวมานานแต่ยังไม่เห็นมาสักที แล้วถ้ามาจะดีกว่า Physicx ไหม เห็นว่าร่วมมือกับ Intel ด้วยไม่ใช่หรือ
                              ประเด็นนี้ยิงผ่านๆนะ

                              ผมกลับมองอีกมุมนึง เพราะHavokเองมันโดนIntelซื้อไปแล้ว ถ้ามันจะเกิดฟิสิกโมดูลHavokขึ้นมา ดีไม่ดี มันอาจจะบิวอินอยู่ใน CPU อินเทลเลยละมั่งครับ (ฮ่าๆ ไปกันคนล่ะทางเลย)

                              แต่ก็อย่างว่า PhysicX มันก็มีความแข็งอยู่ในตัวของมัน มันมีฐานเอนจินเกมที่รองรับเยอะแยะไปหมด ผมว่า ลำพังแค่ บริษัทHavok กับ AMD ATI จะดันมาสู้กับ PhysicX ก็คงต้องใช้เวลานานพอสมควร อย่าน้อยๆก็ต้องรอให้การ์ดจอระดับ GTX285 มันล่าสมัยจนเล่นเกมแรงๆตัวใหม่ๆไม่ไหวแล้วเสียก่อนล่ะ ฉะนั้นอย่าไปคิดเลยว่า Havok กับ PhysicX ใครทำให้เกมมีภาพได้อารมมากกว่ากัน ผมคิดว่าให้มองว่าการ์ดจอยีห้อไหนมียอดขายมากกว่ากันดีกว่า ซึ่งตอนนี้มองออกแล้วว่า Havok คงจะไม่ล้มเหลวแน่นอน เพราะการืด HD5000 ขายได้ระเบิดซะขนาดนี้

                              หรือไม่แน่ สุดท้ายแล้ว DirectX เองอาจเป็นตาอยู่ Microsoft อาจออก DirectX12 แล้วมีของใหม่เป็น DirectPhysic ออกมาเป็นฉบับตัวเองก็เป็นได้ (ถ้าเป็นอย่างงี่ การ์ดจอเล่นเกมก็จะแห่มาชูคุณสมบัติ DirectCompu กันใหญ๋แน่เลย)

                              สรุป ผมคิดว่า มันคงอยู่ทั้งคู่ล่ะครับ ทั้ง Havok กับ PhysicX ต่อไปบริษัทเกมก็คงจะพัฒนาเอนจินเกนที่รองรับมันทั้งสองโมดูล เกมตัวเองจะได้เล่นสนุกกับทุการ์ดจอ

                              Comment

                              Working...
                              X