Release van PoCL 1.3, een onafhankelijke implementatie van de OpenCL-standaard

Er is een release van het PoCL 1.3-project (Portable Computing Language OpenCL) beschikbaar, die een implementatie van de OpenCL-standaard ontwikkelt die onafhankelijk is van fabrikanten van grafische versnellers en het gebruik van verschillende backends mogelijk maakt voor het uitvoeren van OpenCL-kernels op verschillende soorten grafische afbeeldingen en centrale processors . De projectcode wordt gedistribueerd onder de MIT-licentie. Ondersteunt werk op X86_64, MIPS32, ARM v7, AMD HSA APU-platforms en verschillende gespecialiseerde TTA-processors (Transport Triggered Architecture) met VLIW-architectuur.

De implementatie van de OpenCL-kernelcompiler is gebouwd op basis van LLVM en Clang wordt gebruikt als front-end voor OpenCL C. Om goede draagbaarheid en prestaties te garanderen, kan de OpenCL-kernelcompiler combinatiefuncties genereren die verschillende hardwarebronnen kunnen gebruiken om de uitvoering van code te parallelliseren, zoals VLIW, superscalar, SIMD, SIMT, multi-core en multi-threading. Ondersteuning voor ICD-stuurprogramma's beschikbaar
(Installeerbaar clientstuurprogramma). Er zijn backends ter ondersteuning van de werking via CPU, ASIP (TCE/TTA), GPU op basis van HSA-architectuur en NVIDIA GPU (CUDA).

De nieuwe versie voegt ondersteuning toe voor LLVM/Clang 8.0. Biedt ondersteuning voor ICD (Installable Client Driver) op het macOS-platform. De mogelijkheid geïmplementeerd om pocl te bouwen zonder backend-stuurprogramma's voor de CPU. Voor HSA (Heterogeneous System Architecture) wordt initiële ondersteuning geboden voor het compileren van ISA's bovenop de HSA-runtime. De codebasis is opgeschoond, inclusief de Vecmathlib-bibliotheek is verwijderd en de ondersteuning voor oudere versies van LLVM (minder dan 6.0) is gestopt.

Bron: opennet.ru

Voeg een reactie