Liberigo de PoCL 1.3, sendependa efektivigo de la OpenCL-normo

Estas disponebla eldono de la projekto PoCL 1.3 (Portable Computing Language OpenCL), kiu disvolvas efektivigon de la OpenCL-normo kiu estas sendependa de grafikaj akceliloj kaj permesas la uzon de diversaj backends por ekzekuti OpenCL-kernojn sur malsamaj specoj de grafikaĵoj kaj centraj procesoroj. . La projektkodo estas distribuita sub la MIT-licenco. Subtenas operacion sur X86_64, MIPS32, ARM v7, AMD HSA APU-platformoj kaj diversaj specialigitaj TTA (Transport Triggered Architecture) procesoroj kun VLIW-arkitekturo.

La efektivigo de la OpenCL-kernkompililo estas konstruita surbaze de LLVM, kaj Clang estas utiligita kiel la antaŭa finaĵo por OpenCL C. Por certigi bonordan porteblon kaj efikecon, la OpenCL-kernkompililo povas generi kombinaĵfunkciojn kiuj povas uzi diversajn hardvarresursojn por paraleligi kodekzekuton, kiel ekzemple VLIW, superskalar, SIMD, SIMT, multi-kern kaj multi-fadenadon. ICD-ŝoforo subteno havebla
(Instalebla Klienta Ŝoforo). Estas backends por subteni operacion per CPU, ASIP (TCE/TTA), GPU bazita sur HSA-arkitekturo kaj NVIDIA GPU (CUDA).

La nova versio aldonas subtenon por LLVM/Clang 8.0. Provizas subtenon por ICD (Installable Client Driver) sur la macOS-platformo. Efektivigis la kapablon konstrui pocl sen backend-ŝoforoj por la CPU. Por HSA (Heterogeneous System Architecture), komenca subteno por kompilado de ISAoj aldone al la HSA rultempo estas disponigita. La kodbazo estis purigita, inkluzive de la Vecmathlib-biblioteko estis forigita kaj subteno por pli malnovaj versioj de LLVM (malpli ol 6.0) estis ĉesigita.

fonto: opennet.ru

Aldoni komenton