اوپن سی ایل 3.0 تفصیلات متعارف کرائی گئیں۔

Khronos تشویش، OpenGL، Vulkan اور OpenCL خاندانی وضاحتیں تیار کرنے کے لیے ذمہ دار، اعلان کیا اوپن سی ایل 3.0 تصریحات کی ترقی کی تکمیل پر جو سپر کمپیوٹرز اور کلاؤڈ سرورز میں استعمال ہونے والے ملٹی کور CPUs، GPUs، FPGAs، DSPs اور دیگر خصوصی چپس کا استعمال کرتے ہوئے کراس پلیٹ فارم متوازی کمپیوٹنگ کو منظم کرنے کے لیے APIs اور C زبان کی توسیعات کی وضاحت کرتی ہے۔ چپس کے لیے جو موبائل ڈیوائسز اور ایمبیڈڈ ٹیکنالوجی میں مل سکتے ہیں۔ اوپن سی ایل کا معیار مکمل طور پر کھلا ہے اور لائسنس فیس کی ضرورت نہیں ہے۔ IBM، NVIDIA، Intel، AMD، Apple، ARM، Electronic Arts، Qualcomm، Texas Instruments اور Toshiba جیسی کمپنیوں نے اس معیار پر کام میں حصہ لیا۔

موجودہ مرحلے پر، تصریح کو عارضی حیثیت تفویض کی گئی ہے، جس کا مطلب ہے کہ اس کے ذریعے بھیجے گئے تاثرات کی بنیاد پر تطہیر کا امکان GitHub کے. تبصروں کو مدنظر رکھنے کے بعد، تفصیلات کو حتمی شکل دی جائے گی اور موجودہ نفاذ کی مطابقت کو جانچنے کے لیے ایک حتمی ٹیسٹ سوٹ شائع کیا جائے گا۔

اوپن سی ایل 3.0 تفصیلات متعارف کرائی گئیں۔

