Vi dekker et av de mest stilte spørsmålene vi ser om PC-spill i dag: Hvor mange bilder per sekund trenger du? Hvis du kjører med samme bildefrekvens som skjermene dine maksimale oppdateringsfrekvens, 60 FPS Er det noen fordel med å kjøre spill på en 60 Hz-skjerm eller med en mye høyere bildefrekvens enn skjermen kan vise? 500 FPS?

For å svare på dette spørsmålet, GPU ve Utsikt Arbeid sammen for å sende rammer til øyeeplene og se hvordan teknologier som Vsync fungerer.

Men som et resultat vil kjøring av spill med ekstremt høye bildefrekvenser, godt over skjermens oppdateringsfrekvens, resultere i en mer responsiv spillopplevelse med opplevd lavere inngangsforsinkelse. Dette er svaret på spørsmålet for de som ikke vil vente til slutten. La oss nå snakke hvorfor.

Redaktørens merknad: Denne funksjonen ble opprinnelig utgitt 2. august 2018. Det er aktuelt og aktuelt i dag som det var den gang, så vi traff det som en del av #ThrowbackThursday-initiativet.




La oss si a se Ved en konstant oppdateringsfrekvens på 60 Hz. Med andre ord er skjermen hver 1/60th sekunder eller hver 16,7 ms. Når du kjører et spill, er det ingen garanti for at GPU-en vil være i stand til å gjengi hver ramme på nøyaktig 16,7 millisekunder. Noen ganger kan det ta 20 ms, noen ganger kan det ta 15 ms, noen ganger kan det ta 8 ms. Dette er den skiftende naturen til spill på GPU.




Med denne varierende gjengivelseshastigheten er det et alternativ for hvordan hver gjengitte ramme sendes til skjermen. Du kan vise den nye rammen fullt ut så snart den er opprettet, kjent som å kjøre spillet "Vsync" eller vertikal synkronisering av, eller vent til skjermen er klar til å oppdateres før du sender den nye rammen kjent som "Vsync on".

Vsync av




Bruk av den første metoden vil føre til at Vsync slår av, rives. Dette er fordi en skjerm ikke kan oppdatere hele bildet umiddelbart, i stedet blir vognen tilbake, vanligvis fra toppen av skjermen til bunnen. I løpet av denne prosessen kan en ny ramme gjøres tilgjengelig fra GPU, og siden vi ikke bruker Vsync, blir rammen sendt til skjermen umiddelbart. Som et resultat, midt i oppdateringen, mottar skjermen nye data og oppdaterer resten av radene på skjermen med de nye dataene. Deretter gjenstår et bilde der den øverste halvdelen av skjermen er fra forrige ramme, og den nederste halvdelen er fra den nye, nylig tilgjengelige rammen.




rive

Avhengig av innholdet som vises, vises dette skillet mellom nye og gamle rammer i en oppdatering som en rive eller synlig linje mellom gamle og nye rammer. Det er mest merkbart i scener i rask bevegelse der det vanligvis er stor forskjell mellom en ramme og den neste.




Vsync har fordelen av å sende en ramme til skjermen når den gjengis, for lav ventetid mellom GPU og skjerm, samtidig som den forårsaker rive. Husk det.

Vsync er på

Alternativ måte å se et bilde på, Vsync er på. Her, i stedet for at GPUen sender den nye rammen til skjermen umiddelbart, stokker den hver ramme som er opprettet til en buffer. Den første bufferen brukes til å lagre den nåværende rammen, og den andre bufferen brukes til å lagre rammen skjermen viser. Den andre bufferen oppdateres ikke når som helst under oppdateringen, så skjermen viser bare data fra en fullstendig gjengitt ramme, og som et resultat blir du ikke koblet fra en oppdatering midt i oppdateringen.




Vsync åpen, nærmere titt

Det eneste punktet der den andre bufferen oppdateres, er blant oppdateringene. For å få dette til å vente, venter GPU til skjermen er i ferd med å oppdateres etter at den er ferdig med å lage en ramme. Deretter krypterer bufferne, begynner å lage en ny ramme, og prosessen gjentas. Noen ganger kan en ramme inneholde flere buffere før den når skjermen, men dette er den generelle kjernen i hvordan Vsync fungerer.

