Fa'ai'uga OpenCL 3.0 fa'amatalaga fa'asalalau

O le popolega Khronos, e nafa ma le atinaʻeina o faʻamatalaga OpenGL, Vulkan ma OpenCL aiga, faasilasila i luga o le lolomiina o faʻamatalaga mulimuli OpenCL 3.0, faʻamalamalamaina API ma faʻaopoopoga o le gagana C mo le faʻatulagaina o fesoʻotaʻiga faʻasolosolo faʻatasi e faʻaaoga ai PPU tele, GPU, FPGA, DSP ma isi meataalo faʻapitoa, mai i latou e faʻaaogaina i supercomputers ma cloud servers i tupe meataalo e mafai ona maua i masini feaveaʻi ma. tekinolosi fausia-i totonu. O le OpenCL standard o loʻo tatala atoatoa ma e le manaʻomia ni totogifuapauina laisene.

Faʻatasi lomia tatala OpenCL SDK ma meafaigaluega, faʻataʻitaʻiga, faʻamaumauga, faila faila, C++ bindings ma C faletusi mo le atinaʻeina o talosaga e fetaui ma OpenCL 3.0. E lē gata i lea faʻatusalia e uluai faʻatinoga o OpenCL 3.0 faʻavae i luga o le Clang compiler, lea o loʻo i le tulaga o le toe iloiloina o patches mo le faʻaofiina i totonu o le fausaga autu o le LLVM. Kamupani e pei o IBM, NVIDIA, Intel, AMD, Apple, ARM, Electronic Arts, Qualcomm, Texas Instruments ma Toshiba sa auai i le galuega i luga o le tulaga masani.

Fa'ai'uga OpenCL 3.0 fa'amatalaga fa'asalalau

E sili ona iloga особенности OpenCL 3.0:

  • O le OpenCL 3.0 API o loʻo aofia uma ai faʻasalalauga o OpenCL (1.2, 2.x), e aunoa ma le tuʻuina atu o faʻamatalaga tuʻufaʻatasia mo faʻasalalauga taʻitasi. OpenCL 3.0 e maua ai le malosi e faʻalautele ai galuega autu e ala i le tuʻufaʻatasia o faʻamatalaga faʻaopoopo o le a faʻapipiʻiina i foliga o filifiliga e aunoa ma le polokaina o le natura monolithic o OpenCL 1.2 / 2.X.
  • Na'o galuega fa'atino e fa'atatau i le OpenCL 1.2 e fa'atulafonoina, ma o vaega uma o lo'o fa'atu mai ile fa'amatalaga OpenCL 2.x e fa'avasegaina e fai ma filifiliga. O lenei faiga o le a faafaigofieina ai le fatuina o faatinoga masani e fetaui ma OpenCL 3.0, ma o le a faʻalauteleina le tele o masini e mafai ona faʻaogaina ai OpenCL 3.0. Mo se faʻataʻitaʻiga, e mafai e tagata gaosi oloa ona faʻatinoina le OpenCL 3.0 lagolago e aunoa ma le faʻatinoina o faʻamatalaga patino OpenCL 2.x. Ina ia maua le avanoa i le gagana faʻapitoa, OpenCL 3.0 ua faʻaopoopoina se faiga o suʻega suʻega e mafai ai e oe ona iloilo le lagolago a elemene API taʻitasi, faʻapea foʻi ma macros faʻapitoa.
  • O le tu'ufa'atasia ma fa'amatalaga na tu'uina atu muamua e fa'afaigofie ai ona femalaga'i talosaga ile OpenCL 3.0. OpenCL 1.2 talosaga o le a mafai ona tamoʻe i masini e lagolagoina OpenCL 3.0 e aunoa ma se suiga. OpenCL 2.x talosaga o le a le manaʻomia foi suiga code, pe a fai o le OpenCL 3.0 siosiomaga e maua ai galuega manaʻomia (ina ia mautinoa le feaveaʻi i le lumanaʻi, OpenCL 2.x talosaga e fautuaina e faʻaopoopo suʻega suʻega e iloilo ai le lagolago mo le OpenCL 2.x foliga faʻaaogaina). E faigofie ona fa'afou a latou oloa ile OpenCL 3.0, fa'aopoopo na'o le fa'atinoina o fesili mo nisi vala'au API, ma fa'atupula'ia le fa'atinoga ile taimi.
  • O le faʻamatalaga OpenCL 3.0 e faʻaogaina ma le siosiomaga, faʻaopoopoga, ma faʻamatalaga o le SPIR-V generic intermediate representation, lea e faʻaaogaina foi e le Vulkan API. Lagolago mo le SPIR-V 1.3 faʻamatalaga o loʻo aofia i totonu o le OpenCL 3.0 autu o se mea e filifili ai. E ala i le faʻaaogaina o se sui faʻapitoa SPIR-V lagolago mo fa'agaioiga fa'atasi ma vaega laiti ua fa'aopoopoina mo le fa'aputuga o 'au.
    Fa'ai'uga OpenCL 3.0 fa'amatalaga fa'asalalau

  • Fa'aopoopo le lagolago mo se fa'aopoopoga mo le fa'atinoina o fa'agaioiga DMA asynchronous (Asynchronous DMA), lagolagoina i tupe meataalo pei o le DSP fa'atasi ai ma le manatua sa'o. Asynchronous DMA e mafai ai ona fa'aogaina fefa'ataua'iga DMA e fesiita'i ai fa'amatalaga i le va o le lalolagi ma le fa'alotoifale fa'aleaogaina fa'atasi, fa'atasi ma fa'atatauga po'o isi fa'agaioiga fesiitaiga.
  • O le C Parallel Programming Extensions specifications ua toe faafou i lomiga 3.0, ma le atinaʻeina o faʻaopoopoga gagana OpenCL mo C ++ na faʻamutaina mo le "C++ mo OpenCL" poloketi. C ++ mo OpenCL o se faʻapipiʻi faʻavae i luga o Clang / LLVM ma fa'asalalauga C ++ ma OpenCL C fatu i totonu o le SPIR-V faʻataʻitaʻiga vaeluaga poʻo le numera maualalo o masini. E ala i faʻasalalauga, e faʻapipiʻiina foi e le SPIR-V le faʻapotopotoga o talosaga C ++ e faʻaaoga ai le faletusi faʻataʻitaʻiga SYCL, lea e faʻafaigofie ai le fausiaina o talosaga tutusa.

    Fa'ai'uga OpenCL 3.0 fa'amatalaga fa'asalalau

  • Ua fa'atūina se tu'ufa'atasiga mo le fa'asalalauga OpenCL e ala i le Vulkan API clspv, lea e liua ai fatu OpenCL i se Vulkan SPIR-V sui, ma se laulau clvk e mafai ai e le OpenCL API ona galue i luga o Vulkan.

    Fa'ai'uga OpenCL 3.0 fa'amatalaga fa'asalalau

puna: opennet.ru

Faaopoopo i ai se faamatalaga