Eine Verständnisfrage wegen des Tools: Wenn man ein Frame zu lange (!) zurückhält, dann sieht man ein Bild, was schon früher hätte angezeigt werden müssen. Das würde im Extremfall doch Ghosting verursachen, da das Gehirn Bildinformationen an einer anderen Position erwartet hätte: Kinoerlebnis beim Spielen. Bei grenzwertigen FPS wird es doch sicher den einen oder anderen Spieler geben, der dieses Schlieren als unschön empfindet. Sicherlich ist dieses Tool schon ein Anfang, aber eine perfekte Lösung ist es nicht.
Denn es kommt doch auch darauf an, wann das Bild berechnet wird und sekundär darauf, wann es ausgegeben wird.
Zur konkreten Frage: Werden die Frames bei Multi GPU Lösungen nun in irgendeiner Weise zeitlich gleichmäßig berechnet? Ihr schreibt alle immer etwas von 30 20 30 20 ....
Nach meinem Verständnis kommen die Frames eher nach 40 35 20 30 25, also (völlig) ungleichmäßig, solange die Leistung der Grafikkarte ohne Framelimiter voll ausgereizt werden kann. Wenn die GPU ein Frame berechnet hat, fängt sie mit dem neuen an unabhängig von der zweiten GPU. Was auch immer der Treiber für Optimierungsstrategien bietet, ein ausgereiftes Timing scheint nicht zu existieren. Deswegen gibt es auch keine doppelte Leistung, da keine optimale zeitliche Aufteilung der Threads vorhanden ist. Nur beim langsameren SFR Verfahren sind die GPUs bedingt durch das Aufteilungsverfahren synchron.
Mein Vorschlag an die Treiberentwickler wäre, ein Treibertool zu entwickeln, dass die Frameabstände eines Games aufzeichnet. Dann könnte man im Treiber noch einen Framelimiter integrieren und mit den Werten der Frameabstände optimale Frameverhältnisse für sich einstellen.
Der neue optionale Menüpunkt hiesse dann im CCC: konstante xx fps Werte Ja/Nein. Also ein etwas erweitertes Spieleprofil. Damit könnte man bei Minimumfps von 15 fps bzw. besser Frameabständen von maximal 66ms bei einer SingleGPU praktisch die 30 fps immer einhalten, da man die 2. GPU 33ms später ansprechen könnte als GPU 1 und die berechneten Frames nur jede 66 ms bzw. 33 ms an den Monitor schicken muss/darf.
Gleichmäßiger kann ich mir kein Bildaufbau vorstellen und eine zu lange Bildverzögerung ist auch nicht vorhanden. Einzig eine künstliche Beschränkung der Frames wird wohl einige Gamer abstossen. Da das ganze optional ist, müssen diese mit Mikrorucklern vorlieb nehmen.
Als Fehlerkorrektur bei Überschreiten des Zeitlimits bei meinem Beispiel von 66ms müsste man einen Framepuffer haben der das vorherige Bild der anderen GPU zur Not nochmals
sendet (bei CRT Monitoren) und der anderen GPU erlauben ihren Frame zu Ende zuberechnen und auch bei Zeitüberschreitung anzuzeigen. Bei wiederholten Zeitüberschreitungen (3 Mal hintereinander) muss der Treiber dafür sorgen , dass der Framelimiter zumindest für 10 weitere Frames aufgehoben wird. Bei einem gut eingestellten Spieleprofil sollten Fehlerkorrekturmassnahmen aber nicht oft angewendet werden müssen.
Bei CPU-limitierten Games ala Supreme Commander oder Onlinegames, bei denen es zu Lags kommen kann, sollte man im Treibermenü darauf hinweisen, dass dieser Modus nicht alle Ruckler beseitigt
Zum Thema: 30 fps sind bei CRTs nicht unbedingt schön anzusehen, wenn die Frames ungleichmässig kommen. Beim TFT mit "Standbildfunktion" kann man das Verhalten vielleicht noch hinnehmen.