Nvidia - Fast Sync

Pict

Lt. Commander
Registriert
Apr. 2008
Beiträge
1.354
Hi Leute,

ich hätte ein paar Fragen bzgl. Fast Sync auf Pascal Karten. Der Test von Computerbase ist ja leider nicht weiter auf die Anforderungen von Fast Sync eingegangen. Jedoch hoffe ich das vlt. ein paar von euch da mehr aus anderen Quellen gelernt haben:

  1. Da die Grundlage ähnlich von Triple-Buffering ist (nur diesmal auf Treiber lvl.) nehme ich mal an das Fast Sync ohne das Gsync Modul funktioniert, richtig ?
  2. Gibt es etwas wie eine min. Anzahl an Frames mit der man über der Refreshrate liegen muss damit FastSync ordentlich greift?
    Sprich, wenn ich den Monitor auf 120Hz stellen würde und mit Framelimiter die Frames auf 123Fps cappen würde (zwecks Frametime angleichung), würden 2 Frames im Buffer reichen um mit FastSync tearing zu verhindern?
  3. Hängt zusammen mit 2., aber trotzdem: Ich schätze mal das der "Last Rendered Buffer" nur einen Frame halten wird ?
    Im Prinzip sollte ja nichts gegen die Möglichkeit sprechen gleichzeitig ULMB laufen zu lassen oder?

Zu diesen Punkten konnte ich bis jetzt nichts finden, hoffe das ihr da helfen könnt,
Danke
 
Da noch niemand hier die Karten hat, gute Frage^^ Mit der du besser noch 2-3 Wochen gewartet hättest.
 
What is NVIDIA Fast Sync?

Fast Sync soll mit allen Monitoren Funktionieren, es ersetzt nicht Gsync.



Wie gut/schlecht das ganze funktioniert werden wir ja bald sehen :)
 
Zuletzt bearbeitet:
Fast Sync wäre besonders interessant, wenn es sich auch bei niedrigen Frameraten wie ein echter Triple Buffer verhalten würde. Wenn man schlecht programmierten Spielen (ich frage mich sowieso, warum solcher Müll immer noch nicht ausgerottet ist - das Problem ist doch bekannt und uralt) Vsync off vorgaukeln und treiberseitig einen Triple Buffer unterjubeln würde, sollte Schluss sein mit 60-30-fps-Sprüngen und in Stufen wechselndem Kaugummi-Mauslag.

Das wäre dann in der Tat eine Alternative zu G-Sync, weil die schlimmsten Nebenwirkungen von Vsync wegfallen. Triple Buffering sieht zwar immer noch holperiger aus als G-Sync, aber wenn die festen Abrundungen (30-59 fps -> 30 fps) wegfallen, ist schon viel gewonnen.

Ein Monitor mit 144 statt 60 Hz Festfrequenz würde den Bildausgabe-Jitter außerdem von 17 auf 7 ms reduzieren - das Holpern würde nochmals weniger.
 
Ich habe bereits eine GTX 1080 und habe vorhin mal mit Fast Sync gespielt.

Ich habe ja einen 144Hz Monitor und spiele BF4 mit 720P auf Medium Settings für 200FPS.

Ich habe also Fast Sync im Treiber ausgewählt und in BF4 ist die Funktion grausam. Es kommt immer wieder zum leichten Ruckeln, auch sind die FPS auf einmal auf 144 begrenzt, obwohl ich Vsync deaktiviert habe.

Scheinbar ist FastSync ein Frame-Limiter, ohne wie Vsync für Input-Lag zu sorgen. Dafür sorgt er für was anderes. Das Spiel lief total unrund und immer wieder ruckelig.

Nur als Info, selbst eine GTX 970 SSC+ kommt ohne Vsync auf 200FPS bei den Settings.

Für Shooter kann ich FastSync also derzeit auf keinen Fall empfehlen.
 
Ist auch logisch so.
Die Funktion von FastSync ist, so wie ich es verstehe, die ausgebenden Frames zu limitieren, während die zu berechneten Frames unbegrenzt bleiben.
Es ist kein Frame-Limiter im eigentlichem Sinne, da die berechneten Frames weiterhin unlimitiert bleiben.
Eher selektiert er basierend auf der Monitor-Refreshrate.

