OpenCL

Aus Rechenkraft
Zur Navigation springen Zur Suche springen

OpenCL (Open Computing Language), ist eine Programmierschnittstelle basierend auf der Sprache C (insbesondere dem Standard ISO C99) und kann auf sehr unterschiedlichen Prozessoren laufen, etwa CPUs, GPUs und anderen Parallel-Prozessoren, wie z.B. der Cell Broadband Engine und Co-Prozessoren oder Digitalen Signalprozessoren.

Die Spezifikationen liegen in einer Übersicht als pdf-Datei (73 Seiten) vor, dort finden sich diverse Erläuterungen und Rechenbeispiele, u.a. die Abgrenzung zu OpenGL (S. 9) und eine Grafik zum OpenCL Plattform Modell (S. 17).

Eine ausführlichere und allgemeinere Beschreibung gibt es bei Wikipedia. Die vollständige Spezifikation des Standards 1.0 als pdf-Datei umfaßt 302 Seiten.

Zitat mit einem anschaulichen Beispiel aus der heise-News vom 10.06.2008 zum Thema OpenCL:

"Dabei handelt es sich um eine C-ähnliche Sprache, die sich speziell für das Lösen von rechenintensiven Problemen, etwa aus den Bereichen Mathematik oder Physik, eignet. Der Clou: Für OpenCL spielt es keine Rolle, ob eine CPU oder eine GPU letztlich die Arbeit übernimmt. OpenCL wird zur Laufzeit in den passenden Code übersetzt. Bei der Simulation der Anziehungskräfte von 16.000 Sternen in einem Universum ließ sich die Rechenleistung von 2 GFlops (C-Programm auf einer CPU) mit OpenCL auf 240 GFlops steigern (mehrere CPUs, mehrere GPUs)."