AMD in collaboration with Microsoft has made available C++ AMP version 1.2, an open source C++ compiler which implements version 1.2 of the open specification for C++ AMP. Supporting both Linux and Windows, this new compiler leverages Clang and LLVM.
C++ AMP version 1.2 supports three outputs: Khronos Group OpenCL(1), supporting AMD CPU/APU/GPU, Intel CPU/APU, NVIDIA GPU, Apple Mac OS X and other OpenCL compliant platforms; — Khronos Group SPIR, supporting AMD CPU/APU/GPU, Intel CPU/APU and future SPIR compliant platforms; and — HSA Foundation HSAIL, supporting AMD APU and future HSA compliant platforms.
The speciality of version 1.2 of the open source C++ AMP specification is, it supports shared physical memory. Heterogeneous platforms minimize overhead of expensive data copies and pointer updates when accelerating applications.