Fyzický procesor

Fyzikální procesor ( angl.  Physics Processing Unit  - eng.  PPU , „fyzický akcelerátor“, „fyzikální akcelerátor“) je specializovaný mikroprocesor určený k výpočtu fyzikálních interakcí objektů, zejména ve fyzikálních motorech videoher .

Příklady fyzikálních výpočtů pomocí fyzického procesoru mohou být: dynamika tuhého  tělesa , dynamika měkkého tělesa ,  detekce kolize , dynamika tekutin , simulace pohybu vlasů, kožešin a tkanin, analýza konečných prvků , chyby objektů .  

Myšlenkou (hlavní funkcí, podstatou) fyzického procesoru je odlehčit centrální procesorovou jednotku ( angl.  CPU  - angl.  Central Processing Unit ) od časově náročných úloh fyziky zpracování. Velmi podobný nápad využívají moderní grafické karty , jejichž hlavní částí jsou grafické procesory ( anglicky  GPU  - anglicky  Graphics Processing Unit ).

První vyvinuté fyzické procesory jsou SPARTA a HELLAS .

Termín „PPU“ byl vytvořen marketingovým oddělením Ageia , aby spotřebitelům popsal jejich čip PhysX . Fyzický procesor Ageia PhysX je  jediná kompletní, navržená, navržená, sériově vyráběná, uváděná a podporovaná instance, která byla navržena čistě jako PPU . Kromě PhysX existují v této oblasti další řešení a technologie.

Ageia PhysX

První procesor, který byl inzerován jako „PPU“, byl čip PhysX , vyrobený společností Ageia . Hry, které chtěly používat PhysX , musely používat speciální sub-software  – fyzikální engine PhysX SDK (dříve známý jako NovodeX SDK ) od Ageie .

Procesor PhysX se skládá z jádra RISC pro obecné účely , které řídí řadu vlastních procesorů VLIW, které pracují s instrukcemi SIMD a pohyblivou řádovou čárkou [1] . Procesor spolupracuje s lokálními paměťovými bankami s vestavěným přepínačem pro řízení toků mezi nimi. PhysX nemá stejnou hierarchii mezipaměti jako CPU nebo GPU .

Aktuálně nejsou k prodeji žádné desky s procesorem PhysX . V nedávné minulosti desky vyráběly tři společnosti. ASUS a BFG Technologies byly první společnosti, které začaly prodávat desky. Kompletní počítačové sady s nainstalovanými deskami PhysX jsou k dispozici od výrobců počítačů, jako jsou Alienware , Dell a Falcon Northwest.

V únoru 2008 , poté, co Nvidia koupila Ageia Technologies , se zdálo, že veškerý vývoj této společnosti byl kompletně převeden na Nvidii. V březnu 2008 však Nvidia oznámila, že z PhysX SDK udělá otevřenou platformu dostupnou všem. [2] Podpora PhysX SDK bude k dispozici pro všechny grafické karty Nvidia počínaje řadou 8xxx. V tuto chvíli Nvidia připravuje vydání nové verze ovladačů, která zahrnuje podporu PhysX SDK v těchto grafických kartách. 24. července 2008 bylo odhaleno, že Nvidia vydá 5. srpna 2008 ovladač ForceWare s certifikací WHQL s podporou akcelerace fyziky . [3]

Dne 28. června 2008 spustil Eran Badit z  NGOHQ.com hardwarovou podporu PhysX SDK na grafické kartě Radeon HD 3870 . [4] NVIDIA reagovala na iniciativu Erana Badita negativně , ale 9. července 2008 dostal Badit přístup k dokumentaci, SDK, hardwaru a kontaktům inženýrů. NVIDIA tak otevírá PhysX SDK vývojářům třetích stran. [5]

15. srpna 2008 vydala NVIDIA ovladač ForceWare 177.83, který umožňuje podporu PhysX v grafických kartách řady 8, 9 a 200. To okamžitě rozšířilo uživatelskou základnu na více než 70 milionů lidí po celém světě. [6] [7]

