OpenCL作為一種開(kāi)放的并行加速計算標準,已經(jīng)得到了AMD、Intel、NVIDIA等芯片業(yè)巨頭和大量行業(yè)廠(chǎng)商的支持,但唯獨缺少了微軟。就在A(yíng)MD Fusion開(kāi)發(fā)者峰會(huì )上,微軟終于拿出了自己的反擊武器:“C++ AMP”,其中AMP三個(gè)字母是“accelerated massive parallelism”的縮寫(xiě),也就是加速大規模并行的意思。 C++ AMP是微軟Visual Studio和C++編程語(yǔ)言的新擴展,用于幫助開(kāi)發(fā)人員充分適應現在和未來(lái)的高度并行和異構計算環(huán)境。它使用C++語(yǔ)言的句法,將隨同下個(gè)版本的Visual Studio一同發(fā)布,不過(guò)可能會(huì )在今年晚些時(shí)候放出測試版本。 令人矚目的是,微軟宣布C++ AMP標準將是一種開(kāi)放的規范,允許其它編譯器集成和支持。這無(wú)疑是對OpenCL的最直接回應。 為了展示了C++ AMP的威力,微軟現場(chǎng)運行了一個(gè)剛體模擬程序。同一個(gè)可執行文件能夠在多臺計算機和設備上運行,既支持 3GFlops的Llano APU x86處理器部分,也支持650GFlops的Llano APU協(xié)同加速,還支持830GFlops的Radeon HD 5800 CrossFire,另外在一臺使用AMD E系列APU的平板機上還獲得了16GFlops的計算能力,能夠模擬16000多個(gè)粒子。 OpenCL雖然是免費開(kāi)放的,但也是目前異構計算的唯一選擇。誰(shuí)也不敢保證C++ AMP能夠挑落OpenCL,但至少給開(kāi)發(fā)人員提供了新的選擇,而且背后還有微軟這樣的大佬支持著(zhù)。 ![]() |