سب سے زیادہ قابل ذکر خصوصیات OpenCL 3.0:

  • OpenCL 3.0 API اب OpenCL (1.2, 2.x) کے تمام ورژنز کا احاطہ کرتا ہے، بغیر ہر ورژن کے لیے علیحدہ وضاحتیں فراہم کیے۔ OpenCL 3.0 اضافی تصریحات کے انضمام کے ذریعے بنیادی فعالیت کو بڑھانے کی صلاحیت فراہم کرتا ہے جو OpenCL 1.2/2.X کی یک سنگی نوعیت کو مسدود کیے بغیر اختیارات کی شکل میں پرتیں ہوں گی۔
  • صرف وہی فعالیت جو OpenCL 1.2 کی تعمیل کرتی ہے کو لازمی قرار دیا گیا ہے، اور OpenCL 2.x وضاحتوں میں تجویز کردہ تمام خصوصیات کو اختیاری کے طور پر درجہ بندی کیا گیا ہے۔ یہ نقطہ نظر اپنی مرضی کے مطابق عمل درآمد کو آسان بنائے گا جو OpenCL 3.0 کے ساتھ مطابقت رکھتا ہے، اور آلات کی حد کو بڑھا دے گا جن پر OpenCL 3.0 استعمال کیا جا سکتا ہے۔ مثال کے طور پر، مینوفیکچررز OpenCL 3.0.x کی مخصوص خصوصیات کو لاگو کیے بغیر OpenCL 2 سپورٹ کو نافذ کر سکتے ہیں۔ اختیاری زبان کی خصوصیات تک رسائی حاصل کرنے کے لیے، OpenCL 3.0 نے ٹیسٹ سوالات کا ایک نظام شامل کیا ہے جو آپ کو انفرادی API عناصر کے ساتھ ساتھ خصوصی میکرو کی حمایت کا جائزہ لینے کی اجازت دیتا ہے۔
  • پہلے سے جاری کردہ تصریحات کے ساتھ یونیفیکیشن اوپن سی ایل 3.0 پر ایپلیکیشنز کو منتقل کرنا آسان بناتا ہے۔ OpenCL 1.2 ایپلی کیشنز ان آلات پر چل سکیں گی جو OpenCL 3.0 کو بغیر کسی ترمیم کے سپورٹ کرتے ہیں۔ OpenCL 2.x ایپلی کیشنز کو بھی کوڈ کی تبدیلیوں کی ضرورت نہیں ہوگی، جب تک کہ OpenCL 3.0 ماحول مطلوبہ فعالیت فراہم کرتا ہے (مستقبل کی پورٹیبلٹی کو یقینی بنانے کے لیے، OpenCL 2.x ایپلی کیشنز کو OpenCL 2.x خصوصیات کے لیے سپورٹ کا جائزہ لینے کے لیے ٹیسٹ سوالات شامل کرنے کی سفارش کی جاتی ہے۔ استعمال میں ہے). اوپن سی ایل کے نفاذ کے ساتھ ڈرائیور ڈویلپر آسانی سے اپنی مصنوعات کو OpenCL 3.0 میں اپ گریڈ کر سکتے ہیں، مخصوص API کالز کے لیے صرف استفسار کی کارروائی کا اضافہ کر سکتے ہیں، اور وقت کے ساتھ ساتھ بتدریج فعالیت میں اضافہ کر سکتے ہیں۔
  • OpenCL 3.0 تصریح SPIR-V عام انٹرمیڈیٹ نمائندگی کے ماحول، ایکسٹینشن، اور تصریحات کے ساتھ منسلک ہے، جسے Vulkan API بھی استعمال کرتا ہے۔ SPIR-V 1.3 تفصیلات کے لیے سپورٹ بنیادی OpenCL 3.0 میں بطور اختیاری خصوصیت شامل ہے۔ انٹرمیڈیٹ نمائندگی کے استعمال کے ذریعے SPIR-V کمپیوٹنگ کور کے لیے ذیلی گروپس کے ساتھ آپریشنز کے لیے تعاون شامل کیا گیا ہے۔
    اوپن سی ایل 3.0 تفصیلات متعارف کرائی گئیں۔

  • غیر مطابقت پذیر DMA آپریشنز (Asynchronous DMA) انجام دینے کے لیے ایک توسیع کے لیے معاونت شامل کی گئی، جو DSP نما چپس میں براہ راست میموری تک رسائی کے ساتھ معاون ہے۔ غیر مطابقت پذیر DMA حسابات یا دیگر ڈیٹا کی منتقلی کی کارروائیوں کے متوازی طور پر، عالمی اور مقامی میموری کے درمیان ڈیٹا کی منتقلی کے لیے DMA لین دین کا استعمال ممکن بناتا ہے۔
  • سی متوازی پروگرامنگ ایکسٹینشن کی تفصیلات کو اپ ڈیٹ کر دیا گیا ہے۔ ورژن 3.0، اور C++ کے لیے OpenCL لینگویج ایکسٹینشنز کی ترقی کو "C++ for OpenCL" پروجیکٹ کے حق میں بند کر دیا گیا تھا۔ OpenCL کے لیے C++ کلینگ/LLVM اور پر مبنی ایک کمپائلر ہے۔ براڈ کاسٹننگ C++ اور OpenCL C کرنل SPIR-V انٹرمیڈیٹ نمائندگی یا کم سطح کے مشین کوڈ میں۔ براڈکاسٹنگ کے ذریعے، SPIR-V SYCL ٹیمپلیٹ لائبریری کا استعمال کرتے ہوئے C++ ایپلی کیشنز کی اسمبلی کو بھی منظم کرتا ہے، جو متوازی ایپلی کیشنز کی تخلیق کو آسان بناتا ہے۔

    اوپن سی ایل 3.0 تفصیلات متعارف کرائی گئیں۔

  • Vulkan API کے ذریعے OpenCL کو نشر کرنے کے لیے ایک کمپائلر تجویز کیا گیا ہے۔ clspv، جو OpenCL کرنل کو Vulkan SPIR-V نمائندگی، اور ایک پرت میں تبدیل کرتا ہے۔ clvk OpenCL API کو Vulkan کے اوپر کام کرنے کے قابل بنانے کے لیے۔

    اوپن سی ایل 3.0 تفصیلات متعارف کرائی گئیں۔

ماخذ: opennet.ru

نیا تبصرہ شامل کریں