Vydanie PoCL 1.3, nezávislej implementácie štandardu OpenCL

K dispozícii je vydanie projektu PoCL 1.3 (Portable Computing Language OpenCL), ktorý vyvíja implementáciu štandardu OpenCL, ktorý je nezávislý od výrobcov grafických akcelerátorov a umožňuje použitie rôznych backendov na spúšťanie jadier OpenCL na rôznych typoch grafiky a centrálnych procesorov. . Kód projektu je distribuovaný pod licenciou MIT. Podporuje prevádzku na platformách X86_64, MIPS32, ARM v7, AMD HSA APU a rôznych špecializovaných procesoroch TTA (Transport Triggered Architecture) s architektúrou VLIW.

Implementácia kompilátora jadra OpenCL je postavená na báze LLVM a Clang sa používa ako frontend pre OpenCL C. Na zabezpečenie správnej prenosnosti a výkonu môže kompilátor jadra OpenCL generovať kombinované funkcie, ktoré môžu využívať rôzne hardvérové ​​prostriedky na paralelizáciu vykonávania kódu, ako sú VLIW, superskalár, SIMD, SIMT, viacjadrové a viacvláknové. K dispozícii je podpora ovládačov ICD
(Inštalovateľný klientsky ovládač). Existujú backendy na podporu prevádzky cez CPU, ASIP (TCE/TTA), GPU na báze architektúry HSA a NVIDIA GPU (CUDA).

Nová verzia pridáva podporu pre LLVM/Clang 8.0. Poskytuje podporu pre ICD (Installable Client Driver) na platforme macOS. Implementovaná schopnosť zostaviť pocl bez backendových ovládačov pre CPU. Pre HSA (Heterogeneous System Architecture) je poskytovaná počiatočná podpora pre kompiláciu ISA nad runtime HSA. Základňa kódu bola vyčistená, vrátane knižnice Vecmathlib bola odstránená a podpora starších verzií LLVM (menej ako 6.0) bola zastavená.

Zdroj: opennet.ru

Pridať komentár