VSync best mögliche Latenz?

1 Antwort

Also es lässt sich schon generell sagen, dass V-Sync an sich immer latenzbehaftet ist, da, wenn du bspw. mehr FPS hast, als dein Bildschirm darstellen kann, die zusätzlichen Bilder immer in einem Pufferspeicher gespeichert werden. Das bedeutet also, wenn du eig. gar keine Latenz haben willst, dann führt kein Weg dran vorbei, auf V-Sync zu verzichten. Es kommt aber dann im Gegensatz dazu zu den sog. Tearing-Effekten (also der nächste Frame, der Fertig ist, wird in den gerade dargestellten Frame rein geschnitten, wodurch es zu diesem Reißeffekt des Bildes bekommt).

V-Sync ohne FPS-Cap wäre demnach die beste Lösung, wenn man trotz V-Sync die geringstmöglichste Latenz haben will.

Bei den anderen drei Varianten hast du immer eine Latenz, wenn wie gesagt im Spiel mehr FPS dargestellt werden, als der Bildschirm ausgeben kann. Das mag bei AAA-Spielen mit hohen Grafikdetails dann nicht so schwer wiegen. Allerdings hättest du da dann auch den Tearing-Effekt, wenn im Spiel weniger FPS dargestellt werden, als der Monitor darstellen kann (also bspw. im Spiel 60 FPS, während der Bildschirm aber mehr Bilder darstellen könnte). Zwar fällt der Tearing-Effekt in diesem Fall dann nicht so krass auf, wie, als wenn V-Sync aus wäre, aber der Effekt wäre dann noch vorhanden.

G-Sync / FreeSync, sofern vom Bildschirm, der Grafikkarte, dem Grafikkartentreiber und des Spiels unterstützt ist da nochmal wesentlich besser, weil hier dann die Bildausgabe der Grafikkarte mit der Bildausgabe des Monitors angeglichen wird und man somit überwiegend Tearing- und Lag-Frei ein Spiel genießen kann. So zumindest in der Theorie. In der Praxis konnte ich beides leider noch testen, um zu sagen, ob es was taugt. Aber da gibt es genug Erfahrungsberichte im Netz.

Hier nochmal vier Links, die noch ein wenig mehr Informationen zu den ganzen Technologien liefern:

https://de.wikipedia.org/wiki/Dreifachpufferung#:~:text=Der%20Unterschied%20zwischen%20Doppel%2D%20und,ein%20Frontbuffer%20und%20zwei%20Backbuffer).

https://www.youtube.com/watch?v=MZVUz3Ef000

https://www.youtube.com/watch?v=nI1tc9N_1L0&t=223s

https://www.youtube.com/watch?v=3p82yPkvnEw

Woher ich das weiß:Berufserfahrung – Staatlich anerkannter IT-Assistent / Servicetechniker
Bendosch 
Fragesteller
 29.10.2021, 13:40

Vielen dank für die Erklärung. Was ich persönlich nicht ganz verstehe: Es wird auf den verschiedensten Seiten behauptet das wenn man VSync Aktiviert hat die FPS auf 141 sprich 3 Frames unter der Bildwiederholrate des Monitors Capen Soll um den VSync Input Lag zu reduzieren.

0
Bendosch 
Fragesteller
 29.10.2021, 17:40

Habe auch gelesen das das aktivieren vom Trippel Buffering bei der Nutzung von VSync die Latenz verbessern soll.

0
markN  30.10.2021, 00:52
@Bendosch

Zum Thema Tripple Buffering ist meine persönliche Meinung, dass es einfach Latenzbehaftet ist, genauso wie Double Buffering, da im Endeffekt die "überschüssigen" Frames in einem Pufferspeicher gelagert werden, damit diese im "Nachhinein" sauber dargestellt werden können.

Ja, Tripple Buffering soll im Gegensatz zum Double Buffering besser sein, weil einfach anstatt wie bei einem Zweifachpuffer mit 2 Pufferspeicher im Dreifachpuffer noch ein weiterer Pufferspeicher zusätzlich eingesetzt wird. Der zusätzliche dritte Pufferspeicher kann dafür sorgen, dass eine Ladung Frames vorgelagert werden kann, während eine Ladung von der Grafikkarte zur Anzeige an den Bildschirm übergeben wird. Tripple Buffering soll somit im Gegensatz zum Double Buffering Tearing und zeitgleich die Latenz verringern. Eine Latenz ist aber auch in diesem System dennoch gegeben und Tearing hat man wie bereits erwähnt selbst dann, wenn man weniger Frames hat, als der Bildschirm aber darstellen könnte.

