Premiär! Fyndchans i SweClockers Månadens Drop

Mätning av System latency -- Nvidia Reflex

Permalänk
Medlem

Mätning av System latency -- Nvidia Reflex

Hej alla! Jag har senaste månaderna labbat en del med att testa System latency från klick till skott. När Nvidia Reflex släpptes den 17 september så blev det ett konkret case att mäta upp.

Nvidia Reflex är tänkt att minska System latency vid GPU-bound scenarios. Eller åtgärda problemet med ökad latency kanske man skulle kunna säga. Nvidia Reflex finns från och med GeForce 456.38 Game Ready Driver som släpptes 17 september och för de spel som programmerats att använda Reflex SDK, till att börja med Fortnite och Valorant. Nvidia Reflex ska vara implementerat för grafikkort från och med GeForce GTX 900 Series.

System latency mäts från musklick till att ett skott avfyras. Musklicket indikeras med en LED kopplad via en längre sladd till vänster musknapp. LEDen hängs över bildskärmen. Filmning med Samsung S7 Edge i 240 FPS.

Längre ner finns bilder med testresultat och lite mer tekniskt om testerna.

Sammanfattningsvis ser Nvidia Reflex ut att fungera som tänkt. System latency sänks rejält när Nvidia Reflex aktiveras, eller om man så vill uttrycka det återställs till den nivå där den bör vara. System latency blir alltså inte lägre jämfört med då systemet inte är GPU bound med några procent lägre GPU-belastning. Positivt är att man faktiskt får nytta av fulla GPU-kapaciteten, att det går att köra GPU-bound utan ökad System latency, och att man inte behöver finlira med grafikinställningar, FPS-limits etc för att undvika max GPU load.

Intressant är även att jämföra med Nvidias “Low Latency Mode” i läge “On” som minskar antalet “pre-rendered frames” när FPS faller under den FPS limit som satts in-game eller på annat sätt som i Nvcp eller RTSS. “Ultra”-läget har lite annan funktion, och begränsar dessutom FPS till strax under under skärmens refresh rate när G-sync och V-sync är på.

>>> Skulle testat och lagt in bild på detta, men Nvidia Reflex slutade att fungera efter kvällens uppdatering av Fortnite.
>>> Tweet från FortniteStatus här: https://twitter.com/FortniteStatus/status/1308860497668825088
>>> We’re aware NVIDIA Reflex is not properly enabled in 14.20 for available drivers and we’ll be resolving this with an update in the near future...får återkomma om detta...håhåjaja.

Nu sitter ju inte alla och trimmar grafikinställningar och sätter FPS-limiters så GPU körs på säg 90-95% för att undvika diverse konstigheter som kan uppstå vid max load, eller om man kanske upplevt högre System latency. Men att nu kunna köra GPU på max utan att tänka lika mycket på inställningarna borde vara välkommet. Så länge som det inte uppkommer andra otrevligheter pga max GPU load förstås. För de som i dagsläget kör GPU-bound intet ont anandes blir det i alla fall en välkommen sänkning av latency.

Man kan som sagt undvika att GPU belastas max är att begränsa GPU-belastningen till kanske 90% genom FPS-limiter (helst in-game) och lägre grafikinställningar. Men man vet ju ändå inte riktigt om det finns tillräckligt med kapacitet när spelet blir som mest intensivt och krävande. Nvidia Reflex lovar gott, men real-world testing återstår.

Lite bakgrund till testerna och mer om tekniken
Det har sedan en tid varit kul att försöka optimera inställningar så att det ska flyta på. Snabbt, smooth och snyggt. Läst på nätet, kollat videos m.m. För några månader sedan bestämde jag mig för att försöka mäta system latency för att kunna optimera bättre och mer objektivt och att verifiera att det som skrivs på nätet och påstås på Youtube faktiskt stämmer.
Beteendet skiljer sig såklart åt mellan olika spel, så inställningarna behöver optimeras individuellt och System latency mätas.

