PoCL 1.4:n julkaisu, OpenCL-standardin itsenäinen toteutus

Saatavilla projektin julkaisu PoCL 1.4 (Portable Computing Language OpenCL), joka kehittää grafiikkakiihdytinvalmistajista riippumattoman OpenCL-standardin toteutuksen ja mahdollistaa erilaisten taustaohjelmien käytön OpenCL-ytimien suorittamiseen erityyppisissä grafiikoissa ja keskusprosessoreissa. Projektin koodi jakelija MIT-lisenssillä. Tukee työtä X86_64-, MIPS32-, ARM v7-, AMD HSA APU-alustoilla ja erilaisissa erikoistuneissa TTA-prosessoreissa (Transport Triggered Architecture) arkkitehtuurilla VLIW.

OpenCL-ytimen kääntäjän toteutus on rakennettu LLVM:n pohjalta ja Clangia käytetään OpenCL C:n käyttöliittymänä. Oikean siirrettävyyden ja suorituskyvyn varmistamiseksi OpenCL-ytimen kääntäjä voi luoda yhdistelmätoimintoja, jotka voivat käyttää erilaisia ​​laitteistoresursseja koodin suorittamisen rinnakkain, kuten VLIW, superskalaari, SIMD, SIMT, moniytiminen ja monisäie. ICD-ohjaintuki saatavilla
(Asennettava asiakasohjain). On olemassa taustaohjelmia, jotka varmistavat toiminnan prosessorin, ASIP (TCE/TTA) ja GPU-pohjaisen arkkitehtuurin kautta HSA ja NVIDIA GPU (CUDA).

В uusi versio:

  • Lisätty tuki LLVM/Clang 9.0. Yli 6.0:aa vanhempien LLVM-versioiden tuki on lopetettu.
  • Parannettu CPU-pohjainen välimuotoisten koodiesitysten toteutus SPIR и SPIR-V (käytetään Vulkan API:ssa), jota voidaan käyttää sekä esittämään varjostimia grafiikkaa että rinnakkaislaskentaa varten;
  • Lisätty pocl-accel-ajuri esimerkkiinfrastruktuurilla tukemaan OpenCL 1.2 -laitteistokiihdyttimiä, jotka toteuttavat muistikartoidun (mmap) ohjausliittymän;
  • Lisätty mahdollisuus rakentaa pocl-asennuksia, joita ei ole sidottu hakemistoihin (uudelleensijoitettava).

Lähde: opennet.ru

Lisää kommentti