Odkazy na sekce

Koprocesor VU0 v PS2 jako PPU

Šestá generace herní konzole Sony PlayStation 2 využívá 128bitový „ Emotion Engine “, který je kombinací centrální procesorové jednotky (CPU) a digitálního signálového procesoru (DSP). Emotion Engine se skládá z centrální 64bitové části založené na MIPS R5900 a dvou 128bitových vektorových koprocesorů VU0 a VU1 ( Vector Unit ) .  VU0 se běžně používá pro polygonové transformace, fyziku a další věci související s hratelností . VU1 se běžně používá pro polygonové transformace, osvětlení a další výpočty související s vykreslováním.

Navzdory významným rozdílům od PhysX lze VP0 považovat za ranou omezenou implementaci fyzického procesoru. Jeho sada funkcí a umístění na mikroprocesorovém systému má za cíl urychlit úlohy aktualizace stavu hry, včetně fyziky a umělé inteligence ; VU0 může vyložit centrální část "Emotion Engine". Jako digitální signálový procesor je však VU0 mnohem více závislý na hlavním procesoru a nemůže implementovat úplné fyzické API . To je důvod, proč VU0 nemůže být klasifikován jako PPU.

Jeho použití je podobné použití enginu Havok FX nebo akcelerátoru fyziky GPU v tom, že zdroje externí univerzální jednotky s pohyblivou řádovou čárkou fungující jako grafický nebo fyzický akcelerátor doplňují zdroje CPU.

Buněčný procesor jako PPU

Procesor STI Cell , který se používá v sedmé generaci herní konzole Sony PlayStation 3 , má podobnou strukturu jako procesor Ageia PhysX. Design procesoru byl vytvořen s ohledem na úvahy podobné Ageia PhysX. Na rozdíl od ATI/NVidia GPGPU a podobně jako PhysX je konstrukce Cell navržena se zaměřením na to, aby každému paralelnímu vláknu poskytla větší pracovní sadu , více mezivláknové komunikace a ovládání než konvenční CPU . Tento design je velmi vhodný pro fyzické výpočty.  

Termín "PPU" se nepoužívá k popisu Cell, ale přichází spolu s marketingovým rozdílem: aliance STI Design Center prodává procesor pro širokou škálu neherních vestavěných aplikací; a dokonce jako součást PlayStation 3 je schopen používat SPE podobné DSP ( Synergistic Processing Elements  - Synergistic Processing Element) pro zpracování vertexů ( angl  . vertex processing ), zvuk, dekompresi a další úkoly.  

Havok FX

Fyzikální engine Havok SDK je hlavním konkurentem enginu PhysX SDK. Používá se ve více než 150 hrách, včetně her jako Half-Life 2 , The Elder Scrolls IV: Oblivion a Dead Rising . [osm]

Aby mohl konkurovat fyzickému procesoru PhysX, byl vyvinut koncept Havok FX , jehož hlavní podstatou bylo využití výkonu grafických karet k urychlení určitých fyzických výpočtů. Havok FX měl být použit pouze na počítačích vybavených alespoň dvěma grafickými kartami připojenými pomocí NVIDIA SLI nebo ATI Crossfire . Současně musela být jedna grafická karta z tohoto balíčku zcela přidělena pro fyzické výpočty. [9]

Havokovo řešení rozděluje všechny fyzikální simulace na fyzikální efekty a fyziku „hratelnosti“. Fyzikální efekty (prach, malé úlomky a úlomky z výbuchů, oheň) jsou zpracovávány pomocí GPU na grafické kartě jako instrukce Shader Model 3.0 (Shader Model verze 3.0). Fyziku „hratelnosti“ řeší CPU běžným způsobem. Důležitý rozdíl mezi těmito dvěma je, že fyzické efekty neovlivňují hratelnost hry; naprostá většina fyzických operací je stále prováděna ve standardním softwaru CPU. Tento přístup se výrazně liší od PhysX SDK enginu, který přesměrovává všechny současné fyzikální výpočty na kartu PhysX.

