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

PoCL 1.3 -projektista (Portable Computing Language OpenCL) on saatavilla julkaisu, joka kehittää OpenCL-standardin toteutuksen, joka on riippumaton näytönohjainten valmistajista ja mahdollistaa erilaisten taustaohjelmien käytön OpenCL-ytimien suorittamiseen erityyppisissä grafiikoissa ja keskusprosessoreissa. . Projektikoodia jaetaan MIT-lisenssillä. Tukee toimintaa X86_64-, MIPS32-, ARM v7-, AMD HSA APU-alustoilla ja erilaisissa erikoistuneissa TTA-prosessoreissa (Transport Triggered Architecture) VLIW-arkkitehtuurilla.

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 tukevat toimintaa CPU:n, ASIP:n (TCE/TTA), HSA-arkkitehtuuriin perustuvan GPU:n ja NVIDIA GPU:n (CUDA) kautta.

Uusi versio lisää tuen LLVM/Clang 8.0:lle. Tarjoaa tuen ICD:lle (Installable Client Driver) macOS-alustalla. Toteutettu kyky rakentaa pocl ilman tausta-ohjaimia prosessorille. HSA:lle (heterogeeninen järjestelmäarkkitehtuuri) tarjotaan alustava tuki ISA:iden kääntämiselle HSA-ajon aikana. Koodikanta puhdistettiin, mukaan lukien Vecmathlib-kirjasto poistettiin ja tuki LLVM:n vanhemmille versioille (alle 6.0) lopetettiin.

Lähde: opennet.ru

Lisää kommentti