AMD FireStream - AMD FireStream
AMD FireStream byla značka AMD pro jejich produktovou řadu založenou na Radeonu zaměřenou na zpracování streamů a / nebo GPGPU v superpočítačích . Produktová řada byla původně vyvinuta společností ATI Technologies kolem Radeon X1900 XTX v roce 2006 a dříve byla označována jako ATI FireSTREAM a AMD Stream Processor . AMD FireStream lze také použít jako koprocesor s plovoucí desetinnou čárkou pro odlehčení výpočtů CPU, který je součástí iniciativy Torrenza . Řada FireStream byla ukončena od roku 2012, kdy byly pracovní zátěže GPGPU zcela složeny do řady AMD FirePro .
Přehled
Řada FireStream je řada doplňkových rozšiřujících karet vydávaných od roku 2006 do roku 2010, založených na standardních grafických kartách Radeon, ale navržených tak, aby sloužily spíše jako univerzální koprocesor než pro vykreslování a výstup 3D grafiky. Stejně jako řada FireGL / FirePro dostaly více paměti a šířku pásma paměti, ale karty FireStream nemusí nutně mít video výstupní porty. Všechny podporují 32bitovou plovoucí desetinnou čárku s jednou přesností a všechny kromě prvního vydání podporují 64bitovou dvojitou přesnost . Linka byla spojena s novými rozhraními API, aby poskytovala vyšší výkon, než jaký by mohla poskytnout stávající rozhraní API shaderů OpenGL a Direct3D , počínaje verzí Close to Metal , následovanou OpenCL a Stream Computing SDK a nakonec integrovanou do APP SDK .
Pro vysoce paralelní matematické úlohy s plovoucí desetinnou čárkou mohou karty zrychlit velké výpočty více než 10krát; Folding @ Home, nejdříve a jeden z nejviditelnějších uživatelů GPGPU, získal 20–40krát vyšší výkon procesoru. Každý pixel a vertex shader, nebo sjednocený shader v novějších modelech, může provádět libovolné výpočty s plovoucí desetinnou čárkou.
Dějiny
Po vydání grafických jader Radeon R520 a GeForce G70 s programovatelnými shadery upoutala velká propustnost s plovoucí desetinnou čárkou pozornost od akademických a komerčních skupin a experimentovala s jejich využitím pro jiné než grafické práce. Zájem vedl ATI (a Nvidia ) k vytvoření produktů GPGPU - schopných masivně paralelně vypočítat matematické vzorce obecného účelu - ke zpracování těžkých výpočtů tradičně prováděných na CPU a specializovaných matematických koprocesorech s plovoucí desetinnou čárkou . Předpokládalo se, že GPGPU mají okamžité zvýšení výkonu o faktor 10 nebo více ve srovnání se současným výpočtem vícejádrových procesorů pouze s CPU.
Vzhledem k tomu, že vývoj vysoce výkonného X1900 XFX byl téměř dokončen, společnost ATI na něm založila svůj první design Stream Processor a oznámila jej jako nadcházející ATI FireSTREAM společně s novým Close to Metal API na SIGGRAPH 2006. Samotné jádro bylo většinou beze změny, kromě pro zdvojnásobení vestavěné paměti a šířky pásma, podobně jako FireGL V7350 ; Většinu rozdílu tvoří nová podpora ovladačů a softwaru. Folding @ home začal používat X1900 pro obecný výpočet pomocí předběžného vydání verze 6.5 ovladače ATI Catalyst a hlásil 20–40násobné zlepšení GPU oproti CPU. První produkt byl vydán na konci roku 2006 a po fúzi s AMD byl přejmenován na AMD Stream Processor .
Značka se stala AMD FireStream druhou generací streamových procesorů v roce 2007 založenou na čipu RV650 s novými jednotnými shadery a podporou dvojité přesnosti. Asynchronní DMA také zlepšil výkon tím, že umožnil větší fond paměti bez pomoci procesoru. Jeden model byl propuštěn, 9170, za počáteční cenu 1999 $. Plány zahrnovaly vývoj streamového procesoru na modulu MXM do roku 2008 pro výpočetní výkon notebooku, ale nikdy nebyl vydán.
Třetí generace rychle následovala v roce 2008 s dramatickým vylepšením výkonu jádra RV770; 9250 měl téměř dvojnásobný výkon než 9170 a stal se prvním jednočipovým teraflopovým procesorem, a to i přes pokles ceny pod 1000 $. Rychlejší sourozenec, 9270, byl propuštěn krátce poté, za 1999 $.
V roce 2010 vyšla finální generace FireStreams, karty 9350 a 9370 založené na čipu Cypress obsaženém v HD 5800. Tato generace oproti předchozímu zdvojnásobila výkon, na 2 teraflopy v 9350 a 2,6 teraflops v 9370 , a byl první postavený od základu pro OpenCL . Tato generace byla také jediná s plně pasivním chlazením a aktivní chlazení nebylo k dispozici.
Generace Severního a Jižního ostrova byly přeskočeny a v roce 2012 společnost AMD oznámila, že místo karet FireStream nahradí nové řady FirePro W (pracovní stanice) a S (server) založené na nové architektuře Graphics Core Next .
Modely
- FireStream 9170 zahrnuje Direct3D 10.1, OpenGL 3.3 a APP Stream
- FireStream 92x0 zahrnuje Direct3D 10.1, OpenGL 3.3 a OpenCL 1.0
- FireStream 93x0 zahrnuje Direct3D 11, OpenGL 4.3 a OpenCL 1.2 s posledními aktualizacemi ovladačů
Model ( Codename ) |
Zahájení |
Architektura ( Fab ) |
Rozhraní sběrnice | Streamujte procesory | Rychlost hodin | Paměť | Procesní výkon ( GFLOPS ) |
TDP ( W ) | |||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Jádro (MHz) | Paměť (MHz) | Velikost ( MB ) | Typ | Šířka sběrnice ( bit ) | Šířka pásma ( GB / s) | Singl | Dvojnásobek | ||||||
Stream procesor (R580) |
2006 | R500 80 nm |
240 | 600 | 1024 | GDDR3 | 256 | 83.2 | 375 | N / A | 165 | ||
FireStream 9170 (RV670) |
8. listopadu 2007 | TeraScale 1 55 nm |
PCIe 2.0 x16 | 320 | 800 | 800 | 2048 | GDDR3 | 256 | 51.2 | 512 | 102.4 | 105 |
FireStream 9250 (RV770) |
16. června 2008 | TeraScale 1 55 nm |
PCIe 2.0 x16 | 800 | 625 | 993 | 1024 | GDDR3 | 256 | 63.6 | 1000 | 200 | 150 |
FireStream 9270 (RV770) |
13. listopadu 2008 | TeraScale 1 55 nm |
PCIe 2.0 x16 | 800 | 750 | 850 | 2048 | GDDR5 | 256 | 108,8 | 1200 | 240 | 160 |
FireStream 9350 (Cypress XT) |
23. června 2010 | TeraScale 2 40 nm |
PCIe 2.1 x16 | 1440 | 700 | 1000 | 2048 | GDDR5 | 256 | 128 | 2016 | 403,2 | 150 |
FireStream 9370 (Cypress XT) |
23. června 2010 | TeraScale 2 40 nm |
PCIe 2.1 x16 | 1600 | 825 | 1150 | 4096 | GDDR5 | 256 | 147,2 | 2640 | 528 | 225 |
Software
AMD FireStream byl spuštěn s širokou škálou podpory softwarové platformy. Jednou z podpůrných firem byl PeakStream (získaný společností Google v červnu 2007), který jako první poskytl otevřenou beta verzi softwaru na podporu procesorů CTM a AMD FireStream a také procesorů x86 a Cell (Cell Broadband Engine). Po spuštění softwaru PeakStream se tvrdilo, že FireStream je v typických aplikacích 20krát rychlejší než běžné CPU. RapidMind také poskytl software pro zpracování streamů, který pracoval s ATI a NVIDIA, stejně jako s procesory Cell.
Software Development Kit
Poté, co opustili své krátkodobé API Close to Metal , se AMD zaměřilo na OpenCL . Společnost AMD poprvé vydala v prosinci 2007 svou Stream Computing SDK (v1.0) pod AMD EULA , která má být spuštěna na Windows XP . Sada SDK obsahuje „Brook +“, hardwarově optimalizovanou verzi jazyka Brook od společnosti Brook vyvinutou Stanfordskou univerzitou, která je sama o sobě variantou ANSI C ( jazyk C ), je otevřená a optimalizovaná pro streamování. AMD Jádro Math Library (ACML) a AMD Performance Library (APL) s optimalizací pro AMD FireStream a COBRA videotéky (dále přejmenován na "akcelerovaný video transkódování" nebo AVT) pro videa překódování zrychlení budou také zahrnuty. Další důležitou součástí sady SDK, Compute Abstraction Layer (CAL), je vrstva vývoje softwaru zaměřená na nízkoúrovňový přístup prostřednictvím hardwarového rozhraní CTM k architektuře GPU pro software pro ladění výkonu napsaný v různých programovacích jazycích na vysoké úrovni .
V srpnu 2011 společnost AMD vydala verzi 2.5 sady ATI APP Software Development Kit, která zahrnuje podporu OpenCL 1.1 , paralelního výpočetního jazyka vyvinutého skupinou Khronos Group . Koncept výpočetních shaderů , oficiálně nazývaných DirectCompute, v API příští generace Microsoftu s názvem DirectX 11 je již součástí grafických ovladačů s podporou DirectX 11.
AMD APP SDK
Srovnávací hodnoty
Podle systému předvedeného AMD se dvěma dvoujádrovými procesory AMD Opteron a dvěma jádry GPU Radeon R600 běžícími na systému Microsoft Windows XP Professional lze 1 teraflop (TFLOP) dosáhnout výpočtem MADD (Universal Multiply-Add). Pro srovnání, procesor Intel Core 2 Quad Q9650 3,0 GHz v té době mohl dosáhnout 48 GFLOPS.
Na ukázce antivirového skenování Kaspersky SafeStream, které bylo optimalizováno pro procesory AMD stream, bylo možné v roce 2007 skenovat 21krát rychleji s akcelerací založenou na R670 než s vyhledáváním běžícím zcela na Opteronu.
Omezení
- Rekurzivní funkce nejsou v Brook + podporovány, protože všechna volání funkcí jsou v době kompilace inline . Pomocí CAL jsou funkce (rekurzivní nebo jiné) podporovány do 32 úrovní.
- Podporováno je pouze bilineární filtrování textur; mipmapované textury a anizotropní filtrování nejsou podporovány.
- Funkce nemohou mít proměnný počet argumentů. Stejný problém nastává u rekurzivních funkcí.
- Převod čísel s plovoucí desetinnou čárkou na celá čísla na GPU se provádí jinak než na procesorech x86; není plně kompatibilní s IEEE-754 .
- Provádění „globální synchronizace“ na GPU není příliš efektivní, což nutí GPU rozdělit jádro a provádět synchronizaci na CPU. Vzhledem k proměnlivému počtu multiprocesorů a dalším faktorům nemusí být tento problém dokonalým řešením.
- Šířka pásma sběrnice a latence mezi CPU a GPU se mohou stát překážkou .
Viz také
- Zpracování streamu
- Heterogenní systémová architektura
- NVIDIA Tesla podobné řešení od Nvidia
- Intel Xeon Phi podobné řešení od společnosti Intel
- Open Computing Language ( OpenCL ) - průmyslový standard
- Compute Unified Device Architecture ( CUDA ) - patentované řešení pouze pro Nvidia
- Seznam grafických jednotek AMD