Nvidia GeForce RTX 2080 & RTX 2080 Ti review: nieuwe generatie gebenchmarkt

238 reacties
3 besproken producten
Inhoudsopgave
  1. 1. Inleiding
  2. 2. Drie modellen: 2070, 2080 en 2080 Ti
  3. 3. Founders Editions en custom kaarten
  4. 4. Turing-architectuur: nieuwe cores, snellere shaders
  5. 5. Snellere caches, sneller geheugen
  6. 6. Rasterization vs. raytracing
  7. 7. Wat is raytracing?
  8. 8. Real-time raytracing
  9. 9. Tensor-cores: slimme trucs met AI
  10. 10. Nvidia's marketing in de hoogste versnelling: RTX-Ops
  11. 11. RTX-technologie: welke games?
  12. 12. Andere nieuwe rendermogelijkheden
  13. 13. Ondersteuning voor video en monitoren
  14. 14. SLI in het nieuw en overklokken voor dummy's
  15. 15. Testprocedure
  16. 16. Benchmarks: 3DMark Firestrike / Timespy
  17. 17. Benchmarks: Unigine Superposition
  18. 18. Benchmarks: Assassin's Creed Origins (DX11)
  19. 19. Benchmarks: Battlefield 1 (DX12)
  20. 20. Benchmarks: F1 2018 (DX11)
  21. 21. Benchmarks: Far Cry 5 (DX11)
  22. 22. Benchmarks: Forza Motorsport 7 (DX12)
  23. 23. Benchmarks: Ghost Recon: Wildlands (DX11)
  24. 24. Benchmarks: GTA V (DX11)
  25. 25. Benchmarks: Rise of the Tomb Raider (DX12)
  26. 26. Benchmarks: The Witcher 3: Blood & Wine (DX11)
  27. 27. Benchmarks: Total War: Warhammer II (DX12)
  28. 28. Benchmarks: Wolfenstein II: The New Colossus (Vulkan)
  29. 29. HDR
  30. 30. Benchmarks: Hardware.Info GPU Prestatiescore 2018-2
  31. 31. Testresultaten: Stroomverbruik
  32. 32. Testresultaten: Geluidsproductie
  33. 33. Conclusie
  34. 3 besproken producten
  35. 238 reacties

Real-time raytracing

Eerst en vooral: games volledig via raytracing berekenen ligt nog jaren in de toekomst. Zo'n tien jaar geleden deed Intel al een poging, maar destijds haalde men met de snelste desktop-processors nog maar 17 beelden per seconde op een resolutie van 256x256 pixels in de toen al antieke game Quake 4. Je zou zeggen dat het nu na tien jaar ontwikkeling veel sneller zou moeten gaan, maar tegelijkertijd willen we ook games met graphics die veel complexer zijn dan die van Quake 4, met veel meer lichtbronnen. Hoewel we tien jaar geleden in al ons enthousiasme nog schreven dat volledig ray-traced games in het verschiet lagen, zijn we daar nu een stuk voorzichtiger over.

Wellicht is een game volledig ray-tracen ook wel een doel dat op dit moment helemaal niet zo nuttig is om na te streven. Voor de meeste zaken is rasterization immers een prima en veel efficiëntere methode. Het is uitstekend mogelijk om beide technieken hybride toe te passen, bijvoorbeeld door een 3D-scène in de basis via rasterization te renderen en daarna bepaalde onderdelen, zoals bijvoorbeeld de shaduwen en/of reflecties, door middel van raytracing toe te passen. Dat is wat Nvidia met de RTX-kaarten mogelijk maakt.

Daarvoor zijn de twee nieuwe onderdelen in de chips aanwezig. De RT-cores versnellen het proces van het doorrekenen van de lichtstralen. Hoe dat precies in z'n werk gaat, leggen we hieronder uit. Er is ook werk voor de zogenaamde Tensor-cores. Zelfs de GeForce RTX 2080 zal in de regel niet snel genoeg zijn om bepaalde effecten volledig (lees: alle rays volledig doorgerekend) af te werken. In de praktijk zullen de RT-cores een beperkt tijdbudget per scène krijgen (lees: een paar milliseconden) en daarin zoveel mogelijk rays doorrekenen. Dan kan het zijn dat resultaten onvolledig c.q. een beetje korrelig zijn. De Tensor-cores kunnen op basis van AI-algoritmes dat echter weer corrigeren. Dit is een techniek die men denoising noemt. Zo wordt games renderen anno 2018 dus een samenwerking van shader-cores, RT-cores én Tensor-cores.