Mus med LED och filmning i 240 FPS med Samsung S7 Edge. Först så var det ju spännande att se hur det skulle gå att koppla en LED till musknappen, och sedan ifall det skulle duga att filma med Samsung S7’s 240 FPS slow motion. 1000 FPS kamera vore förstås proffsigt (och dyrt). Med 240 FPS är det i alla fall bara drygt 4ms mellan varje frame och genom att filma 8 skott och ta medelvärde på tiderna så borde det duga för att kunna jämföra mellan olika grafikinställningar m.m. Och ifall Samsung s7 inte skulle ge riktigt korrekta filmer så beter den sig förhoppningsvis ganska lika åt varje gång. Några jämförelser med uppmätt System latency stämmer väl överens med värden i tester på nätet.

En mus kompletterades med en blå LED i änden på en lite längre sladd så den går att hänga ovanpå bildskärmen.
LEDen lyser när mikrobrytaren för vänster musknapp är nedtryckt. När mikrobrytaren sluter så flyter ström från USB +5V → motstånd → LED → mikrobrytaren → USB 0V.

Så här kan det ut:

Samsung S7 Edge Slow Motion-läge 240 FPS.
Se exempel med ett skott.

Davinci Resolve används sedan för att räkna frames från klick till skott. Ca 8 klick per test, medelvärde för antal frames beräknas, och omvandlas till [ms].

Testerna nedan är gjorda med Fortnite, där Nvidia Reflex finns att välja för både DirectX 11 och DirectX 12. För dessa tester har DirectX 11 använts.

Testsystem 4k 60Hz
Bildskärm: 4k 60 Hz - Acer 27" H277HU - med Freesync, dock inte validerad av Nvidia.
Dator: i9-9900K Stock / RTX 2070 / Asrock Phantom Gaming Z390 ITX/AC

Testsystem 2k 144Hz
Bildskärm: 1920x1080 144Hz - AOC 24G2U
Dator: i5-7600 / GTX 1060 6GB

GPU-bound 41 FPS - Nvidia Reflex On/Off (4k 60Hz)

GPU-bound 56 FPS - Nvidia Reflex On/Off (4k 60hz) -- jämfört med icke GPU-bound med samma grafikinställningar men med något sänkt FPS med hjälp av FPS-limiter (GameUserSettings.ini)

Samma som ovan men med G-sync aktiverat. Som väntat ingen nämnbar skillnad. Nvidia Reflex är ju ett samarbete mellan spelmotor och GPU.

GPU-bound 45 FPS - Nvidia Reflex On/Off (4k 60hz) -- jämfört med icke GPU-bound med lägre grafikinställningar men med samma 45 FPS satt med FPS-limiter i (GameUserSettings.ini)

Test vid något högre FPS på en 144Hz skärm. Custom/High/Epic settings (i5-7600/GTX 1060/AOC 24G2U)

Länkar och klipp
https://www.nvidia.com/en-us/geforce/news/reflex-low-latency-...
"...the Reflex SDK will keep the latency low by not letting the work for the GPU queue up. "

https://www.nvidia.com/en-us/geforce/news/fortnite-rtx-on-ray...
"In Fortnite, we’ve worked with Epic to incorporate our NVIDIA Reflex Low Latency SDK, which helps the game engine efficiently submit rendering work to your GPU, reducing system latency and improving the responsiveness of gameplay."

"At the time of the Reflex SDK announcement, the following games plan to support NVIDIA Reflex with our next Game Ready Driver on September 17th, 2020: Fortnite, and Valorant. Additionally, the following games have announced support for NVIDIA Reflex coming soon: Apex Legends, Call of Duty: Black Ops Cold War, Call of Duty: Warzone, Cuisine Royale, Destiny 2, Enlisted, Kovaak 2.0, and Mordhau"

https://www.epicgames.com/fortnite/en-US/news/a-new-light-for...
"By integrating directly in Fortnite, Reflex Low Latency Mode aligns game engine work to complete just-in-time for rendering, eliminating the GPU render queue and reducing CPU back pressure in GPU intensive scenes."

https://devblogs.microsoft.com/directx/directx12-and-fortnite...

https://www.nvidia.com/en-us/geforce/forums/game-ready-driver...

Minor changes
Permalänk
Medlem

