RenderScript
RenderScript هو مكون قديم من نظام التشغيل أندرويد للأجهزة المحمولة، يوفر واجهة برمجة تطبيقات (API) لتسريع الأداء، مستفيدًا من تنوع مكونات الأجهزة. يسمح هذا المكون للمطورين بتحسين أداء تطبيقاتهم، ولكن على حساب كتابة أكواد أكثر تعقيدًا (منخفضة المستوى).
يوفر للمطور ثلاث أدوات أساسية: واجهة برمجة تطبيقات بسيطة للعرض ثلاثي الأبعاد، وواجهة برمجة تطبيقات حسابية مشابهة لـ CUDA ، ولغة مشتقة من C99 .
تاريخ
تمت إضافة RenderScript في نظام Android 3.0 Honeycomb . [ 1 ]
اعتبارًا من Android 4.1، تم إيقاف واجهة برمجة تطبيقات العرض ثلاثي الأبعاد التجريبية لـ RenderScript ، وهي موجودة الآن فقط كواجهة برمجة تطبيقات حسابية.
أضاف نظام Android 4.2 إمكانيات جديدة إلى وظائف البرمجة النصية الأساسية، مثل المزج والتمويه ؛ بالإضافة إلى ميزة ScriptGroups التي تسمح بتجميع نصوص RenderScript ذات الصلة وتنفيذها باستدعاء واحد. كما أضاف أيضًا FilterScript، وهي مجموعة فرعية من RenderScript تُمكّن المطورين من كتابة عمليات معالجة الصور الخاصة بهم بلغة FilterScript باستخدام واجهة برمجة تطبيقات وقت تشغيل RenderScript القياسية، ولكن ضمن قيود أكثر صرامة تضمن توافقًا أوسع وتحسينًا في الأداء عبر وحدات المعالجة المركزية متعددة النوى ووحدات معالجة الرسومات ووحدات معالجة الإشارات الرقمية . تتميز FilterScript بدقة أقل في حساب الفاصلة العائمة ، وهي مجموعة فرعية أكثر توافقًا مع مختلف الأجهزة من RenderScript - ولا ينبغي الخلط بينها وبين تقنية بديلة لـ RenderScript. [ 2 ]
في 19 أبريل 2021، أعلنت جوجل أن RenderScript سيتم إيقافه في Android 12 ، وأوصت بنقل التعليمات البرمجية الحالية إلى Vulkan . [ 3 ]
سمات
سهولة الحمل
تم تصميم RenderScript ليعمل دائمًا على مختلف منصات Android بغض النظر عن نوع الجهاز. ويتم ضبط الأداء أثناء التشغيل.
تعتمد قابلية نقل RenderScript على برامج التشغيل الخاصة بالجهاز: [ 4 ] يتم توفير برنامج تشغيل أساسي لوحدة المعالجة المركزية فقط لكل جهاز، بينما توجد بعض برامج تشغيل RenderScript الخاصة بمجموعة الشرائح التي تتيح استخدام وحدة معالجة الرسومات (على سبيل المثال برامج التشغيل الخاصة بشركة Qualcomm، والتي يتم توفيرها في libRSDriver_adreno.soمكتبة Android).
أداء
تم تصميم RenderScript لضبط المهام أثناء التشغيل بحيث يمكن تقسيمها وتشغيلها بكفاءة وبشكل متزامن على الأجهزة الأساسية. [ 5 ]
ابتداءً من نظام Android 4.2، تم توسيع نطاق RenderScript ليعمل على وحدة معالجة الرسومات (GPU) بالإضافة إلى وحدة المعالجة المركزية (CPU) على الأنظمة المدعومة. [ 6 ]
القيود
- لا يستطيع RenderScript حتى الآن التعبير عن الاتصال بين الخيوط داخل الشريحة (المعروف باسم الذاكرة المحلية في OpenCL ، والذاكرة المشتركة في CUDA).
- لا يستطيع RenderScript حتى الآن التعبير عن عمليات البحث ثنائية وثلاثية الأبعاد المنفذة بواسطة الأجهزة باستخدام الاستيفاء الثنائي الخطي (المعروف باسم texture في CUDA، و image read في OpenCL).
مراجع
- ↑ "قرص العسل" .
- ↑ "واجهات برمجة تطبيقات Android 4.2" . تم الاطلاع عليه بتاريخ 20-03-2013 .
- ↑ "حوسبة وحدة معالجة الرسومات في نظام أندرويد: مستقبلاً" . مدونة مطوري أندرويد . تم الاطلاع عليه بتاريخ 19 أبريل 2021 .
- ↑ ماركيتي، ألبرتو (2016). ريندر سكريبت: الحوسبة المتوازية على نظام أندرويد، الطريقة السهلة ( الطبعة الأولى). مؤرشف من الأصل بتاريخ 25 أغسطس 2016. تم الاطلاع عليه بتاريخ 5 يوليو 2016 .
- ↑ "Renderscript Part 2" .
- ↑ "جيلي بين - عرض نصي" . تم الاطلاع عليه بتاريخ 27-11-2012 .
روابط خارجية
- نظام التشغيل أندرويد
- مكتبات GPGPU