Werking van de RT-cores

De RT-cores die het ray-tracen versnellen hebben in de praktijk slechts één simpele taak, namelijk het volgen van lichtstralen en berekenen waar die een object raken. Alle overige taken binnen het raytracing principe (zoals het berekenen van reflecties) worden niet door de RT-cores gedaan, maar door de shader cores. Ofwel, aan enkel en alleen RT-cores heb je eigenlijk niet. Het doorrekenen van de stralen en bepalen van de punten waar deze objecten raken is wel verreweg het meeste en zwaarste werk binnen het hele raytracing algoritme.

Hoe weet Nvidia dit nu te versnellen? Door een algoritme dat luistert naar de naar Bouding Volume Hierarchy ofwel BVH. Zonder dit algoritme toe te passen zou je bij het traceren van een lichtstraal alle driehoeken van alle objecten moeten nalopen om te berekenen welke driehoek en dus welk object als eerste wordt bereikt door de straal en waar deze dus eindigt. Voor het BVH-algoritme worden alle objecten in een 3D-scène allereerst opgedeeld in een beperkt aantal vrij grote blokken of kubussen. De objecten in elk van die blokken worden weer verder opgedeeld in een aantal kleinere blokken. Elk van die kleinere blokken word op hun beurt weer opgedeeld in nog kleinere blokken en zo verder, totdat je uiteindelijk blokken met een overzichtelijk aantal objecten erin overhoudt.

Zodra een straal wordt gevolgd, hoeft in eerste instantie alleen maar bepaald te worden in welk hoofdblok deze eindigt. Daarna wordt binnen dat hoofdblok bepaald in welk subblok de straal eindigt en zo gaan het algoritme recursief verder totdat het uiteindelijke object gevonden is. Op die manier is er telkens maar een beperkte dataset benodigd en kan dus relatief snel het eindpunt van lichtstralen bepaald worden. Is dat eindpunt bepaald, dan wordt het werk doorgeschoven naar de conventionele shader cores om reflecties en kleuren te berekenen.

Eindpunten voor lichtstralen berekenen volgens dit BVH-trucje kan ook prima met conventionele cores, maar de speciale RT-cores die puur en alleen voor dit doel gemaakt zijn kunnen het veel sneller. Om dat in perspectief te zetten: de shader cores van de de GeForce GTX 1080 Ti (tot vandaag de snelste videokaart voor consumenten) kunnen volgens Nvidia 1,2 gigarays per seconde verwerken, ofwel 1,2 miljard lichtstralen per seconde doorrekenen. De RT-cores in de GeForce RTX 2080 Ti doen 10,9 gigarays per seconde ofwel 10,9 miljard lichtstralen per seconde, bijna een factor 10 meer. Plus: de shader cores blijven beschikbaar voor andere taken!

Gebruiksdoelen

Waarvoor kunnen de raytracing technieken nu gebruikt worden? We schreven het al, in de praktijk zijn schaduwen en reflecties de toverwoorden. Schaduwen zijn nog het eenvoudigst: als je vanuit iedere beeldschermpixel via raytracing al eens berekend of er wel of niet een directe lichtstraal bestaat vanuit ieder lichtpunt, heb je met een complexiteit van aantal pixels maal aantal lichtpunten al een zeer accurate invulling van schaduwen. Bovendien hoeven schaduwen niet met de hoogst mogelijke nauwkeurigheid doorgerekend te worden; de Tensor-cores en de denoising algoritmes doen de rest. Je kunt dus prima een volledige scene via rasterization berekenen - waarbij je de ook al niet bepaald simpele trucs om shaduwen te faken overslaat - en daarna accurate schaduwen via raytracing toevoegen. Het is één van de zaken waarvoor de ontwikkelaars van de nieuwe Tomb Raider game Nvidia's raytracing technieken inschakelen.