Når GPUen din er for treg til å gjengi en ramme ... stammer den

Det er to problemer med Vsync. For det første, hvis GPU-gjengivelseshastigheten din er for treg til å holde tritt med oppdateringsfrekvensen på skjermen - la oss anta at den bare er i stand til å gjengis ved 40 FPS på en 60 Hz-skjerm - vil GPU ikke gi en full ramme i tide for å møte starten. skjermen gjentas deretter. Dette fører til stamming ettersom noen rammer bare vises én gang, mens andre vises to ganger.

Vsync på: 60Hz skjerm, 200 FPS

Det andre problemet oppstår når GPU-en din er veldig rask og lett kan gjengi en ramme innen oppdateringsfrekvensområdet. La oss si at du kan gjengi ved 200 FPS og opprette en ny ramme hver 5. ms, bortsett fra at du bruker en 60 Hz-skjerm med et oppdateringsvindu på 16,7 ms.

Når vsync er slått på, vil GPUen fullføre neste ramme som skal vises på 5 ms, og deretter vente 11,7 ms før du sender rammen til den andre bufferen som skal vises på skjermen og starter neste ramme. Derfor samsvarer den høyeste bildefrekvensen du får med oppdateringsfrekvensen til skjermen din når Vsync er slått på, da GPU faktisk er "låst" ikke raskere enn oppdateringsfrekvensen.

Nå er det mye forvirring på dette punktet.

Ofte "Å låse GPU for å oppdatere skjermen ved hjelp av Vsync er flott, for hvis den blir raskere enn oppdateringshastigheten, blir disse rammene bortkastet fordi skjermen ikke kan vise dem og alt jeg får er å rive". Mange peker på strømsparing ved å bruke Vsync; GPU-en din trenger ikke å jobbe hardt, det nytter ikke å kjøre med bildefrekvens som er høyere enn skjermens oppdateringsfrekvens, så kjør den på en låst FPS og spar litt strøm.

Vi kan se hvorfor folk ville komme til denne konklusjonen, og det er noen sannhetsbiter der ute, men det er ikke sant generelt. Dette er fordi du ikke tar med når inngangene ble behandlet, og hvor lang tid det tok før disse inngangene skjedde på skjermen.

Vsync-pålogging inkludert

For å forklare hvorfor dette er slik, la oss se på Vsync i diagrammet, men dekk diagrammet med input fra musen og tastaturet, som vanligvis samles hver 1ms. La oss bruke en GPU som kan vise det samme eksemplet ved 200 FPS med en 60 Hz-skjerm.

Med vsync og et enkelt buffersystem, i denne forenklede forklaringen, begynner GPU å lage en ramme som tilsvarer musen din så snart den mottar inngangen på 0 inngang. før du sender den til skjermbufferen ms.

Skjermen tar da litt tid å ta rammen for å gjengi og fysisk oppdatere skjermen linje for linje med den informasjonen.

Vsync-pålogging inkludert

Selv i beste fall ser vi etter en forsinkelse på minst 16,7 ms mellom inngangen din og tidspunktet da skjermen kan begynne å vise deg resultatene av den inngangen.

Vis inngangsforsinkelse, CPU-behandlingstid osv. Ved fakturering kan forsinkelsen mellom inngang og skjermoppdatering være mer enn 50 ms.

Vsync av, 60Hz skjerm inkludert inngang, 200 FPS

La oss se på det lukkede Vsync-diagrammet. GPU viser bilder kontinuerlig, uavhengig av når skjermen oppdateres, og det tar 5 ms å transformere inngangen din til en full ramme. Skjermen kan da begynne å vise den nye rammen umiddelbart, selv om den bare er en del av den rammen. Resultatet er forsinkelsen mellom påloggingen din til spillet, og når skjermen begynner å vise resultatene av denne oppføringen, synker den fra 16,7 ms til bare 5 ms. Og virkelige applikasjoner har ingen ekstra buffere; så raskt, pluss skjermens inngangsforsinkelse.

Og her er hvor du vil få fordelen. I dette eksemplet reduserer du inngangsforsinkelsen til 5 ms, mens Vsync er av på en 60 Hz-skjerm, mens Vsync er minst 16,7 ms om ikke mer.

