MSI
Asus Strix GTX 1070 O8G Gaming: Pascal ve velkém testu
Grafické karty nové architektury Pascal jsou tu s námi už nějakou tu chvilku, ale víte o nich opravdu vše? Dnes se tedy kromě samotné recenze GeForce GTX 1070 v podání společnosti Asus podíváme na zoubek také této nové architektuře grafických karet společnosti Nvidia.
gpureport.cz  Pavel Šantrůček  21.07.2016

OBSAH:
1. Pascal - architektura          
12. Thief          
2. Pascal - nové technologie          
13. Middle Earth: Shadow of Mordor          
3. Asus Strix GTX 1070 O8G Gaming          
14. Alien: Isolation          
4. Asus Strix GTX 1070 O8G Gaming - pokračování          
15. Far Cry 4          
5. Jak budeme testovat          
16. Dying Light          
6. Syntetické testy          
17. GTA V          
7. Testy asynchronních shaderů          
18. The Witcher 3: Wild Hunt          
8. Testy Fast Sync          
19. Teplota, hlučnost a spotřeba          
9. Metro Last Light          
20. Přetaktování          
10. Crysis 3          
21. Závěr          
11. Battlefield 4          
 

Nové technologie

Kromě změn v architektuře přináší nová generace grafických karet Pascal také některé nové technologie. Pojďme se tedy společně na ty nejdůležitější z nich podívat.

Asynchronní shadery

Víme, že grafické karty předcházející generace Maxwell asynchronní zpracování grafických a výpočetních úloh nepodporovaly. Tato nepodpora asynchronního zpracování úloh se tak stala značným hendikepem při využití 3D API nové generace, jako je DirectX 12 nebo Vulkan, kde grafické karty rodiny Maxwell za konkurencí jednoduše zaostávaly.

Pokus o nápravu stavu věcí přináší právě Pascal za pomocí technologie Dynamic Load Balancing a vylepšené podpory Preemption.

 

Preemption

 

Zatímco nový způsob preempce (Pixel Level, Thread Level a Instruction Level), přináší mnohem sofistikovanější a rychlejší přerušení zpracovávané úlohy s nižší prioritou a okamžité spuštění úlohy s prioritou vyšší, Dynamic Load Balancing se zaměřuje na lepší využití výpočetních zdrojů.

 

Dynamic Load Balancing

 

Pokud jsou například zpracovávány dvě úlohy současně, pak výpočetní jednotky, které práci na své úloze ukončily dříve, již nemusí nečinně stát a čekat až jiné výpočetní jednotky dokončí svou práci na úloze druhé, ale můžou jim například s touto náročnější úlohou vypomoci. Čas potřebný na dokončení těchto dvou úloh se tak může celkem výrazně zkrátit. Jak účinné však tyto technologie při zpracovávání asynchronních úloh v reálu budou, si dnes otestujeme také.

 

Simultaneous Multi-Projection

Simultánní multi-projekce je technologií zbrusu novou, která řeší a korekci perspektivního zkreslení objektů umístěných v krajních částech obrazu, při využití širokého zorného úhlu (nejčastěji více monitorů).

 

Simultánní multi-projekce 1

 

Toho je dosahováno tak, že obraz, respektive viewport, do kterého jsou pomocí perspektivní projekce rasterizovány objekty scény, může být rozdělen do více částí (viewportů) a do každého takového viewportu může být obraz promítnut z jiné perspektivy centrálního bodu. V případě technologie Simultaneous Multi-Projection může být obraz rozdělen až na 16 částí (viewports). Například v případě tří monitorů, kdy dva krajní jsou k pozorovateli různě natočeny, je pak možné promítnout obraz pro každý monitor zvlášť pod tím správným úhlem, takže je dosahováno vyššího FOV (Field of View) a také objekty na krajích obrazu nejsou deformovány.

Simultaneous Multi-Projection mají fyzicky na starosti hardwarové jednotky, které jsou umístěny uvnitř Polymorph Engine a které „říkají“ rasterizéru, z jaké perspektivy má aktuálně zpracovávaný trojúhelník (primitive) rasterizovat.

 

Simultánní multi-projekce 2

 

Korekce perspektivního zkreslení a dosažení vyššího FOV však není jediným kladem, který s sebou technologie simultánní projekce přináší. Kromě rozdělení obrazu do 16 viewportů, do kterých je možné rasterizovat primitiva pod různými úhly perspektivy z jednoho centrálního bodu pozorovatele, je možné také provádět rasterizaci z centrálních bodů dvou. Toho je v plné míře využito při práci s virtuální realitou, kde je prováděna projekce obrazu pro každé oko zvlášť.

 

Simultánní multi-projekce 3

 

Simultánní multi-projekce tedy může podporovat projekci obrazu buďto z jednoho, nebo ze dvou centrálních bodů a obraz(y), do kterého jsou primitiva promítána, pak může být rozdělen až do 16 viewportů. Celkem je tedy touto technologií podporováno až 32 viewportů.

 

Single Pass Stereo a Lens Matched Shading

S virtuální realitou také souvisí zbývající dvě technologie Single Pass Stereo a Lens Matched Shading. Technologie Single Pass Stereo umožňuje to, že ačkoliv je obraz zpracováván pro každé oko zvlášť, grafická pipeline nemusí zpracovávat kompletní obraz hnedle dvakrát. Veškeré grafické příkazy od aplikace, procházející přes OS a DirectX včetně geometrické části pipeline na GPU jsou zpracovávány pouze jednou. Ačkoliv je tedy geometrií GPU zpracováván vertex jediný, výstupem geometrického procesu jsou pak vertexy dva, každý náležící jednomu oku VR. Technologie Simultaneous Multi-Projection se pak následně postará o samotnou projekci primitiva do té správné části obrazu (vieportu), toho správného oka. Projekce obrazu je totiž u VR rozdělena do 4 viewportů pro každé oko tak, aby se tento obraz již od samého počátku co nejvíce podobal finálnímu obrazu, obsahujícímu korekci zkreslení optické čočky VR Headsetu.

 