Realistische reflecties vragen heel wat meer raytracing rekenkracht, maar zorgen zo mogelijk voor een nog groter wow-effect. Nvidia's demonstratie van de RTX-technologieën in de toekomstige Battlefield V game is naar onze mening zeer indrukwekkend. We zien reflecties van explosies in glimmende auto's, we zien kloppende reflecties van de omgeving in de ramen van trams en winkelpuien en wanneer je kijkt op de motorkap van een geparkeerde auto of in een plas water kun je zien dat er een vliegtuig over gaat. Met conventionele 3D-rendering is dit allemaal onmogelijk - of je moet zoveel trucs toepassen om het te simuleren, dat het uiteindelijk qua prestatieniveau ook onmogelijk wordt. Ook hier geldt, het merendeel van wat je ziet wordt op conventionele wijze gerenderd, enkel voor de reflecties wordt raytracing gebruikt. Hoewel dat een enorme berg rekenwerk is, is het ook hier tegelijkertijd weer beperkt. Het aantal reflectieve objecten (en de grootte daarvan ten opzichte van het hele scherm) is beperkt en ook hier geldt dat alle berekeningen niet per se met de hoogste mogelijke nauwkeurigheid hoeven te gebeuren. Reflecties kunnen prima wat minder scherp zijn en daarnaast lossen de AI-algoritmes veel op.

De nieuwe Tomb Raider gaat RTX gebruiken voor schaduwen, de nieuwe Battlefield voor reflecties. Zijn beide games hiermee volledig fotorealistisch? Nee, nog verre van; het liefst zouden we zien dat games beide technieken gaan toepassen. Je kunt er een grote discussie over voeren hoeveel realistische schaduwen en/of realistische reflecties toevoegen aan de algehele gamebeleving, maar zelfs de grootste cynicus zal moeten toegeven dat beide games er veel beter uitzien dan we tot nu toe normaal vinden.

Niet Nvidia-only

In het hele stuk over raytracing praten we tot nu toe de hele tijd puur en alleen over Nvidia. Mag je hieruit concluderen dat dit hele realtime raytracing gebeuren een Nvidia-only techniek is zoals Nvidia Gameworks? Nee, gelukkig niet.

Ondersteuning voor real-time raytracing werd kort geleden al aangekondigd door Microsoft en wordt onderdeel van de volgende update voor DirectX 12, die komt met de nieuwe Windows 10 versie, die in september of oktober uitgebracht zal worden. DirectX Raytracing (ofwel afgekort DXR) is een open standaard waar ook andere gpu-fabrikanten op kunnen inhaken. Sterker nog, binnen DirectX bestaat een fall-back mogelijkheid om de DXR-berekeningen te laten uitvoeren door conventionele shader-cores en/of CPU-cores, al kun je er gerede twijfels bij hebben of er überhaupt een scenario denkbaar is waar dat een goed idee is. Mocht AMD met een gpu coming die raytracing kan versnellen, dan kun je er vanuit gaan dat deze ook gewoon gebruik zal maken van de DirectX-implementatie, in dit geval is Nvidia simpelweg de eerste.

Wat de Nvidia RTX-technologie in feite doet is op driver-niveau de DXR-instructies opvangen en deze dan via de eigen hardwareversnelling uitvoeren. Game-developers programmeren dus niet voor Nvidia RTX, maar voor DirectX. Gelukkig maar.

Overigens is AMD ook met software bezig om haar bestaande gpu's - zonder daarvoor specifiek bedoelde cores - raytracing algoritmes te laten versnellen. Maar zoals we uit AMD's eigen documentatie mogen opmaken, komt men daarmee op orde grootte honderden miljoenen rays per core, dus bij lange na niet de 10 miljard lichtstralen per seconde die de RTX 2080 Ti naar verluidt kan berekenen. Dat raytracing onderdeel uit gaat maken van de toekomst van PC-gaming, daar is vriend en vijand het over eens.


3 besproken producten

Vergelijk alle producten

Vergelijk   Product Prijs
Nvidia GeForce RTX 2070 8GB

Nvidia GeForce RTX 2070 8GB

  • TU106
  • 2304 cores
  • 1410 MHz
  • 8192 MB
  • 256 bit
  • DirectX 12 fl 12_1
  • PCI-Express 3.0 x16
Niet verkrijgbaar
Nvidia GeForce RTX 2080 8GB

Nvidia GeForce RTX 2080 8GB

  • TU104
  • 2944 cores
  • 1515 MHz
  • 8192 MB
  • 256 bit
  • DirectX 12 fl 12_1
  • PCI-Express 3.0 x16
Niet verkrijgbaar
Nvidia GeForce RTX 2080 Ti 11GB

Nvidia GeForce RTX 2080 Ti 11GB

  • TU102
  • 4352 cores
  • 1350 MHz
  • 11264 MB
  • 352 bit
  • DirectX 12 fl 12_1
  • PCI-Express 3.0 x16
Niet verkrijgbaar
0
*