BetterBenchmark

riDDi

Admiral
Registriert
Aug. 2004
Beiträge
7.572
Es geht mir schon seit längerem im Kopf herum: können denn Balken und Graphen alles sein?
Mit all der Rechenpower die wir heute haben soll uns nichts besseres als der schnöde Durchschnitt einfallen?

Deshalb habe ich mir einige Dinge überlegt und möchte meine Überlegungen jetzt mit euch teilen.

Betrachten wir uns zunächst einmal die Graphen zweier Framerateverläufe:
graph_gruen_rot-png.99753

Wir sehen eine rote Linie mit stark ausgeprägten Höhen und Tiefen, die den Verlauf eines Spiels mit seinen mehr oder weniger aufwändigen Szenen beschreibt.
Daneben haben wir eine sehr viel homogenere, grüne Linie, sie nur sehr gering von ihrem Schnitt abweicht.
Ich glaube den Meisten wird schon aufgefallen sein, dass eine stark schwankende Framerate unangenehmer ist als eine konstante, auch wenn letztere im Schnitt niedriger ausfällt. Was nutzen im Extremfall Spitzen von >100 fps, die den Schnitt hoch ziehen, wenn 60 schon ein perfektes Spielerlebnis liefern?

Daraus ergibt sich direkt die erste mögliche Verbesserung:
graph_rot_cap-png.99756

Wir schneiden einfach alles über einem fixen Limit (z.b. 60 fps für LCDs) ab.

Eine andere Möglichkeit der Verbesserung wäre statt der Framerate im Schnitt die Anzahl der gerenderten Frames (die Fläche unterhalb des Graphen, das Integral also) herzunehmen:
graph_rot_fill-png.99754


Oder eine Kombination aus beidem:
graph_rot_diff-png.99755

In Form der Differenz von einem gesetzten Ideal (z.b. konstant 60 fps).

Und die letzte Möglichkeit, die ich euch für jetzt darlegen möchte:
graphen_weights-png.99757

Eine Gewichtung der Frameraten. Niedrige Werte schlagen dabei stärker zu Buche also Hohe, sodass häufige Slowdowns den Schnitt senken können.


Gute, das sollte es vorerst mal gewesen sein, ist doch spät geworden, bis ich endlich Zeit hatte ^^ Ich eröffne mal die Diskussion und freue mich über Meinungen.
 

Anhänge

  • graph_grün_rot.png
    graph_grün_rot.png
    11,6 KB · Aufrufe: 494
  • graph_rot_fill.png
    graph_rot_fill.png
    9,5 KB · Aufrufe: 505
  • graph_rot_diff.png
    graph_rot_diff.png
    9,2 KB · Aufrufe: 507
  • graph_rot_cap.png
    graph_rot_cap.png
    7,9 KB · Aufrufe: 492
  • graphen_weights.png
    graphen_weights.png
    12,5 KB · Aufrufe: 534
Verlaufsdiagramme und Spielbarkeitsverteilungen gab es bereits häufiger in der PCGH, gerade im letzten Heft wieder. Vll wird das ja auch mal online umgesetzt. Ist halt verdammt aufwendig.

cYa
 
Das Problem hierbei ist man kann nicht in die Zukunft sehen und man kann nicht wissen ob die FPS in einer Sekunde fallen. Man müsste einen Benchmarkdurchlauf starten bevor man das Spiel spielt. In diesem wird der AVG wert ermittelt und als optimale Einstellung angegeben. Wenn der Spieler das haben will macht er nen Häkchen. Aber das direkt umzusetzen geht nicht da keiner in die Zukunft schauen kann. Vielleicht lässt es sich an der Umgebung berechnen indem der PC die Polygonanzahl zählt und eine 360Crad-Sicht erstellt. Wenn nun ein spieler in dieses aufwendige LvL kommt wird die FPS gesenkt.
 
Was hat "in die Zukunft sehen" damit zu tun?

riDDi schlägt uns lediglich eine verbesserte und übersichtlichere Art vor, Benchmarkergebnisse wie in den Grafikkartentests zu visualisieren.

Sehr schöne Ideen.:daumen:
 
Ein Tool zu schreiben, dass bspw. aus einem Fraps-log (oder einer anderen, beliebigen Aneinanderreihung von Wiederholraten) einen Graphen erstellt ist kein Problem.

Aber ich denke es sollte das Ziel sein aus hunderten oder tausenden (besser letzteres) von Messwerten eine "3DMark"esque Zahl zu berechnen. Ich denke mal der Erfolg den Futuremark mit dem Konzept hat gibt ihnen da recht. Letztenendes kann ein Mensch aus diesen Zickzackkurven, die beim Zocken nunmal entstehen nur schwer eindeutige Schlüsse ziehen. Ein höherer (oder je nach Festlegung niedrigerer) Wert soll in jedem Fall aber bedeuten, dass das gemessene Spiel sich angenehmer spielt.

@Nille1234: Wenn du wüsstest, wie genau man die Zukunft mit stochastischen Methoden berechnen kann ;) Was das aber mit Benchmarks zu tun hat wüßte ich gern.

Stochastik wäre im übrigen eine weitere Methode, die interessante Resultate liefern könnte, allerdings bin ich da nicht so der King drin ;) Mir liegt das numerische eher.
 
Zuletzt bearbeitet:
Der Ansatz ist gut. Dies hätte allerdings beträchtliche Auswirkungen auf aktuelle Multi-GPU-Strategien, und zwar keine positiven. Was für ein Schock wäre es, wenn auf einmal rauskommen würde, dass SLI und Crossfire ein schlechteres Spielerlebnis bieten als ein herkömmliches System? Stimmen würden laut, dass das doch überhaupt nicht sein könne...
Dann wird es ja nur noch Zeit, dass die Methode umgesetzt wird. ;)
 
Ein guter Einwand. Um Mikroruckler zu erkennen benötigt man die Frametimes :) Die kann Fraps aber genauso liefern.

Die Schwierigkeit wird allerdings zu bestimmen ob die ausgespuckten Werte auch der Wahrheit entsprechen. Dazu braucht es natürlich unterschiedlichste Hardwarekonfigurationen, die ich leider nicht besitze.
 
Sry hab da wohl was falsch verstanden war bissl früh^^
 
Die Frametimes zu messen und in dieses letzte Diagramm zu packen macht imho am Meisten Freude (beim Leser), auch wenn es sehr Fehler behaftet ist.

Bei hardocp gibts solche netten Diagramme. :)
 
Ich find die Idee mit dem Integral der FPS-Funktion unterhalb von 60fps gut - da sieht man schön ob ein Spiel sauber läuft:60 sekunden benchmark - 3600 Punkte = optimal, 1800 = gerade noch spielbar. Allerdings sollte man trotzdem noch die Average-FPS als Balkendiagramm angeben, die sind halt schon auch ein ganz ordentlicher Richtwert und leichter zu verstehen als ein Punktesystem ;)
 
Bei Frametimes wäre das dann wohl ein ausgefranster Strich ;) Die Graphen dienen aber nur der Veranschaulichung der Vorgehensweise. Als Endergebnis hätte ich gern einen Wert, den man wunderbar in ein Balkendiagramm packen kann, aber eben mehr aussagt als der reine Durchschnitt. Die Formel sollte dabei nicht zu kompliziert sein damit sie jeder nachvollziehen kann (gut für die Glaubwürdigkeit).
 
Sapphire Forum
Zurück
Oben