نظرة عامة على WebGPU

François Beaufort
François Beaufort

تاريخ النشر: 20 يوليو 2023، تاريخ آخر تعديل: 11 أغسطس 2025

‫WebGPU هي واجهة برمجة تطبيقات لرسومات الويب تقدّم مزايا كبيرة، مثل تقليل عبء عمل JavaScript بشكل كبير للرسومات نفسها وتحسينات تزيد عن ثلاثة أضعاف في استنتاجات نماذج تعلُّم الآلة. ويعود ذلك إلى إمكانية برمجة وحدة معالجة الرسومات بمرونة والوصول إلى إمكانات متقدّمة لا توفّرها WebGL.

تم تصميم واجهة برمجة التطبيقات مع مراعاة منصة الويب، وهي تتضمّن واجهة برمجة تطبيقات JavaScript اصطلاحية، وتتكامل مع الوعود، وتتيح استيراد الفيديوهات، وتوفّر تجربة سلسة للمطوّرين مع رسائل خطأ واضحة.

‫WebGPU هي نتيجة جهد تعاوني بذله فريق "وحدة معالجة الرسومات على الويب" التابع لمجموعة W3C، والذي يتضمّن مساهمات من شركات كبرى مثل Mozilla وApple وIntel وMicrosoft.

دعم المتصفح

تم توفير هذا الإصدار الأوّلي من WebGPU في الإصدار 113 من Chrome على أجهزة ChromeOS المتوافقة مع Vulkan وأجهزة Windows المتوافقة مع Direct3D 12 وmacOS. أصبح التوافق مع Android متاحًا لاحقًا في الإصدار 121 من Chrome على الأجهزة التي تعمل بالإصدار 12 من نظام التشغيل Android والإصدارات الأحدث والمزوّدة بوحدات معالجة الرسومات من Qualcomm وARM. وسيتوفّر قريبًا على Linux وعلى المزيد من المنصات الحالية.

تم طرح WebGPU في Firefox 141 على أجهزة Windows وSafari 26، بالإضافة إلى التنفيذ في Chrome.

للاطّلاع على آخر المعلومات عن حالة تنفيذ WebGPU، يمكنك الانتقال إلى صفحة حالة تنفيذ gpuweb.

دعم المكتبة

العديد من مكتبات WebGL الشائعة الاستخدام بصدد توفير إمكانية استخدام WebGPU أو أتاحتها بالفعل، ما يعني أنّ استخدام WebGPU قد يتطلّب إجراء تغيير واحد فقط في سطر الرمز.

  • تتوافق Babylon.js تمامًا مع WebGPU.
  • أعلنت PlayCanvas عن توفير إمكانية استخدام WebGPU في البداية.
  • يتوافق TensorFlow.js مع إصدارات محسّنة من معظم العمليات المتوافقة مع WebGPU.
  • يجري العمل على توفير التوافق مع WebGPU في Three.js، ويمكنك الاطّلاع على الأمثلة.

تتوفّر كلّ من مكتبة Dawn لمتصفّح Chromium ومكتبة wgpu لمتصفّح Firefox كحزمة مستقلة. وتوفّر هذه المكتبات إمكانية نقل رائعة وطبقات مريحة تجرّد واجهات برمجة التطبيقات لوحدة معالجة الرسومات في نظام التشغيل. ويسهّل استخدام هذه المكتبات في التطبيقات الأصلية نقلها إلى WASM من خلال Emscripten وRust web-sys.

الموارد

تُعدّ WebGPU تكنولوجيا مهمة، وننصحك بالاطّلاع على المراجع التالية لمعرفة المزيد: