Utgivelse av PoCL 1.4, en uavhengig implementering av OpenCL-standarden

Tilgjengelig prosjektutgivelse PoCL 1.4 (Portable Computing Language OpenCL), som utvikler en implementering av OpenCL-standarden som er uavhengig av produsenter av grafikkakseleratorer og tillater bruk av ulike backends for å utføre OpenCL-kjerner på ulike typer grafikk og sentrale prosessorer. Prosjektkode distribuert av under MIT-lisens. Støtter arbeid på X86_64, MIPS32, ARM v7, AMD HSA APU-plattformer og forskjellige spesialiserte TTA-prosessorer (Transportutløst arkitektur) med arkitektur VLIW.

Implementeringen av OpenCL-kjernekompilatoren er bygget på grunnlag av LLVM, og Clang brukes som frontend for OpenCL C. For å sikre riktig portabilitet og ytelse, kan OpenCL-kjernekompilatoren generere kombinasjonsfunksjoner som kan bruke ulike maskinvareressurser for å parallellisere kodekjøring, slik som VLIW, superscalar, SIMD, SIMT, multi-core og multi-threading. ICD-driverstøtte tilgjengelig
(Installerbar klientdriver). Det er backends for å sikre drift via CPU, ASIP (TCE/TTA), GPU-basert arkitektur HSA og NVIDIA GPU (CUDA).

В ny verson:

  • Lagt til støtte LLVM/Clang 9.0. Støtte for LLVM-versjoner eldre enn 6.0 er avviklet.
  • Forbedret CPU-basert implementering av mellomkoderepresentasjoner SPIR и SPIR-V (brukt i Vulkan API), som kan brukes både til å representere skyggelegging for grafikk og for parallell databehandling;
  • Lagt til pocl-accel-driver med et eksempel på infrastruktur for å støtte OpenCL 1.2 maskinvareakseleratorer som implementerer et minnetilordnet (mmap) kontrollgrensesnitt;
  • Lagt til muligheten til å bygge pocl-installasjoner som ikke er knyttet til kataloger (kan flyttes).

Kilde: opennet.ru

Legg til en kommentar