OpenCL 3.0 galīgās specifikācijas jau ir izlaistas

Pirms dažiem mēnešiem mēs dalījāmies šeit emuārā ziņas par gada OpenCL 3.0 izstrādes izlaišana Khronos bažas (Atbildīgs par OpenGL, Vulkan un OpenCL saimes specifikāciju izstrādi).

Un tas bija vēl nesen paziņots par galīgo OpenCL 3.0 specifikāciju izlaišanu, nosakot API un C valodas paplašinājumus, lai organizētu daudzplatformu paralēlu skaitļošanu, izmantojot daudzkodolu procesorus, GPU, FPGA, DSP un citas specializētas mikroshēmas, sākot no tām, kuras izmanto superdatoros un mākoņu serveros, līdz mikroshēmām, kuras var atrast mobilajās ierīcēs un integrētajās tehnoloģijās.

Tajā pašā laikā tika izlaists atvērtā koda OpenCL SDK ar rīkiem, piemēriem, dokumentāciju, galvenes failiem, saitēm C ++ un C bibliotēkām, lai izstrādātu ar OpenCL 3.0 saderīgas lietojumprogrammas.

Tiek parādīta arī sākotnējā OpenCL 3.0 ieviešana, kuras pamatā ir kompilators Clang, kas ir salīdzinošās pārskatīšanas stadijā, lai to iekļautu galvenajā LLVM paketē. Standarta izveidē piedalījušies tādi uzņēmumi kā IBM, NVIDIA, Intel, AMD, Apple, ARM, Electronic Arts, Qualcomm, Texas Instruments un Toshiba.

Šodien Khronos® OpenCL ™ darba grupa ar prieku paziņo par pabeigto OpenCL 3.0 specifikāciju izlaišanu, ieskaitot jaunu vienotu OpenCL C 3.0 valodas specifikāciju, kā arī ar agrīnu Khronos OpenCL SDK sākotnēju izlaišanu, lai izstrādātāji varētu ātri piecelties. paātrināt ar OpenCL.

OpenCL 3.0 galvenās funkcijas

Tagad OpenCL 3.0 API aptver visas OpenCL versijas (1.2, 2,x), nenorādot atsevišķas specifikācijas katrai versijai.

OpenCL 3.0 piedāvā iespēju paplašināt pamatfunkcionalitāti, integrējot papildu specifikācijas, kas opciju veidā pārklāsies, nebloķējot OpenCL 1.2 / 2.X monolīto raksturu.

Tikai funkcionalitāte, kas atbilst OpenCL 1.2 tiek pasludināts par obligātuun visas funkcijas, kas piedāvātas OpenCL 2.x specifikācijas tiek sauktas par neobligātām.

Šī pieeja vienkāršos specializētu ieviešanu izveidi, kas ir saderīgi ar OpenCL 3.0, un paplašinās ierīču klāstu, kurās var izmantot OpenCL 3.0.

Piemēram Ražotāji var ieviest atbalstu OpenCL 3.0, neieviešot īpašas OpenCL 2.x funkcijas. Lai piekļūtu izvēles valodas funkcijām, OpenCL 3.0 ir pievienota testa pieprasījumu sistēma, lai novērtētu atbalstu atsevišķiem API elementiem, kā arī īpašiem makro.

Apvienošana ar iepriekš izlaistajām specifikācijām ļauj ērti tulkot lietojumprogrammas uz OpenCL 3.0. OpenCL 1.2 lietojumprogrammas bez izmaiņām varēs darboties ierīcēs, kas atbalsta OpenCL 3.0.

Pieteikumi OpenCL 2.x arī neprasa koda izmaiņas, bet, ja OpenCL 3.0 vide nodrošina nepieciešamo funkcionalitāti (nākotnes pārnesamībai, OpenCL 2.x lietojumprogrammas tiek aicinātas pievienot testa vaicājumus, lai novērtētu saderību ar izmantotajām OpenCL 2.x funkcijām).

Draiveru izstrādātāji ar OpenCL ieviešanu var viegli jaunināt savus produktus uz OpenCL 3.0, pievienojot tikai pieprasījumu apstrādi noteiktiem API zvaniem un laika gaitā pakāpeniski palielinot funkcionalitāti.

OpenCL 3.0 specifikācija ir saskaņota ar vidi, paplašinājumiem un specifikācijām starpposma SPIR-V, kas tiek izmantots arī Vulkan API. SPIR-V 1.3 specifikācijas atbalsts ir iekļauts galvenajā OpenCL 3.0 kā izvēles līdzeklis. Atbalsts darbībām ar apakšgrupām ir pievienots, skaitļošanas kodoliem izmantojot starpposmu SPIR-V.

Bez tam pievienots atbalsts paplašinājumam DMA darbību veikšanai Asinhroni tiek atbalstīti DSP līdzīgās DMA mikroshēmās.

Asinhronā DMA ļauj asinhroni izmantot datu pārraides starp globālo un lokālo atmiņu paralēli notiekošajiem aprēķiniem vai citām datu pārsūtīšanas iespējām.

Paralēlu programmēšanas paplašinājumu specifikācija par valodu C ir atjaunināts līdz 3.0 versijai un C ++ valodas OpenCL valodas paplašinājumu izstrāde tiek pārtraukta par labu projektam "C ++ for OpenCL".

Lai tulkotu OpenCL, izmantojot Vulkan API, tiek piedāvāts clspv kompilators, kas pārveido OpenCL kodolus par Vulkan SPIR-V attēlojumu un clvk slāni, lai nodrošinātu, ka OpenCL API darbojas virs Vulkan.

Fuente: https://www.khronos.org/


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: AB Internet Networks 2008 SL
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.