Izdanje PoCL 1.4, nezavisne implementacije OpenCL standarda

Dostupno izdanje projekta PoCL 1.4 (Portable Computing Language OpenCL), koji razvija implementaciju OpenCL standarda koja je nezavisna od proizvođača grafičkih akceleratora i dozvoljava upotrebu različitih pozadina za izvršavanje OpenCL kernela na različitim tipovima grafike i centralnih procesora. Šifra projekta distribuira pod MIT licencom. Podržava rad na X86_64, MIPS32, ARM v7, AMD HSA APU platformama i raznim specijalizovanim TTA procesorima (Arhitektura pokrenuta transportom) sa arhitekturom VLIW.

Implementacija kompajlera OpenCL kernela izgrađena je na bazi LLVM-a, a Clang se koristi kao prednji kraj za OpenCL C. Da bi osigurao odgovarajuću prenosivost i performanse, kompajler jezgre OpenCL može generirati funkcije kombinacije koje mogu koristiti različite hardverske resurse za paraleliziranje izvršavanja koda, kao što su VLIW, superskalar, SIMD, SIMT, višejezgarni i multi-threading. Dostupna podrška za ICD drajver
(Client Driver za instaliranje). Postoje backendovi koji osiguravaju rad preko CPU-a, ASIP (TCE/TTA), arhitekture zasnovane na GPU-u HSA i NVIDIA GPU (CUDA).

В nova verzija:

  • Dodata podrška LLVM/Clang 9.0. Podrška za LLVM verzije starije od 6.0 je ukinuta.
  • Poboljšana implementacija srednjeg koda zasnovana na CPU-u SPIR и SPIR-V (koristi se u Vulkan API-ju), koji se može koristiti i za predstavljanje shadera za grafiku i za paralelno računanje;
  • Dodan drajver za pocl-accel sa primjerom infrastrukture za podršku OpenCL 1.2 hardverskih akceleratora koji implementiraju memorijsko mapirano (mmap) kontrolno sučelje;
  • Dodata mogućnost izgradnje pocl instalacija koje nisu vezane za direktorije (premjestiti).

izvor: opennet.ru

Dodajte komentar