OpenCL 3.0 lõplikud spetsifikatsioonid on juba välja antud

Mõni kuu tagasi jagasime siin ajaveebis uudised - OpenCL 3.0 arenduse väljaandmine Khronose mure (Vastutab OpenGL, Vulkan ja OpenCL perekonna spetsifikatsioonide väljatöötamise eest).

Ja see oli alles hiljuti välja kuulutatud lõplike OpenCL 3.0 spetsifikatsioonide väljaandmine, määratledes C-keele API-d ja laiendused, et korraldada mitmetuumaliste paralleelarvutuste tegemist mitmetuumaliste protsessorite, GPU-de, FPGA-de, DSP-de ja muude spetsiaalsete kiipide abil, alates superarvutites ja pilveserverites kasutatavatest kiipidest kuni kiibideni, mida võib leida mobiilseadmetest ja integreeritud tehnoloogiast.

Samal ajal vabastati avatud lähtekoodiga OpenCL SDK koos tööriistade, näidete, dokumentatsiooni, päisefailide, linkidega C ++ ja C teekidele OpenCL 3.0-ga ühilduvate rakenduste arendamiseks.

Esitatakse ka Clangi kompilaatoril põhinevat OpenCL 3.0 algset rakendust, mis on LLVMi põhipaketti kaasamiseks vastastikuse eksperdihinnangu etapis. Standardile on kaasa aidanud sellised ettevõtted nagu IBM, NVIDIA, Intel, AMD, Apple, ARM, Electronic Arts, Qualcomm, Texas Instruments ja Toshiba.

Täna on Khronos® OpenCL ™ töörühmal hea meel teatada lõplike OpenCL 3.0 spetsifikatsioonide väljaandmisest, sealhulgas uuest ühtsest OpenCL C 3.0 keelespetsifikatsioonist koos Khronos OpenCL SDK varase esialgse väljaandmisega, et arendajad saaksid kiiresti üles tõusta. kiirendada OpenCL-iga.

OpenCL 3.0 peamised omadused

OpenCL 3.0 API nüüd hõlmab kõiki OpenCL-i versioone (1.2, 2,x), esitamata eraldi spetsifikatsioone iga versiooni jaoks.

OpenCL 3.0 pakub võimalust laiendada põhifunktsionaalsust, integreerides täiendavaid spetsifikatsioone, mis kattuvad valikute näol, blokeerimata OpenCL 1.2 / 2.X monoliitset olemust.

Ainult funktsionaalsus, mis vastab OpenCL 1.2 on kuulutatud kohustuslikuksja kõik dokumendis pakutavad funktsioonid OpenCL 2.x spetsifikatsioone nimetatakse valikulisteks.

See lähenemisviis lihtsustab OpenCL 3.0-ga ühilduvate spetsiaalsete rakenduste loomist ja laiendab seadmete valikut, milles saab OpenCL 3.0-d kasutada.

Nt Tootjad saavad rakendada OpenCL 3.0 tuge ilma konkreetsete OpenCL 2.x funktsioonide juurutamiseta. Valikuliste keelefunktsioonide kasutamiseks on OpenCL 3.0-sse lisatud testitaotlussüsteem, et hinnata üksikute API-elementide ja spetsiaalsete makrode tuge.

Varem välja antud spetsifikatsioonidega ühendamine muudab rakenduste OpenCL 3.0-sse tõlkimise lihtsaks. OpenCL 1.2 rakendused saavad ilma muudatusteta töötada seadmetes, mis toetavad OpenCL 3.0.

rakendused Ka OpenCL 2.x ei nõua koodi muutmist, kuid kui OpenCL 3.0 keskkond pakub vajalikku funktsionaalsust (tulevase kaasaskantavuse huvides soovitatakse OpenCL 2.x rakendustel lisada testpäringuid, et hinnata ühilduvust kasutatavate OpenCL 2.x funktsioonidega).

Draiverite arendajad, kellel on OpenCL-i rakendused, saavad oma tooteid hõlpsasti uuendada versioonile OpenCL 3.0, lisades teatud API-kõnede jaoks ainult päringute töötlemise ja aja jooksul järk-järgult funktsionaalsust suurendades.

OpenCL 3.0 spetsifikatsioon on viidud vastavusse keskkonna, laienduste ja spetsifikatsioonidega üldise vaheühendi SPIR-V, mida kasutatakse ka Vulkani API-s. SPIR-V 1.3 spetsifikatsiooni tugi on OpenCL 3.0 põhivarustuses lisavarustuses. Alamrühmadega tehtavate operatsioonide tugi on lisatud arvutussüdamike SPIR-V vaheesituse abil.

peale selle lisatud laienduse tugi DMA-toimingute tegemiseks Asünkroonne toetab DSP-laadseid DMA-kiipe.

Asünkroonne DMA võimaldab kasutada DMA-tehinguid andmete ülekandmiseks globaalse ja kohaliku mälu vahel asünkroonselt, paralleelselt käimasolevate arvutuste või muude andmeedastustega.

Paralleelsete programmeerimislaiendite spetsifikatsioon keele jaoks C on värskendatud versioonile 3.0 ja C ++ jaoks mõeldud OpenCL-i keelelaiendite väljatöötamine lõpetatakse projekti "C ++ for OpenCL" kasuks.

OpenCL-i tõlkimiseks Vulkani API kaudu pakutakse välja CLSPV kompilaator, mis teisendab OpenCL-i tuumad Vulkani SPIR-V esituseks ja clvk-kihi, et tagada OpenCL-i API töötamine Vulkani peal.

allikas: https://www.khronos.org/


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutav: AB Internet Networks 2008 SL
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.