Od té doby , co Intel koupil Havok 15. září 2007, byl Havok FX zrušen. Předpokládalo se, že Intel zmrazí projekt hardwarové podpory enginu na grafických kartách svého konkurenta AMD a zaměří se na optimalizaci enginu pro své vícejádrové CPU. [10] [11] [12]

20. března 2009 se objevila zpráva, že na každoroční akci Game Developers Conference 2009 AMD a Havok předvedou fyzikální zrychlení grafickými kartami Radeon . Terry Makedon , produktový  manažer ATI Catalyst , řekl, že AMD na GDC předvede svou strategii „ATI GPU Physics“ a provede související demonstraci. AMD použije k akceleraci Havok programovací jazyk OpenCL , jehož kompilátor je součástí softwarového balíku ATI Stream SDK. [13] [14] [15] [16]

Jak bylo slíbeno, AMD a Havok uspořádali fyzikální demo na GDC 09. Poprvé byla demonstrována schopnost spustit "Havok Cloth" na rozšíření OpenCL. Bylo uvedeno, že pro výpočty tohoto subsystému je nutný grafický procesor AMD s podporou OpenCL a AMD Stream. Bylo také uvedeno , že se Havok zaměřuje na nejnovější vícejádrové procesory Phenom od AMD . [17] [18] [19]

Odkazy na sekce

GPU vs PPU

Díky vývoji konceptu GPGPU jsou GPU stále vhodnější pro úlohy, které jsou určeny pro fyzické procesory. DirectX 10 přidává do GPU celočíselné datové typy ,  sjednocenou architekturu shaderů a geometrické shadery , které umožňují GPU zpracovávat širší škálu algoritmů . NVidia CUDA poskytuje komunikaci mezi vlákny a pracovní prostor ve stylu zápisníku spojený s vlákny .   

GPU jsou však navrženy pro práci s 3D počítačovou grafikou. Mají delší latenci, pomalejší streamy, práci s texturami a framebufferem .  To je odlišuje od Ageia PPU a Cell jako méně vhodné pro fyzikální modelování.

Paralelní programovací systém Sieve C++ podporuje PPU, což ukazuje, že čip Ageia PhysX by byl vhodný pro úlohy typu GPGPU.

Odkazy na sekce

Intel Larrabee & AMD Fusion

Očekává se, že Larrabee od Intelu  , vícejádrová implementace architektury x86 s optimalizovanou šířkou pásma, bude pro roli fyzického procesoru vhodná . Stejně jako procesor Cell i Larrabee svými parametry spadá mezi CPU a GPU. Larrabee je navržen pro všeobecné účely víceúlohové vícevláknové zpracování na rozdíl od specializovaného vysoce výkonného interního zpracování. Intel potvrdil, že architektura paměti Larrabee nebude používat dočasné vyrovnávací paměti jako Cell nebo Ageia PhysX; místo toho bude architektura paměti blíže k normální hierarchii mezipaměti CPU. Larrabee však bude mít rozšíření umožňující HPC (s největší pravděpodobností kompletní náhrada pokynů pro správu mezipaměti).

V roce 2008 společnost AMD oznámila svůj projekt AMD Fusion . AMD Fusion bude procesor, který kombinuje centrální procesor x86-64 a grafický procesor založený na nejnovějších modelech řady Radeon na jediném čipu . Budou sdíleny různé zdroje procesorů AMD Fusion , jako je hierarchická mezipaměť. Tato budoucí konfigurace bude pravděpodobně vhodná i pro roli PPU.