Heißt im Endeffekt, dass sowohl Double, als auch Tripple Buffering gerade in anfordernden Spielen mit wenig FPS nichts bringen, wenn man Tearing vermeiden möchte, wenn das System nicht so viele FPS schafft, wie der Bildschirm in einem Zeitzyklus wiedergeben kann.

Somit bleibe ich dabei, dass V-Sync ohne Frame-Cap die beste von den 4 Methoden ist. Eigentlich wäre (wenn Tearing einen nicht stört) die beste Methode, V-Sync einfach deaktiviert zu lassen. Ansonsten V-Sync ohne Frame-Cap oder die Frames auf einen FPS-Wert limitieren, den man in dem jeweiligen Spiel immer erreicht und der ein vielfaches von dem ist, was die Bildwiederholrate des Monitors ist.

Bsp.: Battlefield 5 -> ein PC, welcher in dem Spiel auf entsprechenden Einstellungen (sagen wir mal) 90 FPS erreicht -> ein Monitor mit 60 Hz -> am besten auf eine ungerade Zahl limitieren, die größer > 60 ist und durchschnittlichen FPS im Spiel nicht übersteigt -> z.B. 81 oder 83 -> CPU und GPU bearbeiten die Frames synchron und der Bildschirm kann parallel fast synchron die Frames mit wenig überschüssigen Frames darstellen.

Bei Spielen, die nicht über die Hz-Anzahl des Monitors hinauskommen, kommt daher die Regel, dass man FPS etwas unterhalb der Hz-Anzahl des Monitors auf eine ungerade Zahl limitiert. Auch hier wieder z.B. Battlefield 5 und sagen wir diesmal im Durchschnitt 120 FPS -> FPS-Cap bei 117, 115, 113 usw.

0
Bendosch 
Fragesteller
 30.10.2021, 01:38
@markN

Vielen Dank für deine Nachricht. Da du anscheinend gut informiert bist kannst du mir vllt noch eine Frage beantworten. In Battlefield 4 habe ich ohne VSync und ohne FPS Cap I’m Schnitt ca 350 Frames. Jetzt ist das Problem das ich trotzt Cap auf (in meinem Fall da ich einen 144Hz monitor habe) 144 FPS Tearing habe, was ja eigentlich nicht sein kann oder? Ich habe es bisher immer so verstanden!

0
markN  31.10.2021, 11:16
@Bendosch

Tearing kann mit einem Frame-Cap ohne V-Sync trotzdem auftreten (wenn auch eigentlich nur minimal), weil trotz Frame-Cap es sein kann, dass einige überschüssige Frames (also kurzzeitig über dem FPS-Cap) entstehen. Aber das sollte man wie gesagt eigentlich nicht wahrnehmen. Wenn die aber stärker und konstanter (also des Öfteren) auftreten, dann ist es komisch und da wäre ich dann erstmal außer Frage. Aber ich würde auch wie im vorherigen Kommentar erwähnt, die FPS auch nicht auf eine gerade Zahl limitieren. Nimm eher eine ungerade Zahl. Wie z.B. 147

0
Bendosch 
Fragesteller
 31.10.2021, 15:02
@markN

Selbst wenn ich die FPS minimal unter der Bildwiederholrate Cap gibts Tearing :(

0
markN  31.10.2021, 22:02
@Bendosch

Nicht unterhalb. Es muss schon, wenn es geht, mehr, als die Bildwiederholrate des Bildschirms sein. Also wenn du durchgehend 150 FPS+ hast, dann stellt du das FPS-Limit 151, 153, 155, 157, 159, 161 etc pp.

Das Limit unterhalb der Bildwiederholrate stellst du dann ein, wenn du fordernde Spiele mit entsprechenden Settings spielst, wo ein Erreichen der 144 FPS und darüber hinaus schwer ist.

Und da ist es wie auch bereits in den Kommentaren zuvor erwähnt so, dass wenn du unterhalb (auch minimal) der Bildwiederholrate limitierst, du trotzdem Tearing erleben wirst. Denn deine GPU + CPU und dein Bildschirm werden nie zu 100% synchron die Frames bearbeiten, sodass es immer diese Frames geben wird, die entweder "überschüssig" sind oder an einer Stelle dann fehlen und die dann da rein schneiden. Das ist auch mit V-Sync so, wenn die FPS in den jeweiligen Spielen nicht die Bildwiederholrate des Bildschirms treffen.

0