Sotva člověk dopíše jeden článek, už je zase všechno jinak. Tak dnes vypadá bitva na poli GPGPU. AMD proti Intelu a NVIDIA vsadí na standardy DirectX 11 a OpenCL.
V posledních dnech se opravdu hodně hovoří nahlas o GPGPU a výpočetních prostředí. Že se o tom v poslední době hovoří i mezi běžnými uživateli, za to vděčíme nejspíše společnosti NVIDIA (tím se nesnažím vyvolat žádný flame, jen konstatuji, kdo první začal do běžných prezentací a u grafických karet mluvit o GPGPU), která vyrukovala ve svém marketingu s něčím, co se jmenuje CUDA. Bohužel jen málokdo skutečně chápe, o co vlastně jde. Nicméně svůj účel to splnilo, protože se o tom mluví a všichni teď ví, že NVIDIA má CUDA a tak to někteří chtějí :).
Skutečně velmi jednoduše řečeno je NVIDIA CUDA GPGPU prostředí, které nabízí určité softwarové nástroje, pomocí kterých lze vytvořit aplikaci-program, která v tomto prostředí posléze poběží a bude tedy počítána přes GPU (grafiku). Skutečně velmi jednoduše řečeno je CUDA něco jako operační systém. Příkladem programu pak může být například PhysX nebo klient pro distribuované výpočty. Nicméně CUDA není zdaleka jediné GPGPU prostředí. Podobně úspěšný GPGPU program má AMD-ATI. Navíc co nevidět přibude na toto pole třetí hráč - Intel, se svým Larrabee, který nabídne kombinaci GPU a CPU a x86 kompatibilitu. Na stejné věci ale pracuje i NVIDIA - x86 kompatibilní CUDA. Základy všech těchto systémů jsou však víceméně stejné. Programovací jazyk C ve svých variacích. Ovšem pro každý systém se samozřejmě aplikace vyvíjí trochu odlišně. A to je kámen úrazu. Chybí vlastně jednotný standardizovaný GPGPU systém, což kritizuje řada softwarových společností. Je obecně známo, že GPU (grafický čip) je pro některé operace výrazně rychlejší než CPU, a je zde rozhodně zájem z mnoha stran toho využít, ale není jednoduché (je to i velice nákladné)odladit aplikaci hned pro tři GPGPU systémy. S velmi překvapivým krokem ale přichází AMD ...
AMD oficiálně oznámilo, že podstatně mění svou dosavadní GPGPU strategii. AMD se nechalo slyšet, že se se svou GPGPU platformou vrhne na výpočetní shadery DirectX11 společnosti Microsoft (ty budou obsahovat i fyzikální výpočty) a také bude na své platformě podporovat otevřený standard jazyka OpenCL GPGPU a tedy vrhne se do ryze standardizovaných řešení. Podle některých pozorovatelů se může tento krok AMD ukázat jako rozhodující v boji GPGPU platforem zejména proti NVIDIA a Intelu, kteří se snaží protlačit svá řešení, které ale nejsou standardizovaná. Mezi odborníky je ale právě otevřený a standardizovaný OpenCL GPGPU považován za možné řešení rozvoje programování pro GPGPU.
Tato nová strategie AMD ale není zase až takovým překvapením, pokud přemýšlíte v souvislostech a máte přehled. Rozhodně je zde několik věcí, které jí dávají velký smysl. První věc - OpenCL podporuje společnost Apple a v souvislosti s touto společností se hovoří v poslední o tom, že by NVIDIA měla údajně dodávat do Apple počítačů své čipové sady a tedy i grafiky. Jenže NVIDIA určitě nesleví ze své snahy o prosazení svého CUDA, naproti tomu by AMD určitě ráda obsadila zajímavý trh, kterým Apple počítače jsou. Pokud AMD přijme standard OpenCL za svůj, je zde dosti evidentní možnost snazší dohody s Apple a nasazení minimálně grafických řešení AMD-ATI do počítačů Apple a dost možná třeba i čipových sad a tedy i procesorů AMD pakliže se 45nm čtyřjádrový DENEB ukáže být malým, úsporným a dostatečně výkonným procesorem, což je přesně to, co Apple potřebuje a preferuje.
Druhá věc - AMD musí najít své místo na slunci aby přežilo. Cesta nejmenších nákladů je cestou běžně užívaných a podporovaných standardů. Díky podpoře OpenCL si zajistí přízeň velkého množství programátorů a softwarových společností a zároveň díky přímé orientace na DirectX11 i přízeň společnosti Microsoft, tedy hráče č.1 na poli počítačového software. AMD zkrátka pochopilo, že na prosazení vlastního GPGPU řešení nemá dost síly a dost možná je to i zbytečná snaha ...
Tato zpráva znamená také zároveň to, že pokud NVIDIA nepřestane fyzikální instrukce PhysX podmiňovat i převzetím GPGPU prostředí CUDA, tak tyto fyzikální instrukce na grafikách AMD-ATI nikdy neuvidíme. Určitě totiž po tomto oznámení nikdy na AMD-ATI neuvidíme NVIDIA CUDA GPGPU prostředí. Nicméně AMD-ATI pracuje na zcela novém GPGPU klientu HAVOK, který zvládne nové a náročnější efekty než současný CPU klient. Samozřejmě AMD na tom pracuje spolu se společností HAVOK (podporovaná Intelem). Do toho si můžeme dosadit včerejší zprávu o tom, že Microsoft podepsal trvalou spolupráci právě se společností HAVOK. Microsoft stojí za standardem DirectX11 a ten bude obsahovat i GPGPU technologie včetně výpočtů fyziky. Vsadíme se, který engine přes GPGPU je bude pohánět? Samozřejmě do této rovnice si můžete dosadit ještě Intel, protože ten společnost HAVOK koupil (i když ta působí dále samostatně) a tak HAVOK a DX11 na svém Larrabee podporovat zcela určitě bude. Včerejší zpráva o tom, že Microsoft podporuje HAVOK a dnešní zpráva o obratu AMD na poli GPGPU technologií zcela určitě částečně souvisejí. AMD se prostě evidentně rozhodlo, kterou cestou bude pokračovat a podle všeho si vybralo tu jedinou správnou, zejména v jeho situaci.
Pokud se ptáte, kdy se dočkáme prvních čipů, které budou naplno podporovat standardy DirectX 11 a OpenCL GPGPU, pak to bude už velmi brzy. Mnozí jistě tušíte, že to bude právě nástupce současných ATI RV770 čipů, tedy 40nm RV870 a ten má podle plánu přijít už v prvním kvartále příštího roku. Odhadem únor 2009. Každopádně strategie AMD-ATI pro nadějné GPGPU technologie je jasná - co možná nejširší podpora otevřených standardů. Tak tedy uvidíme ....
Zdroj: TGDaily
AUTOR: Jan "DD" Stach |
---|
Radši dělám věci pomaleji a pořádně, než rychle a špatně. |
|