Poznámky

  1. Nicholas Blachford. Lets Get Physical: Inside The PhysX Physics Processor  (anglicky) (2006). Získáno 10. června 2014. Archivováno z originálu 14. července 2014.
  2. Ben Hardwidge. Nvidia nabízí podporu PhysX pro AMD / ATI  (anglicky)  (downlink) . custompc.co.uk (10. března 2008). Získáno 30. března 2009. Archivováno z originálu 11. října 2008.
  3. Pavel "xAnder" Shubsky. Ovladač NVIDIA WHQL pro PhysX – začátek srpna (downlink) . Hazardní hry (24. července 2008). Datum přístupu: 27. července 2008. Archivováno z originálu 28. července 2008. 
  4. BlackCat. PhysX je hacknutý a již není exkluzivní pro karty NVIDIA . IXBT.com (28. června 2008). Získáno 9. července 2008. Archivováno z originálu 29. června 2009.
  5. Pavel "xAnder" Shubsky. NVIDIA otevře podporu PhysX pro ATI Radeon? (nedostupný odkaz) . Hazardní hry (9. července 2008). Získáno 9. července 2008. Archivováno z originálu 17. května 2013. 
  6. NVIDIA vydává ovladač pro hardwarovou podporu PhysX . GameDev.ru (15. srpna 2008). Datum přístupu: 27. října 2008. Archivováno z originálu 5. ledna 2012.
  7. Vinnie je vedoucím technických služeb pro XFX Europe. Fyzika téměř zdarma . RusDoc.ru (14. října 2008). Získáno 19. října 2008. Archivováno z originálu 5. ledna 2012.
  8. Hry využívající Havok (downlink) . Získáno 16. října 2008. Archivováno z originálu 18. dubna 2012. 
  9. Informace o produktu Havok FX (downlink) . Získáno 16. října 2008. Archivováno z originálu 2. března 2007. 
  10. Anton Šilov. GPU Physics je prozatím mrtvá, říká šéf vývojářských vztahů AMD, hlavní výkonný ředitel Nvidie, předpovídá „negativní synergie“ s akvizicí společnosti Intel Havok  (  nepřístupný odkaz) . X-bit labs (19. listopadu 2007). Získáno 27. února 2011. Archivováno z originálu 16. února 2012.
  11. Anton Šilov. Intel získá  Havok . Bit-tech (15. září 2007). Získáno 27. února 2011. Archivováno z originálu 16. února 2012.
  12. Arseny Gerasimenko. Intel oznámil akvizici společnosti Havok . 3DNews (17. září 2007). Získáno 27. února 2011. Archivováno z originálu dne 2. listopadu 2009.
  13. Ben Hardwidge. AMD příští týden na GDC předvede fyziku GPU  . Bit-tech (20. března 2009). Získáno 23. března 2009. Archivováno z originálu 16. února 2012.
  14. Alexandr Šemetov. Fyzikální akcelerace s AMD GPU se blíží . 3DNews (23. března 2009). Získáno 23. března 2009. Archivováno z originálu 26. března 2009.
  15. BESS!. AMD na GDC2009 (nedostupný odkaz) ukáže "fyzikální akceleraci" ve svých GPU pomocí Havok API . iXBT (24. března 2009). Získáno 24. března 2009. Archivováno z originálu 3. července 2017. 
  16. Pavel Šubský. AMD předvede fyzikální zpracování . Hazardní hry (časopis) (23. března 2009). Získáno 24. března 2009. Archivováno z originálu 31. března 2009.
  17. Pavel Šubský. AMD demonstrovalo fyziku . Hazardní hry (časopis) (27. března 2009). Získáno 27. března 2009. Archivováno z originálu 31. března 2009.
  18. BESS!. AMD a Havok na Game Developers Conference 2009 (odkaz není k dispozici) . iXBT (27. března 2009). Získáno 28. března 2009. Archivováno z originálu 3. července 2017. 
  19. Alexandr Šemetov. Havok a AMD ukázali fyziku OpenCL na GDC . 3DNews (29. března 2009). Získáno 30. března 2009. Archivováno z originálu 30. března 2009.

Odkazy