Microsoft dal volně k dispozici své rozšíření pro C++

7. 2. 2012

Sdílet

 Autor: © Mike Kiev - Fotolia.com
Specifikaci C++ AMP mohou nyní používat i programátoři, kteří využívají jiné kompilátory než ty od Microsoftu. Umožní jim tak naplno využít potenciálu grefických procesorů (GPU).

Účelem nástroje C++ Accelerated Massive Parallelism, původně vytvořeného pro Visual Basic 11 a vydaného s developer preview verzí tohoto softwaru v září loňského roku, je umožnit mainstreamovým vývojářům psát jejich programy tak, aby mohly běžet paralelně v heterogenním výpočetním prostředí. Nově budou moci tuto specifikaci použít i tvůrci jiných kompilátorů pro C++, mezi které patří třeba Embarcadero, Intel či Free Software Foundation.

ICTS24


„Jsme nyní svědky situace, kdy se stále více a více lidí snaží využít výhod GPU pro své aplikace,“ řekl Tony Goodhew, produktový manažer Microsoftu pro Visual Basic. Stále více GPU tvůrců proto své grafické procesory nabízí jako způsob, jak urychlit vykonávání procesů, a pomoci tak CPU s některými náročnými operacemi. Paralelní výpočty jsou však obecně považovány za ošidnou záležitost, kterou zvládnou jen vysoce specializovaní programátoři pracující například se superpočítači. „Díky C++ AMP už nebudete muset být vysoce kvalifikovaným odborníkem, abyste mohli tento hardware využít,“ uvedl Goodhew.


Programátoři Microsoftu se při vývoji AMP snažili minimalizovat množství změn v základní verzi C++. Výsledný produkt tak má sice několik omezení, na která je třeba brát ohled při spouštění kódu na různých procesorech, současně ale přináší i něco navíc, jako třeba podporu asynchronního přenosu paměti, sdílené paměti a synchronizace. Pro vlastní implementaci použil Microsoft knihovnu DirectCompute, která je součástí DirectX a která umožňuje používat i jiná rozhraní GPU, jako třeba Cuda od Nvidie. A i když je současná verze určená jen pro GPU, tvoří rovněž základ pro případnou podporu grafických akcelerátorů jiného druhu.