Speċifikazzjonijiet finali OpenCL 3.0 ippubblikati

It-tħassib Khronos, responsabbli għall-iżvilupp tal-ispeċifikazzjonijiet tal-familja OpenGL, Vulkan u OpenCL, ħabbar dwar il-pubblikazzjoni tal-ispeċifikazzjonijiet finali OpenCL 3.0, tiddefinixxi l-APIs u l-estensjonijiet tal-lingwa C għall-organizzazzjoni ta’ kompjuters paralleli cross-platform bl-użu ta’ CPUs multi-core, GPUs, FPGAs, DSPs u ċipep oħra speċjalizzati, minn dawk użati f’superkompjuters u servers tas-sħab għal ċipep li jistgħu jinstabu f’apparat mobbli u teknoloġija integrata. L-istandard OpenCL huwa kompletament miftuħ u ma jeħtieġx miżati tal-liċenzja.

Fl-istess ħin ippubblikat tiftaħ OpenCL SDK b'għodod, eżempji, dokumentazzjoni, fajls header, rbit C++ u libreriji C għall-iżvilupp ta 'applikazzjonijiet kompatibbli ma' OpenCL 3.0. Ukoll ippreżentata implimentazzjoni inizjali ta 'OpenCL 3.0 ibbażata fuq il-kompilatur Clang, li jinsab fl-istadju ta' reviżjoni tal-garża għall-inklużjoni fl-istruttura ewlenija ta 'LLVM. Kumpaniji bħal IBM, NVIDIA, Intel, AMD, Apple, ARM, Electronic Arts, Qualcomm, Texas Instruments u Toshiba ħadu sehem fix-xogħol fuq l-istandard.

Speċifikazzjonijiet finali OpenCL 3.0 ippubblikati

L-aktar notevoli Karatteristiċi OpenCL 3.0:

  • L-API OpenCL 3.0 issa tkopri l-verżjonijiet kollha ta 'OpenCL (1.2, 2.x), mingħajr ma tipprovdi speċifikazzjonijiet separati għal kull verżjoni. OpenCL 3.0 jipprovdi l-abbiltà li testendi l-funzjonalità ewlenija permezz tal-integrazzjoni ta 'speċifikazzjonijiet addizzjonali li se jkunu f'saffi fil-forma ta' għażliet mingħajr ma jimblokka n-natura monolitika ta 'OpenCL 1.2/2.X.
  • Il-funzjonalità biss li tikkonforma ma' OpenCL 1.2 hija ddikjarata obbligatorja, u l-karatteristiċi kollha proposti fl-ispeċifikazzjonijiet OpenCL 2.x huma kklassifikati bħala fakultattivi. Dan l-approċċ se jagħmilha aktar faċli biex jinħolqu implimentazzjonijiet personalizzati li huma kompatibbli ma 'OpenCL 3.0, u se jespandi l-firxa ta' apparati li fuqhom OpenCL 3.0 jista 'jintuża. Pereżempju, il-manifatturi jistgħu jimplimentaw l-appoġġ ta 'OpenCL 3.0 mingħajr ma jimplimentaw karatteristiċi speċifiċi ta' OpenCL 2.x. Biex taċċessa karatteristiċi tal-lingwa mhux obbligatorji, OpenCL 3.0 żied sistema ta 'mistoqsijiet tat-test li tippermettilek tevalwa l-appoġġ ta' elementi individwali tal-API, kif ukoll macros speċjali.
  • L-unifikazzjoni bi speċifikazzjonijiet rilaxxati qabel tagħmilha aktar faċli li l-applikazzjonijiet jiġu migrati għal OpenCL 3.0. L-applikazzjonijiet OpenCL 1.2 se jkunu jistgħu jaħdmu fuq apparati li jappoġġjaw OpenCL 3.0 mingħajr modifika. L-applikazzjonijiet OpenCL 2.x lanqas se jeħtieġu bidliet fil-kodiċi, sakemm l-ambjent OpenCL 3.0 jipprovdi l-funzjonalità meħtieġa (biex tiġi żgurata l-portabbiltà futura, l-applikazzjonijiet OpenCL 2.x huma rrakkomandati li jżidu mistoqsijiet tat-test biex jevalwaw l-appoġġ għall-karatteristiċi OpenCL 2.x qed tintuża). L-iżviluppaturi tas-sewwieqa b'implimentazzjonijiet ta 'OpenCL jistgħu faċilment jaġġornaw il-prodotti tagħhom għal OpenCL 3.0, u jżidu biss l-ipproċessar tal-mistoqsijiet għal ċerti sejħiet API, u gradwalment iżidu l-funzjonalità maż-żmien.
  • L-ispeċifikazzjoni OpenCL 3.0 hija allinjata mal-ambjent, l-estensjonijiet u l-ispeċifikazzjonijiet tar-rappreżentazzjoni intermedja ġenerika SPIR-V, li tintuża wkoll mill-API Vulkan. L-appoġġ għall-ispeċifikazzjoni SPIR-V 1.3 huwa inkluż fil-qalba OpenCL 3.0 bħala karatteristika fakultattiva. Permezz ta' l-użu ta' rappreżentazzjoni intermedja SPIR-V appoġġ għal operazzjonijiet b'sottogruppi ġie miżjud għall-qlub tal-kompjuters.
    Speċifikazzjonijiet finali OpenCL 3.0 ippubblikati

  • Appoġġ miżjud għal estensjoni għat-twettiq ta 'operazzjonijiet DMA asinkroniċi (Asynchronous DMA), appoġġjati f'ċipep bħal DSP b'aċċess dirett għall-memorja. DMA asinkroniku jagħmilha possibbli li jintużaw tranżazzjonijiet DMA biex tittrasferixxi data bejn memorja globali u lokali b'mod asinkroniku, b'mod parallel ma 'kalkoli jew operazzjonijiet oħra ta' trasferiment tad-data.
  • L-ispeċifikazzjoni tal-C Parallel Programming Extensions ġiet aġġornata għal verżjoni 3.0, u l-iżvilupp tal-estensjonijiet tal-lingwa OpenCL għal C++ twaqqaf favur il-proġett "C++ for OpenCL". C++ għal OpenCL huwa kompilatur ibbażat fuq Clang/LLVM u xandir C++ u OpenCL C kernels f'rappreżentazzjoni intermedja SPIR-V jew kodiċi tal-magna ta 'livell baxx. Permezz tax-xandir, SPIR-V jorganizza wkoll l-assemblaġġ ta 'applikazzjonijiet C++ bl-użu tal-librerija tal-mudelli SYCL, li tissimplifika l-ħolqien ta' applikazzjonijiet paralleli.

    Speċifikazzjonijiet finali OpenCL 3.0 ippubblikati

  • Ġie propost kompilatur għax-xandir tal-OpenCL permezz tal-API Vulkan clspv, li tikkonverti qlub OpenCL għal rappreżentazzjoni Vulkan SPIR-V, u saff clvk biex l-API OpenCL taħdem fuq Vulkan.

    Speċifikazzjonijiet finali OpenCL 3.0 ippubblikati

Sors: opennet.ru

Żid kumment