Testberichte

Redaktion intern: So messen und bewerten wir die Grafik-Performance

PresentMon: Frame Times für DirectX, OpenGL und Vulkan messen Spätestens seit der Einführung von DirectX 12, Windows UWP und Vulkan standen wir erneut vor der Aufgabe, eine zumindest weitgehend verlässliche Ermittlung der Renderzeiten aller einzeln...Frames pro Sekunde Diese zeitbasierten Durchschnittswerte sagen am Ende nur aus, wie viele Einzel-Frames innerhalb einer Sekunde gerendert wurden. Nur erkennt man daran eben nicht, wie "rund" und ausgeglichen der Bildfluss in dieser recht großen Ze...Immersion: Unbeschwertes Eintauchen in die virtuelle Welt Das subjektive Empfinden rückt nun in den Fokus unserer Betrachtungen. Um ein möglichst ungestörtes Spielerlebnis zu erhalten, wünschen sich Spieler natürlich eine möglichst ruckel- und verz...FPS vs. CPU-Auslastung Ein großes Thema, wenn es darum geht, mögliche Flaschenhälse zu erkennen und die Vorteile oder Nachteile einzelner Renderpfade herauszuheben - wenn sie denn wirklich existieren. Betrachten wir zunächst die Auslastung bei der ...

Frames pro Sekunde

Diese zeitbasierten Durchschnittswerte sagen am Ende nur aus, wie viele Einzel-Frames innerhalb einer Sekunde gerendert wurden. Nur erkennt man daran eben nicht, wie “rund” und ausgeglichen der Bildfluss in dieser recht großen Zeitspanne wirklich war.

Denn eine Sekunde mit einem langsamen 100-ms-Frame und weitaus schnelleren Einzelbildern kann rein subjektiv als deutlich schlechter (weil ruckeliger) empfunden werden als eine Sekunde mit etwas langsameren, dafür aber konstanten Renderzeiten der Frames – dann wirken 60 FPS unter Umständen sogar deutlich schlechter als vielleicht 50 FPS.

Betrachten wir trotzdem noch einmal kurz die Balkendiagramme für das schnellere und das langsamere System. Oftmals werden zudem noch die groben Indikatoren für den Bildlauf in Form der maximalen und minimalen FPS einfach weggelassen, die bei einem längeren Benchmark-Run mit stark wechselnden Inhalten sowieso für die Tonne sind und nur für den Vergleich mehrerer Grafikkarten taugen – zumindest ansatzweise. Zum Vergrößern bitten wir, diese und die folgenden Doppelgrafiken einfach anzuklicken.:

Hinter diesen ziemlich endgültig scheinenden Balken verstecken sich aber deutlich interessantere Kurven, die den sogenannten FPS-Verlauf über die gemessene Zeit wiederspiegeln. Das ist zwar immer noch nicht wirklich genau, aber für einen Vergleich allemal interessanter als statische Balken. Vergleichen wir jeweils die beiden Karten im DirectX-11- und DirectX-12-Renderpfad, getrennt für die zwei Testsysteme:

Für die maximal 108 Sekunden des Testlaufs haben wir auf der X-Achse also 108 Einträge mit den jeweiligen tatsächlichen FPS-Werten für jede einzelne der Sekunden. Aber sogar jetzt wissen wir noch nichts über mögliche Framedrops oder Mikroruckler, denn es sind bis hierher immer noch sehr grobe Durchschnittswerte.

Genau deshalb sind uns die Renderzeiten und ihre richtige Darstellung bzw. Interpretation ja so wichtig, weil eine reine FPS-Angabe – seien es nun Balken oder Kurven – einfach nichts über das wirkliche Spieleempfinden aussagen.

Frame Times und gerenderte Frames

