Projektveröffentlichung (Portable Computing Language OpenCL), die die Implementierung des OpenCL-Standards vorantreibt, unabhĂ€ngig von Herstellern von Grafikbeschleunigern, und die es ermöglicht, verschiedene Backends zur AusfĂŒhrung von OpenCL-Kernen auf verschiedenen Arten von Grafik- und Zentralprozessoren zu nutzen. Der Code des Projekts ist unter der MIT-Lizenz lizenziert. Es wird die Nutzung auf Plattformen X86_64, MIPS32, ARM v7, AMD HSA APU und verschiedenen spezialisierten TTA-Prozessoren unterstĂŒtzt () mit der Architektur .
Die Implementierung des OpenCL-Kernels-Compilers basiert auf LLVM, und als Frontend fĂŒr OpenCL C wird Clang verwendet. Um die richtige PortabilitĂ€t und Leistung sicherzustellen, kann der OpenCL-Kernel-Compiler kombinierte Funktionen generieren, die verschiedene Hardware-Ressourcen zur Parallelisierung der CodeausfĂŒhrung nutzen können, wie VLIW, Superskalare, SIMD, SIMT, Multikern- und Multithreading. ICD-Treiber werden unterstĂŒtzt.
(Installable Client Driver). Es gibt Backends fĂŒr die Arbeit ĂŒber CPU, ASIP (TCE/TTA), GPU basierend auf der Architektur und GPU NVIDIA (CUDA).
Im :
- UnterstĂŒtzung hinzugefĂŒgt fĂŒr . Die UnterstĂŒtzung von LLVM-Versionen vor 6.0 wurde eingestellt.
- Die Implementierung der intermediĂ€ren ReprĂ€sentationen von Code auf CPU-Basis wurde verbessert und (verwendet in der Vulkan-API), die sowohl zur Darstellung von Shadern fĂŒr Grafik als auch fĂŒr parallele Berechnungen verwendet werden können;
- Ein Treiber pocl-accel wurde hinzugefĂŒgt, mit einem Beispiel fĂŒr eine Infrastruktur zur UnterstĂŒtzung von Hardwarebeschleunigern fĂŒr OpenCL 1.2, die eine speicherreflektierende (mmap) Steuerungsschnittstelle implementieren;
- Die Möglichkeit, pocl-Installationen zu erstellen, die nicht an Verzeichnisse gebunden sind (relocatable), wurde hinzugefĂŒgt.
Quelle: opennet.ru
