فائنل OpenCL 3.0 وضاحتون شايع ٿيل

Khronos خدشات، OpenGL، Vulkan ۽ OpenCL خانداني وضاحتن کي ترقي ڪرڻ لاء ذميوار، اعلان ڪيو آخري وضاحتن جي اشاعت تي OpenCL 3.0ملٽي-ڪور CPUs، GPUs، FPGAs، DSPs ۽ ٻيون خاص چپس استعمال ڪندي ڪراس-پليٽفارم متوازي ڪمپيوٽنگ کي منظم ڪرڻ لاءِ C ٻولي جي APIs ۽ ايڪسٽينشن جي وضاحت ڪرڻ، سپر ڪمپيوٽرن ۽ ڪلائوڊ سرورز ۾ استعمال ٿيندڙ چپس کان وٺي چپس تائين جيڪي موبائيل ڊوائيسز ۾ ملي سگھن ٿيون ۽ تعمير ٿيل ٽيڪنالاجي. OpenCL معيار مڪمل طور تي کليل آهي ۽ لائسنس جي فيس جي ضرورت ناهي.

گڏوگڏ شايع ٿيل OpenCL SDK کوليو اوزارن، مثالن، دستاويزن، هيڊر فائلن، C++ بائنڊنگز ۽ سي لائبريرين سان گڏ OpenCL 3.0 سان مطابقت رکندڙ ايپليڪيشنون ٺاهڻ لاءِ. پڻ جي نمائندگي ڪئي وئي آهي اوپن سي ايل 3.0 جو شروعاتي نفاذ ڪلانگ ڪمپلر جي بنياد تي، جيڪو LLVM جي بنيادي ڍانچي ۾ شامل ڪرڻ لاءِ پيچ جي نظرثاني جي مرحلي تي آھي. ڪمپنيون جهڙوڪ IBM، NVIDIA، Intel، AMD، Apple، ARM، اليڪٽرانڪ آرٽس، Qualcomm، Texas Instruments ۽ Toshiba معيار تي ڪم ۾ حصو ورتو.

فائنل OpenCL 3.0 وضاحتون شايع ٿيل

