amp

計算技術

amp(Accelerated Massive Parallelism),是基於C++的異構化并行計算平台,由微軟公司提出的預覽版本。

目錄

簡介


AMP全名 Accelerated Massive Parallelism(加速大規模并行計算),是微軟提出的基於C++的異構化并行計算平台。它將隨Visual Studio 11一起發布,目前為預覽版本。所謂異構并行計算,主要的需求就來自於GPU通用計算的崛起。
GPU非常適合大規模數據并行演演算法,即同一程序應多多組不同的數據進行并行運算。然而GPU的架構與主流CPU不同,而且常常更新換代,沒法採用傳統編程語言來編程。現有的GPU多數編程方案,如DirectCompute和OpenCL,都要使用不同的語言或編譯器來編寫運行於GPU上的kernel部分和運行在CPU上的host部分。
C++AMP統一了這兩部分,可以用同一個編譯器,同一種語法來編寫kernel代碼;無需任何編譯器選項或設置。C++ AMP的API簡單到了極致,比OpenCL的方便程度更上了一個層次。