PoCL 1.3 väljalase, OpenCL-i standardi sõltumatu rakendus

Saadaval on projekti PoCL 1.3 (Portable Computing Language OpenCL) väljalase, mis arendab OpenCL-i standardi juurutamist, mis on graafikakiirendite tootjatest sõltumatu ja võimaldab kasutada erinevaid taustaprogramme OpenCL-i tuumade käivitamiseks erinevat tüüpi graafikatel ja keskprotsessoritel. . Projekti koodi levitatakse MIT litsentsi all. Toetab tööd X86_64, MIPS32, ARM v7, AMD HSA APU platvormidel ja erinevatel spetsiaalsetel VLIW arhitektuuriga TTA (Transport Triggered Architecture) protsessoritel.

OpenCL-i kerneli kompilaatori juurutamine on üles ehitatud LLVM-i baasil ja Clangi kasutatakse OpenCL C esiotsana. Nõuetekohase teisaldatavuse ja jõudluse tagamiseks saab OpenCL-i kerneli kompilaator genereerida kombineeritud funktsioone, mis võivad koodi täitmise paralleelseerimiseks kasutada erinevaid riistvararessursse, nagu VLIW, superskalaar, SIMD, SIMT, mitmetuumaline ja mitme lõimega töötlemine. Saadaval on ICD draiveri tugi
(Installeeritav kliendidraiver). CPU, ASIP (TCE/TTA), HSA arhitektuuril põhineva GPU ja NVIDIA GPU (CUDA) kaudu toimimise toetamiseks on taustaprogrammid.

Uus versioon lisab LLVM/Clang 8.0 toe. Pakub tuge ICD-le (Installable Client Driver) macOS-i platvormil. Rakendatud võime luua pocl ilma protsessori jaoks taustadraiveriteta. HSA (heterogeense süsteemiarhitektuuri) jaoks pakutakse esmast tuge ISA-de kompileerimiseks HSA käitusajal. Koodibaas puhastati, sealhulgas eemaldati Vecmathlibi teek ja LLVM-i vanemate versioonide (alla 6.0) tugi peatati.

Allikas: opennet.ru

Lisa kommentaar