سڀ کان وڌيڪ قابل ذڪر особенности OpenCL 3.0:

  • OpenCL 3.0 API هاڻي OpenCL (1.2, 2.x) جي سڀني ورزن کي ڍڪي ٿو، هر ورزن لاءِ الڳ وضاحتون مهيا ڪرڻ کان سواءِ. OpenCL 3.0 اضافي وضاحتن جي انضمام جي ذريعي بنيادي ڪارڪردگي کي وڌائڻ جي صلاحيت ڏئي ٿو جيڪا OpenCL 1.2/2.X جي monolithic فطرت کي بلاڪ ڪرڻ کان سواء اختيارن جي صورت ۾ پرت ڪئي ويندي.
  • صرف ڪارڪردگي جيڪا OpenCL 1.2 سان مطابقت رکي ٿي، لازمي قرار ڏني وئي آهي، ۽ OpenCL 2.x وضاحتن ۾ تجويز ڪيل سڀئي خاصيتون اختياري طور تي درجه بندي ڪيون ويون آهن. اهو طريقو آسان بڻائيندو رواجي عملن کي ٺاهڻ ۾ جيڪي OpenCL 3.0 سان مطابقت رکن ٿيون، ۽ ڊوائيسز جي حد کي وڌائيندو جن تي OpenCL 3.0 استعمال ڪري سگهجي ٿو. مثال طور، ٺاهيندڙ مخصوص OpenCL 3.0.x خاصيتن کي لاڳو ڪرڻ کان سواء OpenCL 2 سپورٽ کي لاڳو ڪري سگھن ٿا. اختياري ٻوليءَ جي خاصيتن تائين رسائي حاصل ڪرڻ لاءِ، OpenCL 3.0 شامل ڪيو آھي ھڪڙو امتحاني سوالن جو سسٽم جيڪو توھان کي اجازت ڏئي ٿو انفرادي API عناصر جي مدد جو جائزو وٺي، خاص ميڪرو.
  • اڳواٽ جاري ڪيل وضاحتن سان يونيڪيشن ان کي آسان بڻائي ٿي ايپليڪيشنن کي OpenCL 3.0 ڏانهن منتقل ڪرڻ. OpenCL 1.2 ايپليڪيشنون ڊوائيسز تي هلائڻ جي قابل ٿي وينديون جيڪي OpenCL 3.0 کي سپورٽ ڪن ٿيون بغير ترميم جي. OpenCL 2.x ايپليڪيشنن کي به ڪوڊ تبديلين جي ضرورت نه پوندي، جيستائين OpenCL 3.0 ماحول گهربل ڪارڪردگي مهيا ڪري ٿو (مستقبل جي پورائيبلٽي کي يقيني بڻائڻ لاء، OpenCL 2.x ايپليڪيشنن کي سفارش ڪئي وئي آهي ته ٽيسٽ سوالن کي شامل ڪرڻ لاء OpenCL 2.x خاصيتن جي مدد جو جائزو وٺڻ لاء. استعمال ڪيو پيو وڃي). ڊرائيور ڊولپرز سان OpenCL لاڳو ڪرڻ وارا آساني سان پنھنجي پروڊڪٽس کي OpenCL 3.0 ۾ اپ گريڊ ڪري سگھن ٿا، صرف خاص API ڪالن لاءِ پڇا ڳاڇا پروسيسنگ شامل ڪري، ۽ وقت سان گڏ ڪارڪردگي وڌائي.
  • OpenCL 3.0 وضاحت سان ترتيب ڏنل آهي ماحول، توسيع، ۽ SPIR-V عام وچولي نمائندگي جي وضاحتن سان، جيڪو پڻ استعمال ڪيو ويندو آهي Vulkan API. SPIR-V 1.3 وضاحتن لاءِ سپورٽ بنيادي OpenCL 3.0 ۾ اختياري خصوصيت جي طور تي شامل آھي. وچولي نمائندگي جي استعمال جي ذريعي اسپير-وي ڪمپيوٽنگ ڪور لاءِ سب گروپن سان گڏ آپريشنز لاءِ سپورٽ شامل ڪئي وئي آھي.
    فائنل OpenCL 3.0 وضاحتون شايع ٿيل

  • شامل ڪيل سپورٽ شامل ڪئي وئي ايڪسٽينشن لاءِ ڪم ڪرڻ لاءِ Asynchronous DMA آپريشنز (Asynchronous DMA)، سپورٽ ٿيل DSP-like چپس ۾ سڌو ميموري جي رسائي سان. Asynchronous DMA اهو ممڪن بڻائي ٿو DMA ٽرانزيڪشن کي استعمال ڪرڻ لاءِ عالمي ۽ مقامي ياداشت جي وچ ۾ ڊيٽا جي منتقلي لاءِ asynchronously، حسابن يا ٻين ڊيٽا جي منتقلي جي عملن سان متوازي ۾.
  • سي متوازي پروگرامنگ ايڪسٽينشن جي وضاحت کي اپڊيٽ ڪيو ويو آهي نسخو 3.0، ۽ C++ لاءِ OpenCL ٻوليءَ جي واڌارن جي ترقي کي ”C++ for OpenCL“ پروجيڪٽ جي حق ۾ بند ڪيو ويو. C++ OpenCL لاءِ هڪ ڪمپلر آهي جنهن تي ٻڌل آهي ڪلانگ/LLVM ۽ نشر ڪرڻ C++ ۽ OpenCL C kernels SPIR-V وچولي نمائندگي يا گھٽ-سطح واري مشين ڪوڊ ۾. براڊڪاسٽنگ ذريعي، SPIR-V SYCL ٽيمپليٽ لائبريري استعمال ڪندي C++ ايپليڪيشنن جي اسيمبلي کي پڻ منظم ڪري ٿو، جيڪا متوازي ايپليڪيشنن جي تخليق کي آسان بڻائي ٿي.

    فائنل OpenCL 3.0 وضاحتون شايع ٿيل

  • Vulkan API ذريعي OpenCL نشر ڪرڻ لاءِ هڪ ڪمپلر تجويز ڪيو ويو آهي clspv، جيڪو OpenCL ڪنيلز کي Vulkan SPIR-V نمائندگي ۾ تبديل ڪري ٿو، ۽ هڪ پرت clvk Vulkan جي چوٽي تي ڪم ڪرڻ لاء OpenCL API کي فعال ڪرڻ لاء.

    فائنل OpenCL 3.0 وضاحتون شايع ٿيل

جو ذريعو: opennet.ru

تبصرو شامل ڪريو