OpenCL-Compiler auf LLVM-Basis
Portable OpenCL soll eine Open-Source-Implementierung des OpenCL-Standards der Khronos Group werden. Wie andere greift sie auf die Compiler-Infrastruktur Low-Level Virtual Machine zurĂĽck.
- Alexander Neumann
Ein neues Open-Source-Projekt arbeitet an einem Compiler für den von der Khronos Group spezifizierten Standard OpenCL. Ziel von "Portable OpenCL" ist es laut Carlos Sánchez de la Lamas Eintrag auf der Mailing-Liste der LLVM-Entwickler, eine Open-Source-Implementierung des OpenCL-Standards zu entwickeln. Das Projekt ist noch in einem frühen Stadium (seit Anfang 2011), erster Quellcode findet sich nun aber auf Launchpad.net, der von Canonical gesponserten Plattform für Entwicklungen rund um Ubuntu.
Portable OpenCL nutzt die Low-Level Virtual Machine, eine unter anderem von Apple geförderten Compiler-Infrastruktur, die aus einer Sammlung von Bibliotheken und Tools für optimierende Compiler und Just-in-Time-Codegeneratoren besteht. Damit schlägt das Projekt den Weg ein, den zuvor schon andere OpenCL-Implementierungen, etwa die von Apple, Nvidia oder ein anderes Open-Source-Projekt namens Clover, beschritten haben, die ebenfalls LLVM verwenden.
OpenCL definiert eine Schnittstelle für heterogene Parallelcomputer, die die Programmierung von Applikationen und Funktionen ermöglichen sollen, die auf unterschiedlichen, aber OpenCL-kompatiblen Prozessoren laufen. OpenCL soll das Potenzial von Grafikprozessoren zusätzlich zur 2-D- oder 3-D-Grafikbeschleunigung auch für andere, allgemeine Applikationen ausnutzen. OpenCL verwendet eine Untermenge des ISO-zertifizierten C-Dialekts C99 mit Erweiterungen für die Parallelisierung. (ane)