Oder anders gesagt: je nach Refreshrate hat er nen Timer mit x ms, jedes Mal wenn der Timer nahe 0 ist = ein Bild ausgegeben werden sollte, schaut er welches Bild denn als letztes kam, dieses nimmt er dann. Die davor werden verworfen.

Sollte in der Theorie funktionieren, in der Praxis gibt es vielleicht Timing Probleme oder sowas.
 
Der Framecounter sollte aber nicht bei 144 kleben bleiben - dann macht die Fastsync-Funktion nicht das, was sie soll.
 
Das kommt darauf an wie denn ein Framecounter funktioniert - ich hab jetzt auf die Schnelle nichts gefunden, aber das lässt sich ganz einfach rausfinden:
Ist die GPU Auslastung mit FastSync so hoch wie ohne?
Falls ja dann frägt der Counter wohl den Treiber und zählt nicht die gerenderten Bilder direkt.
 
Ich gucke gleich mal.
 
Kannst du evtl. auch mal gucken wie die Frametimes der GPU aussehen (perfoverlay.drawfps 1)? Sprich, ob es Ausschläge gibt mit Fast Sync on. Ebenfalls, versuch doch mal die Frames in BF4 zu limitieren (gametime.maxvariablefps XX). Vlt. auf 183 fps. Läuft es dann mit Fast Sync besser als ohne framelimit in BF?
 
Ich vermute mal, Fast Sync ist genau das gleiche, wie der randlose Fenstermodus, nur eben im echten Vollbild.

Im randlosen Fenstermodus rendern die Spiele intern auch ohne Vsync mit unbegrenzter Framerate. Der Windows Desktop kontrolliert aber letztendlich trotzdem die Bildausgabe wodurch z.B. 100 FPS bei nem 60 Hz Monitor einfach auf 60 gestutzt werden.
Bei jedem intervall wird dann eben das Frame genutzt, das als letztes vom Spiel ausgegeben wurde. Das Dumme ist eben, dass dann Ruckler entstehen, weil zwischen drin einfach überschüssige Frames ausgelassen werden, schließlich braucht man bei 100 FPS @ 60 Hz nur etwa jedes zweite Frame. Die betonung liegt auf etwa. Da FPS und Monitor Frequenz nicht zusammenpassen werden Frames in unregelmäßigen Abständen rausgelöscht, mal jedes zweite, mal jedes dritte. Das führt wie gesagt zu den Rucklern und es entsteht genau das Ruckeln, das G-Sync eigentlich verhindern soll (nur quasi umgekehrt).

Ich finde Fast Sync daher realtiv sinnlos, sollte es wirklich so funktionieren wie vermutet. Das wirklich einzige, was es dann verbessern könnte, wäre der Inputlag bei gleichzeitig Tearing freiem Bild, dafür bezahlt man mit Rucklern bzw. lücken in der Bildfolge, da überschüssige Frames zwangsläufig einfach ausgelassen werden.
 
Natürlich hat man frames die ausgelassen werden. Deswegen wird ja auch geaagt das fast sync fps im dreistelligen bereich über der hz des monitor braucht um optimal zu wirken. Bei 200 fps ist der maximale ruckler halt bei 5ms, im Idealfall darunter wenn der monitor früher abgreift. Für unter 200 fps ist fast sync ja nicht wirklich konzipiert.
 
Habe Fastsync nun mit meiner GTX780 aktiviert und es funktioniert wunderbar. Natürlich werden die FPS auf die Monitorfrequenz limitiert. Darüber hinaus kann es ja garnicht funktionieren. Mit BF4 ist das Bild schön ruhig und ohne Tearing. Es gibt keinen Inputlag. Manchmal wirkt es etwas stotterig für eine Sekunde, aber das kann auch noch ein Bug sein. Mal sehen wie es mit der 1080 dann wird, aber ich jedenfalls überzeugt. Es funktioniert auch bei sehr wenigen FPS einwandfrei.
Man spart sich dadurch die überteuerten G-Sync Monitore mit TN Panel.
 
Mit meiner 1080 begrenzt er bei fast sync auf 60 fps und dabei kommt es ab und an zu rucklern.

Genau das sollte doch aber eigentlich nicht passieren oder?

Nur bei vsync und adaptive vsync sollte doch auf 60 fps begrenzt werden oder habe ich da was falsch verstanden?.
 
