OpenCL 3.0 azken zehaztapenak argitaratu dira

Khronos kezka, OpenGL, Vulkan eta OpenCL familiaren zehaztapenak garatzeko arduraduna, iragarri behin betiko zehaztapenak argitaratzean OpenCL 3.0, C lengoaiaren APIak eta luzapenak definituz plataforma anitzeko konputazio paraleloa antolatzeko nukleo anitzeko CPUak, GPUak, FPGAak, DSPak eta beste txip espezializatu batzuk erabiliz, superordenagailuetan eta hodeiko zerbitzarietan erabiltzen direnetatik hasi eta gailu mugikorretan aurki daitezkeen txipetaraino. integratutako teknologia. OpenCL estandarra guztiz irekia da eta ez du lizentzia kuotarik eskatzen.

Aldi berean argitaratuko ireki OpenCL SDK tresnak, adibideak, dokumentazioa, goiburuko fitxategiak, C++ loturak eta C liburutegiak OpenCL 3.0-rekin bateragarriak diren aplikazioak garatzeko. Gainera ordezkatuta OpenCL 3.0-ren hasierako inplementazioa Clang konpilatzailean oinarrituta, LLVM-ren egitura nagusian sartzeko adabakiak berrikusteko fasean dagoena. IBM, NVIDIA, Intel, AMD, Apple, ARM, Electronic Arts, Qualcomm, Texas Instruments eta Toshiba bezalako enpresek hartu zuten parte estandarraren lanetan.

OpenCL 3.0 azken zehaztapenak argitaratu dira

Aipagarriena Ezaugarriak OpenCL 3.0:

  • OpenCL 3.0 APIak orain OpenCL-ren bertsio guztiak hartzen ditu (1.2, 2.x), bertsio bakoitzaren zehaztapen bereiziak eman gabe. OpenCL 3.0-k oinarrizko funtzionalitateak zabaltzeko gaitasuna eskaintzen du, aukera moduan geruzatuta egongo diren zehaztapen gehigarrien integrazioaren bidez, OpenCL 1.2/2.X-en izaera monolitikoa blokeatu gabe.
  • OpenCL 1.2-rekin bat datozen funtzionalitateak soilik derrigorrezkotzat jotzen dira, eta OpenCL 2.x zehaztapenetan proposatzen diren funtzio guztiak hautazko gisa sailkatzen dira. Planteamendu horri esker, OpenCL 3.0-rekin bateragarriak diren inplementazio pertsonalizatuak sortzea erraztuko da, eta OpenCL 3.0 erabil daitekeen gailu sorta zabalduko du. Adibidez, fabrikatzaileek OpenCL 3.0 euskarria ezar dezakete OpenCL 2.x ezaugarri zehatzik ezarri gabe. Aukerako hizkuntza-eginbideetara sartzeko, OpenCL 3.0-k proba-kontsulten sistema bat gehitu du, API elementu indibidualen euskarria ebaluatzeko aukera ematen duena, baita makro bereziak ere.
  • Aurretik kaleratutako zehaztapenekin bateratzeak errazago egiten du aplikazioak OpenCL 3.0ra migratzea. OpenCL 1.2 aplikazioak OpenCL 3.0 onartzen duten gailuetan exekutatu ahal izango dira aldaketarik gabe. OpenCL 2.x aplikazioek ere ez dute kode aldaketarik beharko, betiere OpenCL 3.0 inguruneak beharrezko funtzionaltasuna eskaintzen badu (etorkizuneko eramangarritasuna bermatzeko, OpenCL 2.x aplikazioek proba-kontsultak gehitzea gomendatzen da OpenCL 2.x funtzioen laguntza ebaluatzeko. erabiltzen ari da). OpenCL inplementazioak dituzten gidarien garatzaileek beren produktuak OpenCL 3.0-ra erraz berritu ditzakete, API dei jakin batzuetarako kontsulta-prozesamendua soilik gehituz eta pixkanaka funtzionaltasuna handituz joan ahala.
  • OpenCL 3.0 zehaztapena SPIR-V bitarteko irudikapen generikoaren ingurunearekin, luzapenekin eta zehaztapenekin bat dator, Vulkan APIak ere erabiltzen duena. SPIR-V 1.3 zehaztapenaren euskarria OpenCL 3.0 oinarrian sartzen da aukerako eginbide gisa. Tarteko irudikapen baten erabileraren bidez SPIR-V Azpitaldeekin eragiketen euskarria gehitu da konputazio nukleoetarako.
    OpenCL 3.0 azken zehaztapenak argitaratu dira

  • DMA eragiketa asinkronoak (Asynchronous DMA) egiteko luzapen baterako euskarria gehitu da, memoria zuzeneko sarbidea duten DSP antzeko txipetan onartzen dena. DMA asinkronoak DMA transakzioak erabiltzea ahalbidetzen du memoria globalaren eta tokikoaren artean datuak transferitzeko modu asinkronoan, kalkuluekin edo beste datu-transferentzia-eragiketekin batera.
  • C Parallel Programming Extensions zehaztapena eguneratu da 3.0. bertsioa, eta C++-rako OpenCL hizkuntza-luzapenen garapena eten egin zen "C++ for OpenCL" proiektuaren alde. C++ for OpenCL Clang/LLVM-en oinarritutako konpilatzailea da eta emisioa C++ eta OpenCL C kernelak SPIR-V bitarteko irudikapenean edo behe-mailako makina-kodean. Emisioaren bidez, SPIR-V-k C++ aplikazioen muntaketa ere antolatzen du SYCL txantiloi liburutegia erabiliz, eta horrek aplikazio paraleloen sorrera errazten du.

    OpenCL 3.0 azken zehaztapenak argitaratu dira

  • Vulkan APIaren bidez OpenCL igortzeko konpilatzaile bat proposatu da clspv, OpenCL nukleoak Vulkan SPIR-V irudikapena eta geruza bihurtzen dituena clvk OpenCL APIa Vulkan-en gainean funtziona dezan gaitzeko.

    OpenCL 3.0 azken zehaztapenak argitaratu dira

Iturria: opennet.ru

Gehitu iruzkin berria