Warum wurde minimale Bilder pro Sekunde gegen eine 'Einheit' getauscht, die für so viel Unverständnis sorgt? Frag für nen Kumpel
Weil die min FPS ein zu störanflliger Wert ist, um damit sinnvoll Sachen zu vergleichen.
Wenn dein Bench aus 1000 Frames besteht und davon nur ein einziger aus welchem Grund auch immer schlecht ausfällt, dann sind das eben deine min FPS. Während deine Average FPS bei z.B. 5 Durchläufen zwischen 65,1 und 65,8 liegen, also sehr konstant sind, könnten diese min FPS beim ersten Run 15 sein, beim zweiten 30, beim dritten 8, beim vierten 19 und beim fünften 12
Es ist schlicht nicht reproduzierbar und wenn man mit soetwas jetzt verschiedene GPUs vergleichen wollen würde, wo die Ergebnisse noch nicht mal mit ein und der selben GPU reproduzierbar sind, wird man nie etwas sinnvolles rausbekommen.
Die Erklärung von Perzentilen ist doch im Grunde ganz einfach. Du nimmst diese 1000 Frames deines Benchmarks und sortierst sie von niedrig nach hoch.
Dein min FPS Wert ist also der erste Wert in dieser Liste.
Perzentile beschreiben nun einfach eine prozentuale Stelle in dieser Liste, daher hab ich 1000 genommen um es einfacher erklären zu können.
Das 1. Perzentil wäre der 10. Wert, das 50. Perzentil(auch Median genannt) wäre der 500. Wert, das 99. Perzentil wäre der 990. Wert.
Indem du nun das 1. Perzentil statt der klassischen "min FPS" nimmst, ignorierst du also die 9 schlechtesten FPS Werte aus dem Bench und gibst nur den 10. schlechtesten aus.
An dieser Stelle sind die FPS Werte sehr viel stabiler als im Bereich der ersten paar Werte und somit lassen sich damit auch die Werte sehr viel besser untereinander vergleichen.
Und einfacher als
"1% Perzentil = 1% aller Werte sind niedriger / 99% aller Werte sind höher als dieser Wert" bzw.
"99% Perzentil = 99% aller Werte sind niedriger / 1% aller Werte sind höher als dieser Wert"
kann ich es auch nicht formulieren, würde aber auch nicht verstehen, was daran unverständlich ist. Und nein, ich bin weder Mathematiker noch Statistiker noch sonst irgendwas in der Richtung^^
Ein etwas "technischerer" Zusatz:
Ich denke das Unverständnis kam bzw kommt bei den meisten eher genau daher, dass die Leute alle 99. Perzentil schreiben und dann einen niedrigen FPS Wert angeben, was nicht mit der Definition von Perzentilen zusammenpasst, man also selbst wenn man sich über Perzentile informiert, verwirrt wird, weil die Werte nicht zu dem passen, was man gelesen hat.
Weil sie die Perzentile eben aus den Frametimes bilden, die genau der umgekehrte Wert zu den FPS sind, also hohe Frametimes = niedrige FPS, demzufolge wäre der Wert, den man hier sucht das 99. Perzentil der Frametimes.
Das liegt einfach daran, dass Tools wie FRAPS, OCAT oder CapFrameX in den Dateien die sie erzeugen keine FPS Werte angeben sondern nur die Zeiten von einem Frame zum nächsten.
Um Rundungsfehler zu vermeiden berechnet man Perzentile, aber auch Average und andere Werte zuerst aus diesen Frametime Werten heraus und konvertiert das Ergebnis anschließend zu einem FPS Wert, bei einem Average Frametime Wert von 16,66ms also z.b. 1000 / 16,66ms = 60 FPS(die 1000 haben hier nichts mit den 1000 Frames des Benchmarks im obigen Beispiel zu tun, die Formel lautet immer FPS = 1000 / Frametime bzw Frametime = 1000 / FPS).
Möchte man also die Min FPS wissen und dabei die schlechtesten 1% ignorieren, muss man die 1% höchsten Frametimes ausschließen, also das 99. Perzentil der Frametimes nehmen.
Bei der Ausgabe in ihren Tabellen und Balkendiagrammen werden also zwar die Frametimes zu FPS umgewandelt, um es dem Leser verständlicher zu machen, aber die Beschriftung des 99. Perzentil wurde nicht zum 1. Perzentil geändert, was richtig wäre denn wenn man nun von FPS spricht, entspricht die 10. höchste Frametime(99. Perzentil bei 1000 Frametime Werten) eben dem 10. niedrigsten FPS Wert(1. Perzentil bei 1000 FPS Werten).