Die Darstellung der einzelnen Renderzeiten aller ausgegebenen Einzel-Frames als Verlaufskurve sieht erst einmal einfach aus, ist es aber spätestens dann nicht mehr, wenn man unterschiedlich schnelle Karten nutzt, die in einer bestimmten, fest definierten Zeit (die 108 Sekunden) jeweils eine ganz unterschiedliche Anzahl an Einzel-Frames rendern.

Die MSI Radeon RX 480 Gaming X 8G schafft zum Beispiel im DX11-Benchmark auf dem schnellen System 8090 Frames, unter DirectX 12 in der gleichen Zeitspanne 8446 Frames. Die MSI GeForce GTX 1060 Gaming X 6G liegt mit 7362 bzw. 7332 Frames leicht zurück.

Es ist für das Verständnis des grafischen “Flusses” und die Erklärung für ein bestimmtes, subjektives Empfinden sehr wichtig, die Renderzeiten der Einzel-Frames direkt miteinander zu vergleichen. Nur: Man kann diese unterschiedlich langen Datensätze leider nicht mehr so einfach auf einer gemeinsamen Horizontalachse übereinanderlegen wie noch bei den FPS-Kurven, die alle auf 108 Einzelwerten für die jeweilige Sekunde basieren.

Für die beiden Testsysteme – beginnend mit dem schnelleren Testaufbau – sieht das dann so aus:

 

Auf beiden Grafiken muss zudem beachtet werden, dass die jeweiligen Y-Achsen der enthaltenen Diagramme mit den Renderzeiten auf die jeweiligen Werte des Diagramms skaliert wurden und die Diagramme zwar inhaltlich, aber eben nicht optisch in direktem Zusammenhang stehen (können). Man wird in der Praxis immer bestrebt sein, so viele Details wie möglich zu zeigen und den tatsächlichen Ausschnitt auf der Y-Achse den auftretenden Minima und Maxima anzupassen. Deshalb muss hierfür die Achsenbeschriftung stets berücksichtigt werden.

Jetzt haben wir auch schon einen ersten Eindruck darüber erhalten, wie der Frame-Verlauf aussieht, wenn man alle Kurven auf eine gemeinsame Länge bringt. Doch Excel kann das nicht, sodass wir dies unsere Software erledigen lassen, die für alle Karten optimierte Kurven gleicher Länge liefern. Doch wie bekommt man nun die 8446 oder 7362 Einzelwerte auf die gemeinsame Länge von z.B. 1000 Werten, die wir in Excel einfügen können?

Ähnlich wie beim optischen Skalieren (Resampling) versuchen wir, die dominanten Bildinhalte möglichst verlustfrei für die Bewertung zu bewahren. Bei übereinanderliegenden Werten überdecken die größeren Werte die kleineren, so dass unsere “Stauchung” der Datenreihen exakt der optischen Variante entspricht und z.B. alle Spikes vollumfänglich erhalten werden. Der Rest ist sauber interpoliert. Diese Datenreihen nutzen wir ausschließlich für die optische Ausgabe – damit rechnen kann man nämlich nicht. Das müssen wir allerdings für die nächsten Aufgaben umso mehr.

Danke für die Spende



Du fandest, der Beitrag war interessant und möchtest uns unterstützen? Klasse!

Hier erfährst Du, wie: Hier spenden.

Hier kannst Du per PayPal spenden.

About the author

Igor Wallossek

Chefredakteur und Namensgeber von igor'sLAB als inhaltlichem Nachfolger von Tom's Hardware Deutschland, deren Lizenz im Juni 2019 zurückgegeben wurde, um den qualitativen Ansprüchen der Webinhalte und Herausforderungen der neuen Medien wie z.B. YouTube mit einem eigenen Kanal besser gerecht werden zu können.

Computer-Nerd seit 1983, Audio-Freak seit 1979 und seit über 50 Jahren so ziemlich offen für alles, was einen Stecker oder einen Akku hat.

Folge Igor auf:
YouTube   Facebook    Instagram Twitter

Werbung

Werbung