CUDA، OPENCL، PGI، إلخ ... ولكن ماذا حدث لشركة GLSL و CG؟

StackOverflow https://stackoverflow.com/questions/982911

  •  13-09-2019
  •  | 
  •  

سؤال

CUDA، OPENCL، وخيارات GPU التي تقدمها مجموعة بورتلاند مثيرة للاهتمام ... النتائج غير المسنة (125 مرات تسريع لبعض المجموعات). يبدو أن الموجة التالية من أدوات GPGPU تستعد للسيطرة على عالم الحوسبة العلمية. ومع ذلك، أذكر نفس fanfare عند الإعلان عن GLSL و CG.

ما حدث من أي وقت مضى لشركة GLSL و CG؟ هل تم إسقاط الدعم؟ هل ما زال الناس يستخدمون GLSL & CG للحوسبة العامة للأغراض العامة على GPU؟

هل كانت مفيدة؟

المحلول

أيام استخدام CG أو GLSL ل GPGPU قد انتهت تقريبا. ومع ذلك، يتم استخدامها بشدة للرسومات ثلاثية الأبعاد وستواصل استخدامها بهذه الطريقة للمستقبل المنظور. تم استخدام GLSL و CG فقط للحساب العلمي لأنها كانت اللعبة الوحيدة في المدينة. لم يكن هناك بديل آخر للقيام بحسوبة الغرض العام على GPU.

السبب الحقيقي الوحيد لاستخدام GLSL للحصول على GPGPU الآن هو أن تكون ملهيا. إذا تمكنت تماما من تشغيل البرنامج الخاص بك على مجموعة متنوعة من GPUs، فهذا، في الوقت الحالي، لا تزال الطريقة للذهاب. سوف opencl تغيير هذا في المستقبل القريب، رغم ذلك.

السبب في أن الحوسبة العلمية تنتقل إلى أشياء مثل cuda and opencl كثيرة. تعطيك هذه المكتبات إمكانية الوصول إلى أجهزة GPU وغيرها الكثير من الشفافية حول اختناقات الأداء. هذا يجعل من السهل الحصول على أقصى أداء من GPU. تقدم CUDA و OPENCL أيضا ميزات (مثل الذاكرة المشتركة) التي ببساطة غير متوفرة في GLSL أو CG ولكنها حاسمة لتحقيق الأداء الجيد في العديد من الخوارزميات (مثل المصفوفة عبر). سبب آخر هو أن CUDA و OPENCL تمنحك الوصول إلى GPU دون الحاجة إلى سياق رسومات، مما يتيح لك، من بين أمور أخرى، استخدام GPU لجهاز الكمبيوتر الخاص بالكمبيوتر للحساب.

نصائح أخرى

أنت تقارن التفاح للبرتقال. تعني CUDA و OPENCL القيام بحساسية للأغراض العامة على GPUs. GLSL و CG لغات التظليل. وهي مقصودة في المقام الأول لكتابة التظليل، ولا تقوم بحسابات الغرض العام.

لا أعرف عن الوضع الفعلي لشركة GLSL، لكنني أعرف عن CG. لقد مرت سنوات منذ أن استخدمتها، لكن صديقي الذي عمل فقط في لعبة ثلاثية الأبعاد جديدة، استخدم CG لكتابة تظليله. حتى لو لم يكن هناك نفس المجتمع والصناعة الدعم وراء CG الذي كان هناك مرة واحدة، فسيظل هناك، ولا يزال بإمكانك استخدامه.

  • CG / HLSL. إذا كنت لعبة ديف.
  • opencl إذا كنت لعبة المغامرة للغاية dev.

لأي شخص آخر على سطح المكتب، لا يمكنك حتى ضمان أن يكون لديهم الأجهزة المطلوبة.

مستقبل كل هذه الحلول تبدو قاتمة. من المحتمل أن نرى ما لا يقل عن 1 أو 2 أجيال إضافية من اللغات قبل أن يمسك GPGPU على سطح المكتب ودمجها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top