Grymt jobbat! Stort tack!

Visa signatur

Intel i9 10900k @5,2Ghz, MSI Z590 Gaming EK-X, G-Skill Elite Royal 4x8gb @3600mhz cl16, Asus TUF 3080ti OC, 2xSamsung 960 EVO 1Tb M2, Seasonic Prime 1300W Platinum, EK D5 Revo, 2x360mm EK SE, Acer X34P 1440p 120hz IPS G-sync, CSFG The Crow
Galleri Ancalagon The Black | Galleri The White Crow

Permalänk
Medlem

Intressant, det är också vad det verkar ett pålitligt sätt att mäta IRL latens.

Dock värt att nämna att senaste Geforce Experience Beta med drivrutin 456.55 kan visa latens i HUD
(visar även 99% percentile och temps/spänningar = bra!)

Med påslaget Low Latency Mode i ULTRA ligger jag mer eller mindre konstant på omkring 30ms(2070 Super), verifierat i flera timmars spelande. Det visar dock kanske inte den absoluta latensen ut från skärmen till ögat, men man kan jämföra latensen med sig själv i olika inställningar.

(det är sådana här små nice finesser som man kommer att sakna om man går över till AMD)

Visa signatur

|| R9 7950X MSI PRO X670-P WIFI 32GB-DDR5-6400c32 MSI RTX4080 Ventus 3X OC || CORE i9 12900KF MSI Z690 Tomahawk WIFI DDR4 32GB-3600c16 Gear1 TUF RTX3080 OC V2 || R7 5800X3D X570S CH8 Extreme 32GB-3800c18 Gigabyte RTX3080 GAMING OC || R9 5900X(B2) B550-F 32GB-3800c18 EVGA RTX3070 FTW Ultra || R9 3900X X470-Prime Pro 32GB-3200c16 MSI RTX2070 Super ||

Permalänk
Medlem

Bra att få det i text-format, brukar titta på battle(non)sense och är inte alltid lätt att följa med.
Vet att han testade ett par spel och vissa var mer känsliga för GPU-bottleneck än andra.
Har capat BF1, gissar att det lider extremt mycket när GPUn flaskar.

https://m.imgur.com/gallery/lNUh0uV

Permalänk
Medlem

Härligt att det här börjar få mer traction. Battlenonsense är faktiskt inspirationen till Nvidia Reflex.
https://youtu.be/QzmoLJwS6eQ

Vi behöver mer testing och optimering för både internal latency men också tickrates och serversidan av det hela. Mer sånt här content till världen \o/

Permalänk
Medlem
Skrivet av the squonk:

(det är sådana här små nice finesser som man kommer att sakna om man går över till AMD)

Radeon drivisarna har implementerat en liknande funktion redan sen några månader tebax
https://www.amd.com/en/technologies/radeon-software-anti-lag

Visa signatur

Phanteks p400s +mesh +TG |Seasonic Focus+ Gold 750W |Asus X570-F Strix |Ryzen 5 3600X @stock +Corsair H100i platinum |16GB DDR4 3200mhzC14 Gskill FlareX |Sapphire Vega56 Pulse @1650Mhz/950Mhz Samsung HBM |Samsung 970 EVO PLUS 500GB nvme

Permalänk
Medlem

Genialt enkel lösning med LED lampa på mus. Snyggt.

Permalänk
Skrivet av Neomeow:

Radeon drivisarna har implementerat en liknande funktion redan sen några månader tebax
https://www.amd.com/en/technologies/radeon-software-anti-lag

Radeon Anti Lag är deras svar på Nvidia Ultra-Low Latency Mode, något annat än Nvidia Reflex.

Edit: För att inte bara "hävda" något så kan man se på battle(non)sense för bättre förklaring: https://youtu.be/QzmoLJwS6eQ
Radeon Anti-Lag och Nvidia Ultra-Low Latency Mode ger samma typ av resultat och lider av samma typ av problem. Det blir bättre resultat vid maximal belastning på GPU:n men förvärrar resultaten annars. Poängen med Nvidia Reflex är att få fördelen utan nackdelen.

Permalänk
Medlem

