Mellékleteink: HUP | Gamekapocs
Keres
Ősszel is lesz HWSW free! Alkalmazott AI meetup és agilis fejlesztői meetup a módszertanok dzsungeléből, szeptember 24-25-én.

Megjelent a Microsoft AMP specifikációja

Gálffy Csaba, 2012. február 06. 08:12
Ez a cikk több évvel ezelőtt születetett, ezért előfordulhat, hogy a tartalma már elavult.
Frissebb anyagokat találhatsz a keresőnk segítségével:

Kinyitotta az AMP specifikációját a Microsoft, így nyitva a lehetőség a szabad szoftveres implementáció előtt is. Az AMP ambiciózus projekt, célja egységesíteni a párhuzamos programozást a CPU és GPU architektúrák között.

hirdetés

Publikálta az AMP (Accelerated Massive Parallelism) névre keresztelt technológiájának specifikációit a Microsoft. Az AMP fejlesztését tavaly júniusban jelentette be a Microsoft, a projekt célja egy olyan általános heterogén programozási rendszer kidolgozása volt, amely egyesíti a CPU és GPU architektúrákat. A projekt keretében a Microsoft az NVIDIA-val és az AMD-vel is szorosan együtt dolgozott.

Az eredeti bejelentés az AMP specifikációját teljesen nyitottnak ígérte, a Microsoft szerint erre szükség van a nyelv és keretrendszer teljes körű adoptációjához. Ígéretéhez híven a szoftverház most nyilvánosságra hozta a specifikációkat, így a technológia a cég saját megoldásain kívül is implementációt nyerhet. Ez különösen fontos lépés lehet, a GPGPU illetve a heterogén programozás térnyerését eddig az egységes programozási nyelv hiánya alaposan visszafogta.

Egységes programozás

Az AMP a Microsoft válasza a gyorsan terjedő heterogén processzorokra. Ma már mindkét nagy x86-os processzorgyártó és az összes ARM-os szereplő integrált CPU-GPU lapkákat kínál a mainstream szegmens számára, az integráció foka pedig a jövőben tovább nő. A két részegység architektúrája azonban nagyon eltérő - amit tovább fokoz a különböző gyártók implementációinak eltérő jellege. A hardver fokozatos fejlődésével azonban a szoftverek nem tartottak lépést, jelenleg rendkívül komplex feladat a két részegység előnyeit maximálisan kihasználó, platform-agnosztikus alkalmazások készítése.

A Microsoft AMP erre kínálna gyógyírt az egységes programozási nyelv és egy, DirectCompute alapú implementációval. A szabad szoftveres közösségben azonban ez érthető okokból nem terjedne el, ezért szükséges a specifikáció megnyitása - így létrehozhatóak OpenGL/OpenCL alapú fordítók is, amelyek révén a kód hordozhatóvá válik, a nyelv pedig széles körben elterjedhet. Ennek szükségességét a Microsoft is belátja, így nyilvános ígéretet tettek arra, hogy a technológiával kapcsolatos szabadalmakkal senkit nem fognak perbe fogni. Az "ígéret" egy jogilag is érvényes, visszavonhatatlan megkötés, amely a licenc része. Ennek értelmében a Microsoft lemond az AMP releváns szabadalmainak jogairól és azokat csupán abban az esetben használhatja, ha a céget magát fogják perbe.

Az AMP hatalmas ígéretet hordoz a GPGPU és a valóban integrált szoftverfejlesztés számára. A technológia tisztán C++ alapon használható, szemben az OpenCL C és C99 keverékével. Az AMP másik nagy előnye, hogy az OpenCL-lel szemben nem igényel manuális foglalkozást a GPU lelkivilágával. Míg az OpenCL esetében a kód szintjén továbbra is jelentős különbség van a CPU és a GPU számára írt részfeladatokban, az AMP ezt a különbséget erősen elmossa.

Az AMP támogatása a Visual Studio C++ következő verziójában jelenik meg.

Facebook

Mit gondolsz? Mondd el!

Adatvédelmi okokból az adott hír megosztása előtt mindig aktiválnod kell a gombot! Ezzel a megoldással harmadik fél nem tudja nyomon követni a tevékenységedet a HWSW-n, ez pedig közös érdekünk.
Alkalmazott AI meetup és agilis fejlesztői meetup a módszertanok dzsungeléből, szeptember 24-25-én.