Selv om skjermen ikke kan vise alle 200 bilder per sekund, hva viser skjermen hver 1/60th Et sekund genereres fra en inngang som er mye nærmere et sekund.

Dette fenomenet gjelder selvfølgelig også skjermer med høy oppdatering. Ved 144 Hz vil du for eksempel kunne se flere bilder per sekund, slik at du får en jevnere og mer responsiv opplevelse generelt. Å kjøre ved 200 FPS med Vsync av i stedet for 144 FPS med Vsync på vil imidlertid gi deg en forskjell mellom 5 ms og 7 ms inngangsforsinkelse.

Nå når du snakker om forskjeller i millisekunder, lurer du sannsynligvis på om du kan se forskjellen i spill.

Avhengig av hvilken type spill du spiller, kan det hende at forskjellen ikke gjør noen forskjell fra noe som er så merkbart. Et fartsfylt spill som CS: GO kjører ved 400 FPS på en 60 Hz-skjerm, og inngangsforsinkelsen er best rundt 2,5 ms, du føler deg mye mer responsiv enn når du kjører de samme bevegelsene ved 60 FPS med 16,7 ms. forsinkelse (eller mer).

Uansett viser skjermen bare en ny ramme 60 ganger i sekundet, slik at den ikke føles så glatt som på en 144 Hz eller 240 Hz skjerm. Men forskjellen i innsatsforsinkelse er enorm; Å kjøre ved 400 FPS lar deg skjerme inngangene dine omtrent 7 ganger raskere, om ikke mer. Prøv det selv, og du må føle forskjellen på respons.

Og vi har ikke tatt denne uttalelsen fra ingenting, faktisk vet Nvidia Vsyncs grenser når det gjelder innsatsforsinkelse, så Rask synkronisering (Kalt alternativ til AMD Forbedret synkronisering). Denne skjermsynkroniseringsteknikken ligner på kombinasjonen av Vsync på og Vsync av som gir det beste fra begge verdener.

Rask synkronisering fungerer ved å legge til en ekstra buffer til Vsync i rørledningen kalt den sist opprettede bufferen. Dette gjør at GPUen kan fortsette å lage nye rammer i den bakre bufferen og bytte til den sist opprettede bufferen når den er fullført. Så, på en skjermoppdatering, skyves den sist opprettede bufferen inn i hurtigbufferen som skjermen får tilgang til.

Rask synkronisering / forbedret synkronisering

Fordelen er at GPUen ikke lenger venter etter at en ramme er fullført for at en skjermoppdatering skal skje, som med Vsync på. I stedet fortsetter GPU å gjengi rammer slik at når skjermen når en ramme i begynnelsen av oppdateringsperioden, blir den rammen gjengitt nærmere oppdateringsvinduet. Dette reduserer inngangsforsinkelsen. Imidlertid, i motsetning til Vsync off-tilstand, tilbyr Fast Sync en fullført ramme til skjermen ved starten av hver oppdatering i stedet for å skyve rammen til skjermen umiddelbart, og det er denne teknikken som eliminerer riving.

Rask synkronisering er bare funksjonell når bildefrekvensen er høyere enn skjermens oppdateringsfrekvens, men den klarer å gi en mer responsiv spillopplevelse uten å rive den. Og selvfølgelig har AMD en ekvivalent som heter Enhanced Sync.

Forhåpentligvis vil denne forklareren fjerne noen av spørsmålene dine om hvorfor det å kjøre et spill over skjermens maksimale oppdateringsfrekvens gir en mer responsiv spillopplevelse, og hvorfor muligheten til å kjøre spill med høyere bildefrekvenser alltid er fordelaktig, selv om det virker. skjermen kan ikke dra nytte av den.

En siste merknad: vi har ikke diskutert adaptive synkroniseringsteknologier som G-Sync og FreeSync her og for det meste snakker vi om å publisere spill over maksimal oppdatering der adaptiv synkronisering ikke blir brukt. Det er mange forskjellige synkroniseringsmetoder der ute, men adaptiv synkronisering er veldig forskjellig fra Vsync og Quick Sync vi nevnte, og i det minste betyr det ikke noe for denne diskusjonen.

Les mer
Shopping snarveier

Masthead-kreditt: Foto: Jakob Owens