Relaterat (verifiering av Nvidias mätare + rigorös genomgång av testmetodik):

Visa signatur

5950X, 3090

Permalänk
Medlem
Skrivet av Apothysis:

Radeon Anti Lag är deras svar på Nvidia Ultra-Low Latency Mode, något annat än Nvidia Reflex.

Edit: För att inte bara "hävda" något så kan man se på battle(non)sense för bättre förklaring: https://youtu.be/QzmoLJwS6eQ
Radeon Anti-Lag och Nvidia Ultra-Low Latency Mode ger samma typ av resultat och lider av samma typ av problem. Det blir bättre resultat vid maximal belastning på GPU:n men förvärrar resultaten annars. Poängen med Nvidia Reflex är att få fördelen utan nackdelen.

Nice, man tackar för utförlig info

Visa signatur

Phanteks p400s +mesh +TG |Seasonic Focus+ Gold 750W |Asus X570-F Strix |Ryzen 5 3600X @stock +Corsair H100i platinum |16GB DDR4 3200mhzC14 Gskill FlareX |Sapphire Vega56 Pulse @1650Mhz/950Mhz Samsung HBM |Samsung 970 EVO PLUS 500GB nvme

Permalänk
Medlem

Antar att latency mellan musklick och att LED lyser är försumbar i detta sammanhang.

Kul test och bra genomförande!

Visa signatur

Windows 11 Pro | Intel i7 8700 | ASUS Prime Z370-P | Corsair 16GB 3000MHz | ASUS GTX 1080 | Fractal Design Define S | Corsair RM750x | Hyper 212 EVO

Permalänk
Skrivet av Joppis:

Antar att latency mellan musklick och att LED lyser är försumbar i detta sammanhang.

Kul test och bra genomförande!

Strömmen rör sig nära nog ljusets hastighet så ja, det blir nog ganska försumbart .

Jävligt coolt test förövrigt!

Permalänk
Rekordmedlem

Intressant, undrar när spelare börjar "kräva" lägre latenser är verkliga vapen, det tar ju faktiskt tid innan en kula lämnar pipan på ett vapen också efter att man påverkat avtryckaren, del är det ju en mekanism som ska röra sig och sedan startar en kemisk process som bygger upp tryck och flyttar ut kulan via pipan och det tar tid det också.
Gamla vapen har betydligt högre latens i verkligheten än datorvapen har men även moderna vapen har en latens.

Visa signatur

R5 5600G, Asus ROG STRIX X470-F Gaming, WD SN850X 2TB, Seasonic Focus+ Gold 650W, Aerocool Graphite v3, Tittar på en Acer ET430Kbmiippx 43" 4K. Lyssnar på Behringer DCX2496, Truth B3031A, Truth B2092A. Har också oscilloskop, mätmikrofon och colorimeter.

Permalänk
Medlem
Skrivet av mrqaffe:

Intressant, undrar när spelare börjar "kräva" lägre latenser är verkliga vapen, det tar ju faktiskt tid innan en kula lämnar pipan på ett vapen också efter att man påverkat avtryckaren, del är det ju en mekanism som ska röra sig och sedan startar en kemisk process som bygger upp tryck och flyttar ut kulan via pipan och det tar tid det också.
Gamla vapen har betydligt högre latens i verkligheten än datorvapen har men även moderna vapen har en latens.
https://youtu.be/ByM4deqMSx0?t=452

"Snabba" vapen ligger väl på 700-1000m/s utgångshastighet, en pipa är som max 100cm, blir väl under 1ms innan kulan lämnar pipan, +"flight time".
Jag vet inte hur fort själva mekanismen rör sig, men det är inte många mm en slagpinne rör sig, tryckstegring(hastighet) på "krut" var ännu värre att lista ut, det anges inte på samma sätt som sprängämnen(m/s).
Så jag tror jag ger upp att hitta det "rätta" svaret på den frågan

Visa signatur

i7 2600k | P8P67Deluxe | Noctua NH-D14 | KFA2 GTX1080 EXOC | Corsair 750W | Corsair Obsidian 800D | Dell U2412M
America's Army: Proving Grounds