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