Single Pass Stereo a Lens Matched Shading

 

O finální vzhled obrazu s korekcí optických čoček VR se postará právě technologie Lens Matched Shading.

Díky tomu, že se od samého počátku rasterizace nepracuje s celým (původním) obrazem, ale obrazem upraveným (s menším počtem pixelů), je tak v další fázi pipeline notně ušetřena práce Pixel Shaderu. Společnost Nvidia ve svých dokumentech uvádí dokonce až o 50%.

Simultaneous Multi-Projection, Single Pass Stereo a Lens Matched Shading jsou tedy technologiemi velmi zajímavými a v budoucích aplikacích využívajících virtuální realitu velice slibnými. Nutno ale poznamenat, že tyto technologie nejsou pro hardware transparentní a k jejich využití je tedy vždy potřeba explicitní podpory přímo aplikace.

 

Fast Sync

Poslední technologií, kterou si dnes představíme, je Fast Sync. Fast Sync se stará o prezentaci snímku na monitoru počítače a na rozdíl od výše popsaných nových technologií, je Fast Sync pouze jakousi variací na již mnohem dříve známý OpenGL Triple Buffering. V 3D API Vulkan, je pak tento způsob prezentace snímku nazýván Mailbox.

Klasický Double Buffering pracuje tak, že grafická karta renderuje snímek do tzv. Back Bufferu a druhý buffer s názvem Front Buffer, ve kterém je umístěn vždy snímek předcházející a hotový, slouží výhradně k prezentaci (Scan Out) snímku na monitor počítače. Pokud je snímek v Back Bufferu dokončen, úlohy těchto bufferů se obrátí. Back Buffer se stává Front Bufferem a Front Buffer se zase stává Back Bufferem, do kterého se začne renderovat snímek další. Tak to jde stále dokola. Při tomto způsobu prezentace vzniká tzv. Tearing, tedy jakési „roztržení“ obrazu, které je způsobeno právě prohozením adres Back a Front Bufferů v době, kdy byl prováděn Scan out původního Front Bufferu. Na monitor se tak dostává obraz, který je složený ze dvou či více snímků.

Tearingu lze předejít tím, že prohození (Swap/Flip) Back a Front Bufferů je odloženo do doby, kdy na monitor nejsou zasílána žádná data, tedy v době vertikální synchronizace obrazu (VSync). Tearingu je tak sice zabráněno, ale vznikají zde problémy jiné – Input Latency. Pokud totiž grafická karta renderuje snímky s vyšší snímkovou frekvencí, nežli je obnovovací frekvence monitoru (Refresh Rate) stane se to, že Front Buffer i Back Buffer obsahují hotové snímky a grafická karta nemá kam renderovat snímek další. Grafická karta a vlastně celá pipeline se zastaví, protože musí čekat na uvolnění Back Bufferu do doby vertikální synchronizace obrazu. Snímková frekvence je tak omezena na hodnotu obnovovací frekvence monitoru, což v případě 60 Hz monitorů znamená 60 FPS. Takováto snímková frekvence je však pro některé typy her nedostatečná.

 

Fast Sync

 

Fast Sync funguje tak, že ke klasickému Double Bufferingu přidává ještě další (druhý) Back Buffer s názvem Last Rendered Buffer (LRB). Grafická karta renderuje obraz opět do jednoho z Back Bufferů a Front Buffer opět slouží pouze k prezentaci snímku na monitor počítače. Jakmile je snímek v Back Bufferu dokončen, je tento buffer označen jako LRB a grafická karta začne renderovat nový snímek do Back Bufferu druhého. Když je snímek dokončen i v tomto druhém Back Bufferu, opět je označen jako LRB a následující nový snímek je připravován v Back Bufferu prvním. Takto to jde stále dokola, takže nejnověji dokončený snímek je umístěn vždy v Back Bufferu, který je označen jako LRB. V době vertikální synchronizace obrazu je pak LRB buffer překlopen do Front Buffer a následně zobrazen na monitoru počítače.

U počítačových her s vyšším FPS pak díky tomuto řešení nedochází k Tearingu, grafická pipeline pracuje bez přerušení a snímková frekvence není omezena hodnotou obnovovací frekvence monitoru. To vše je samozřejmě pouze teorie a jak si Fast Sync povede v praxi si dnes otestujeme také.

 

Tak, to byly asi ty nejdůležitější technologie, které s sebou nová architektura grafických karet Pascal přináší. Samozřejmě, Pascal toho přinesl ještě o něco více, jako například podporu HDR, VR Works Audio či nový způsob (ale také omezení) SLI, avšak tyto technologie již nejsou pro dnešní recenzi nijak podstatné. Popis architektury Pascal je tedy za námi, takže si pojďme si konečně představit grafickou kartu Asus Strix GTX 1070 O8G Gaming.

         
Předchozí kapitola   Další kapitola
         
Gigabyte

SPONSORS & PARTNERS

Asus  Alza  MSI  Gigabyte
AMD  Sapphire  Gainward  Nvidia

Copyright (c) 2024 InfoTrade Powered by ASP.NET & MS SQL Server