Woher soll die Graka wissen wo der Blank Intervall kommt, wenn nicht durch (v)Sync? Ansonsten wäre es ja gsync. Erscheint mir logisch das 60 FPS Anliegen, denn es werden an einem 60 Hz Moni ja maximal 60 FPS ausgegeben und der Rest verworfen. Allerdings habe ich auch nur einen 60 Hz Moni.

Ich teste das mal fix.

Edit: Fastsync ist aus dem Hotfix-Treiber verschwunden. Im Release-Treiber war es noch vorhanden.



Edit: Multimonitor-Problem. Den Punkt gibt es nur, wenn nur ein Monitor läuft.

Ergebnis: Es werden 60 FPS ausgegeben, durch das Fallenlassen "überflüssiger" Frames gibt es üble Ruckler, aber kein Tearing und kein Input-Lag
 
Zuletzt bearbeitet:
Jetzt bin ich aber sehr überrascht das es die FPS an die Frequenz vom Monitor angleicht! Das muss doch ein bug im FastSync sein. Die meisten bei Blurbusters haben jedenfalls keine locked FPS durch fastsync. Es sollte doch eben für alle Szenarien von FPS > Hz sein (sprich, 200+ fps in CS oder 300 fps in QL, ET:pro, etc.).

Die Ruckler würde ich erwarten, es werden ja am Ende Frames übersprungen. Eben wie es triple buffering von 3dfx damals in OpenGL gemacht hat. Jedoch sollten die Ruckler doch eigentlich relativ zu der FPS stehen. Sprich, bei 200fps max. 5ms Verschiebung, 300 fps, 3.33ms, etc. Dadurch solltest du bei 60fps halt 13ms ruckler/Versatz haben.
 
Aber wie soll dann Tearing vermieden werden? Die Frames müssen doch Sync zur Monitor-Frequenz ausgegeben werden? Ansonsten wären wir ja bei Gsync.

Hier mal wie es aussieht (schnelle Leitung vorausgesetzt, sind 500MB Download, aber ich schätze YT verfälscht das Ergebnis).

Vsync im Game aus, Fastsync im Treiber forciert.

http://www.fichen.de/temp/fastsync.mp4

Hab als Gegentest noch mal MWO in DX9 getestet. Auch 60 FPS Lock. Weiß nicht wie die Jungs das machen.

Eventuell ist es ja ein Unterschied ob man es über das CP aktiviert auf Pascal, oder auf Maxwell per Inspector forciert.
 
Zuletzt bearbeitet:
Ein Sync wie bei VSync findet ja nicht statt. Bei Vsync hast du ja front und back buffer (FB - BB). FB geht an Monitor sobald abgegriffen (je nach HZ) und in den BB wird rein gerendert. Bei Vsync 'wartet' die GPU ja bis der BB in den FB geleert wurde und füllt dann wieder den BB. Daher der inputlag bei Vsync.
FastSync baut ja auf triple buffering auf (also der dritte Buffer) welches den Last Rendered Buffer bereit stellt. Fast Sync soll ja erlauben das die GPU entweder in den LRB oder BB vollständige frames gibt sobald eines gerendert wurde. Das vorherige kann also überschrieben werden.

Bis dahin funktioniert es ja wie triple buffering. Nur das Fast Sync eben erlaubt entweder den LRB oder BB mit neuen frames zu überschreiben. Das "warten" der GPU bei vsync bis der BB in den FB überging fällt ja dadurch ebenfalls weg.

Also in diesem Video wird das ganze Prinzip gut erklärt (nur werde zu wenig fragen gestellt -.-) und vorallem wird betont das die FPS am besten ein Mehrfaches der Bildwiederholfrequenz sein soll damit FastSync funktioniert ohne Microstuttering zu haben. Der Faktor 3 FPS: Hz sollte eigentlich "ruckeln" sehr niedrig halten.

Der Lock der FPS kann daher eigentlich nur ein bug sein. Ich hoffe das es in der Richtung bald weitere Entwicklungen gibt.
 
D.h. ich muss 120 FPS auf einem 60hz Monitor erreichen, damit das ganze überhaupt Punkte bringt? Kein Wunder dass sie mit CS testen :-)
 
Also in diesem Reddit geht es auch hin und her. Manche sagen das es im Borderless Window momentan nicht die FPS limitiert, andere sagen das man im exclusive fullscreen sein muss damit Fast Sync greift. Evtl. hast du im Borderless Windowed ja kein fps lock, aber trotzdem greift Fast Sync :)
 
Zurück
Oben