zurück zum Artikel

Heterogenes Computing: Freie Implementierung von C++ AMP 1.2

Alexander Neumann

AMD und Microsoft stellen einen Compiler für Windows und Linux vor, der die aktuelle Spezifikation der C++-Spracherweiterung für heterogenes Computing implementiert.

AMD und Microsoft haben einen Clang und LLVM nutzenden quelloffenen Compiler [1] freigegeben, der die Version 1.2 von C++ AMP (Accelerated Massive Parallelism) unterstützt. Mit dieser Spracherweiterung erhalten Entwickler eine Schnittstelle für heterogenes Computing, bei der es offenbar gleichgültig ist, ob die Rechenleistung durch eine GPGPU (General-Purpose Graphics Processing Unit), die CPU oder die Cloud bereitgestellt wird.

Zu den wichtigsten Features der im Dezember 2013 freigegebenen Spezifikation [2] gehören die Unterstützung für gemeinsam genutzten RAM, Ergänzungen in den globalen Funktionen zum Kopieren von Texturen und Unterstützung für gemeinsam genutzte Speicher in array <T,N>.

Der auf der Code-Hosting-Plattform Bitbucket zu findende Compiler ist für Windows und Linux erhältlich. Eine Mac-Version hat derzeit noch experimentellen Charakter. Microsoft unterstützt C++ AMP schon etwas länger in Visual Studio, die Arbeiten für den Linux-Support stammen vor allem von AMD. Laut der Ankündigung ist die Spracherweiterung mit der GPGPU-Programmierschnittstelle OpenCL (Open Compute Language), der Spezifikation für portable OpenCL-IR SPIR (Standard Portable Intermediate Representation) und der von AMD initiierten Heterogenous System Architecture der HSA Foundation kompatibel. (ane [3])


URL dieses Artikels:
https://www.heise.de/-2303217

Links in diesem Artikel:
[1] https://bitbucket.org/multicoreware/cppamp-driver-ng/wiki/Home
[2] http://blogs.msdn.com/b/nativeconcurrency/archive/2013/12/12/c-amp-open-spec-v1-2-published.aspx
[3] mailto:ane@heise.de