• Mitspieler gesucht? Du willst dich locker mit der Community austauschen? Schau gerne auf unserem ComputerBase Discord vorbei!

Anno Baals großer Anno 1800 Benchmark - Andere Benchmarks, Reproduzierbarkeit, Relevanz

Baal Netbeck

Fleet Admiral
🎅 Nikolaus-Rätsel-Elite
Registriert
Apr. 2008
Beiträge
12.498

Vergleich mit bestehenden Benchmarks, Reproduzierbarkeit und Relevanz​


Dieser Thread ist ein Ableger eines großen Anno 1800 Benchmarks, der aufgeteilt werden musste.
Der Hauptthread mit den Inhaltsverzeichnis bietet Erläuterungen die vorher gelesen werden sollten.


Wenn man einen neuen Benchmark präsentiert, der noch dazu mit sehr viel Aufwand daher kommt, sollte man sicherlich klären ob dieser Aufwand überhaupt seine Berechtigung hat, oder ob es nicht einfachere Alternativen gibt.

Man muss sicherstellen, dass die Reproduzierbarkeit ausreichend ist um die gemachten Aussagen zu belegen und ob der Benchmark relevante Aspekte des Spiels abdeckt.

Übersicht über andere Anno 1800 Benchmarks​

Der integrierte Benchmark von Ubisoft​

Diesen gibt es in einer DX11 und einer DX12 Variante von der für das Lategame nur die DX12 Variante in Frage kommt.
Der Benchmark zeigt mehrere Kamerafahrten über der großen Hauptinsel des Onkels aus der Kampagne. Die Insel wird in niedrigem Abstand, in mittlerem Abstand und in einem höheren Kameraabstand überflogen, der aber nicht dem maximal möglichen entspricht.
Solche Kamerafahrten sind im Spiel eigentlich nicht Teil des Gameplays und nur in der Kampagne ab und zu vertreten.
Sie erzeugen immer wieder Frametimepeaks und geben wenig Zeit um die Texturen zu aktualisieren. Die CPU Last ist ungewöhnlich gering und die FPS trotz der detailreichen Investorenhäusern usw. ungewöhnlich hoch.

Vermutlich wird hier keine Wirtschaft simuliert, oder es greifen andere Anpassungen die diesem Benchmark zu einem fast reinen GPU-Test werden lässt.

Der Benchmark von PCGH​

Auch dieser Benchmark zeigt die Insel des Onkels aus der Kampagne und dabei den zentralen Teil um die Weltausstellungsbaustelle, der besonders viele Details bietet.

Dann wird die Kamera sehr schnell mit einem Hotkey gedreht.
Die Szene und die schnelle Drehung senken die FPS deutlich und erzeugen auch manchmal heftige Frametime Peaks.
Bei 20s Messdauer kann das die Reproduzierbarkeit negativ beeinflussen.
Es kommen auch hier keine zusätzlichen DLCs zum Einsatz und selbst wenn man diese aktivert, werden sie nicht benutzt und damit auch nicht in den Ergebnissen berücksichtigt.

Der Benchmark von Notebookcheck​


Und wieder die Insel des Onkels und fast die gleiche Kameraposition sowie ein ähnliches Vorgehen.
Im Unterschied zum PCGH Benchmark wird die Kamera über die Postkartenansicht automatisch und langsam für -40 s gedreht.
FPS und Frametimes sind aufgrund der deutlich langsameren Drehung auch deutlich besser.
Die 40s sind einerseits besser weil der Mittelwert besser wird und für die Frametimes mehr Frames zur Berechnung aufgenommen werden.
Aber falls es einzelne Ruckler gibt die in Anno manchmal auftauchen, dann ist mit 40s die Wahrscheinlichkeit höher, solche zu treffen.
Die CPU Last und die Anforderungen an das Streaming ist durch die langsame Drehung aber auch deutlich geringer und man könnte die Ergebnisse als "zu gut" erachten.

Die Computerbase 10K und 65K Spielstände​

Beide Benchmarks nutzen einen Spielstand aus einem Endlosspiel. Der Eine eine Inselwelt mit zehntausend Bewohnern und der Andere mit fünfundsechzig tausend.
Beide Benchmarks zeigen eine kleine bzw. mittelgroße Siedlung.
Es wird einige Sekunden auf ein bestimmtes Ereignis gewartet und dann für lediglich 10s gemessen.
Auch wenn die CB- Siedlungen nicht so viele Drawcalls erzeugen wie die detailreichere Insel des Onkels, so haben die Szenen doch eine vorhandene Wirtschaft im Hintergrund.
Sie zeigen daher realistischer die Situationin der Anfangsphase oder eines etwas fortgeschrittenen Spielstandes als die vorherigen Benchmarks.
Es fehlen jedoch auch hier Kamerasprünge und die FPS/Frametimes sind so kurz nach dem Laden eines Spielstandes noch nicht repräsentativ für die durchschnittliche Spielererfahrung.
Die 10 s Messzeit sind sowohl Fluch als auch Segen.... Die Wahrscheinlichkeit, dass in dieser kurzen Zeit ein zufälliger Frametimepeak auftritt, oder eine NPC Benachrichtigung die Messung stört, ist sehr gering.
Auf der anderen Seite stört es dann extrem wenn es doch passieren sollte.

Da auch hier keine DLCs benutzt werden ist die Aussagekraft für das Lategame sehr gering.

Von mir verwendete DLCs​

DLCs a (diese DLCs werden verwendet).png
DLCs b (diese DLCs werden verwendet).png
DLCs c (diese DLCs werden verwendet).png

Hier näheres zur Szene....

Es werden alle DLCs bis Anfang 2022 benutzt aber noch nicht die letzten drei DLCs aus 2022.
Es wäre sicherlich schön, wenn auch die letzten DLCs verwendet worden wären aber das Projekt startete schon vor dem Erscheinen der 2022er DLCs.
Im Gegenzug wurden die vorhandenen DLCs auch umfangreich eingesetzt und es werden alle Gebäude die verfügbar waren auch gebaut/benutzt. Andere Spielstände hätten eventuell mehr DLCs aber sie würden gar nicht alles davon nutzen, oder auch ganze Produktionsketten mit Zusatzwaren, Items oder der Speicherstadt ersetzen.

Es wäre möglich ein schlimmeres Worstcase-Szenario zu kreieren, aber ich denke, dass es für viele Spieler eine realistische Repräsentation des Lategames darstellt.

Vergleich der Benchmark-Ergebnisse​

R1400-4x16-FPS-verlauf.png

Vergleicht man nur die FPS sieht man, wie wenig CPU Last der integrierte Benchmark von Ubisoft erzeugt. Über 100 FPS sind weit ab von dem was man im Spiel erlebt.

Die mit Abstand niedrigsten FPS erzeugt mein Skriptbenchmark...die zweitniedrigsten kommen durch den CB-Spielstand mit fünfungsechzig tausen Einwohnern, gefolgt vom PCGH Benchmark.
R1400-4x16-01low-verlauf.png
R1400-4x16-1low-verlauf.png

Wie man sieht gibt es vor allem bei den 0,1% low Frametimes große Unterschiede zwischen den Benchmarks und auch teilweise von Messung zu Messung.
Gerade bei dem PCGH Benchmark lieg zwischen der besten und schlechtesten Messung große 51%.
Die Computerbase Messungen zeigen durchaus noch eine ordenliche Reproduzierbarkeit, die geringsten Unterschiede zeigt aber der Skriptbenchmark.
R1400-2x8-01-low-verlauf.png
R1400-2x8-1low-verlauf.png


Mit 8 GB werden die Unterschiede nochmal größer, da bis auf den Skriptbenchmark keiner der Benchmarks 16GB ausreizt, schauen wir uns aber besser gleich den Vergleich bei 8 GB RAM an:
R1400-2x4-01-low-verlauf.png
R1400-2x4-1low-verlauf.png
R1400-2x4-mittelwerte.png


Bis auf den Skriptbenchmark zeigen sich hier in allen Benchmarks inakzeptable Messunsicherheiten.
Wenn der RAM ausgeht und es vermehrt Ruckler durch die Nutzung der Auslagerungsdatei gibt, kann nur der aufwendige Skriptbenchmark mit seiner sehr langen Messdauer noch eine gute Reproduzierbarkeit erreichen.

Wie viel RAM wird reserviert?​

rambelegungbarg.png


Sofern genug RAM vorhanden ist belegt der Skriptbenchmark um die 33 GB.
Die anderen Benchmarks belegen zwischen 10 und 13 GB, wobei das CB Savegame mit 64k Einwohnern noch den meisten RAM reserviert.

Der Skriptbenchmark besteht ja neben den eigentlichen Messungen auch aus einer Vorbereitungsphase und Zwischensequenzen.
Hier eine Auflistung des reservierten RAMs wenn man sich diesen Aufwand spart.
rambelegungbarmethodg.png


Wie man sieht zeigt der große Zeitaufwand seine Wirkung.
Die Messung des Standbildes(nur savegame geladen und angeguckt) zeigt, dass alleine das Savegame schon viel mehr RAM reserviert als die anderen Benchmarks. Es ist mit 17 GB aber kein Vergleich zu dem richtigen Skriptbenchmark mit seinen 33 GB.

Wie reproduzierbar ist der Skriptbenchmark und reicht die Standardabweichung als Angabe der Messunsicherheit?​

Reproduzierbarkeit an verschiedenen Tagen 0,1Xlow.png
Reproduzierbarkeit an verschiedenen Tagen FPS.png

Hier wurden an zwei verschiedenen Tagen jeweils 8 Messungen hintereinander durch das Skript durchgeführt und aufgetragen.
In der Tabelle sieht man jeweils die Auswertung aller 8 Messungen und der ersten 5 Messungen, sowie die Standardabweichung der Einzelwerte.
Misst man ein Spiel mit einem PC-Neustart dazwischen gibt es meist eine systematische Abweichung, da die Daten des Spiels anders im Speicher angeordnet sind und es zu unterschiedlicher Hintergrundlast kommen kann.

Für die Reproduzierbarkeit habe ich hier mit dem langsamen Ryzen 1400 und ausreichenden 64 GB RAM eine zuverlässige Konfiguration, mit einer besonders unzuverlässigen Variante verglichen:

Der 5800X3D hat unzureichende 16 GB Ram bekommen und ist eigentlich viel schneller wenn er den die nötigen Daten bekommt. Er wird also besonders hart getroffen wenn er auf Daten aus der Auslagerungsdatei wartet und zusätzlich hat er einen variablen Boost, anstelle der festen Taktfrequenz des Ryzen 1400.

Bei den FPS gibt es keine Probleme und der Unterschied von Tag A zu Tag B ist zwar vorhanden, der Unterschied der Mittelwerte bleibt aber innerhalb der Grenzen der Standardabweichung.

Bei den 0,1% low Frametimes sieht es wild aus für den 5800X3D.
Aber man sieht, dass das auf und ab durchaus einem System folgt und natürlich auch in der größeren Standardabweichung berücksichtigt ist.

So bleiben auch hier die Unterschiede von Tag zu Tag, sowie die Unterschiede von 5 zu 8 ausgewerteten Messungen innerhalb der Standardabweichung.

Als Fazit habe ich beschlossen, dass 5 Messungen ausreichen und ich für besonders wichtige Vergleiche bei denen ich nur kleine Unterschiede erwarte, oder bei unlogisch erscheinenden Messreihen, an einem zweiten Tag eine weitere Messreihe starte und dann über die 10 Messungen den Mittelwert bilde.

Damit erreiche ich die von mir angepeilte Genauigkeit und Reproduzierbarkeit der Messungen. :)

Relevanz der Skriptbenchmarks für die Zielsetzung​

Einer der Hauptgründe für den Skriptbenchmark war die Frage nach der sinnvollen Menge an System-RAM für ANNO 1800 im Lategame.

Nur weil bei den Messungen über den Skriptbenchmark 33 GB RAM reserviert wurden, ist das noch keine Garantie dafür, dass diese Menge an RAM auch wirklich benötigt wird.
Für das Spiel könnte es ausreichend sein, wenn 16 GB vorhanden sind und die restlichen 17 GB könnten Daten für das Betriebssystem und ungenutzter Datenmüll sein, die das Spielerlebnis nicht negativ beeinflussen, wenn sie ausgelagert werden.

Daher habe ich verglichen wie viel Leistungsverlust die verschiedenen Benchmarks erleiden wenn ich die Menge an System-RAM reduziere.
Ein starker Verlust bei den 1% und 0,1% low Frametimes ist dabei eine "gute Sache", da es zeigt, dass es sich wirklich negativ auswirkt.
ramverlustszenenfps.png
ramverlustszenen1perc.png
ramverlustszenen01perc.png


Bei den FPS sind nur geringe Unterschiede zu erwarten und wie man sieht leidet kein Benchmark massiv wegen 16 GB.
Mein Skriptbenchmark und der Benchmark von PCGH leiden dann aber doch deutlich, wenn es auf 8 GB runter geht.

Interessanter sind die 1% und 0,1% low Frametimes, da diese die Menge und Intensität der Frametimepeaks darstellen und schon bei 16 GB sollten sich hier die Unterschiede herauskristallisieren.

Der integrierte Benchmark, der von Notebookcheck und auch die beiden Savegames von Computerbase scheitern daran.
Nur der PCGH Benchmark reagiert deutlich auf die 16 GB, allerdings ist die Messunscherheit unzureichend für zuverlässige Vergleiche.
8 GB zeigen mit dem PCGH Benchmark sogar die größten Leistungsverluste bei den 0,1% low Frametimes, was ich darauf zurückführe, dass die Werte mit dem Skriptbenchmark schon so niedrig waren, dass es weniger Potential gab.

CPU Last und VRAM Belegung der Benchmarks​

cpuLastverglbalkg.png


Die Gesamtauslastung der 16 CPU Threads fällt vor allem bei dem integrierten Benchmark von Ubisoft extrem ab, was damit zusammenhängen kann, dass hier entweder keine Wirtschaft simuliert wird oder andere Anpassungen vorgenommen wurden um vor allem einen GPU Benchmark zu kreieren.

Die weiteren Benchmarks unterscheiden sich gar nicht so groß, wie die Unterschiede in der Wirtschaftssimulation vermuten lassen.
Der Skriptbenchmark benutzt zwar am meisten CPU Ressourcen, aber längst nicht in dem Maße wie man es aufgrund der Komplexität der Wirtschaft vermuten würde.
Scheinbar limitieren meist die Drawcalls und eine damit einhergehende Single-Thread-Limitierung verhindert eine höhere CPU Auslastung.
Vrambelegungbarg.png


Es wird zwar mit Abstand am meisten VRAM von dem Skriptbenchmark belegt, aber wenn man bedenkt, dass 11GB vorhanden sind und das Spiel pausenlos die hübschen Texturen aus dem VRAM wirft(wandern dann in den System-RAM) um sie später wieder verzögert reinzuladen, wäre es schön, wenn Anno 1800 mehr Gebrauch vom VRAM machen würde.
Es ist das gleiche Spiel mit der Radeon VII und ihren 16 GB VRAM und Anno weigert sich auch hier, mehr als 6-7 GB dauerhaft zu belegen.

Fazit​

Das Ziel, einen reproduzierbaren und relevanten Benchmark für das Lategame von Anno 1800 zu kreieren, konnte erreicht werden.
Nur der Skriptbenchmark führt zu einer hohen Ramauslastung und zeigt die Situation im Lategame.
Nur im Skriptbenchmark werden auch die Kamerasprünge, viele DLCs und alle Spielwelten abgebildet.
Und noch dazu zeigt er die beste Reproduzierbarkeit der Frametimes.

Hier ein Beispiel wie sich verschiedene Hardware beim Wechsel der Welten verhält:

Wenn Grafikkarten verglichen werden sollen, dann ist der integrierte Benchmark durchaus die beste Option. Doch muss man sich fragen ob das für den Spieler im Lategame relevant ist, dass GPU A theoretisch 100 FPS und GPU B 140 FPS schafft, wenn die anspruchvollen Bereiche des Spiels bei <40 FPS im CPU Limit hängen.

Der 65K Spielstand von CB ist eine ausreichend reproduzierbare Darstellung der Anfangsphase eines Anno 1800 Endlosspiels.
Wer Anno ohne DLCs und nur für einige Stunden spielt, der hat hier einen guten Anhaltspunkt für die zu erwartende Leistung.

Der PCGH Benchmark ist von den anderen Benchmarks der anspruchsvollste. Das erreicht er aber nicht über eine umfangreiche Wirtschaft, sondern über die sehr schnelle Kameradrehung um die eigene Achse.

Aus meiner Sicht erreicht der Skriptbenchmark genau das was ich mir erhofft hatte, allerdings erkauft er sich das mit einer sehr langen Messzeit.
Für ein Review das in sehr kurzer Zeit erstellt werden muss ist er daher nur schlecht geeignet.
Dafür zeigt er als einziger Benchmark ein relevantes Bild der Lategame-Spielerfahrung und ist für mich daher alternativlos.
Eventuell hätte ich das ganze Skript etwas kürzen und weiter "zeit-optimieren" können aber das hätte mich so viele Extrastunden an Testmessungen gekostet, dass ich meine Energie lieber in die eigentlichen Messungen und Auswertungen gesteckt habe.

Was ist eure Meinung zu den verschiedenen Benchmarks?​

Mache ich mir das viel zu kompliziert und euch reicht auch ein Eindruck von der Anfangsphase, oder wollt ihr ebenfalls das Lategame+DLCs sehen?​

<- Vorheriger Thread(Der Skriptbenchmark) --Übersicht-- nächster Thread(Auswertung und Diagramme) ->
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: metallica2006, frankyboy1967, Schinken42 und 7 andere
Meine Meinung zu den Benchmarks: Wahnsinn!
Der Script Benchmark ist, worauf ich immer gewartet hab. Eben eine realistische Endgame Tortur.

Riesendank und Riesenlob für deine Arbeit!

Ich finde auch nicht, dass du es dir zu kompliziert machst. So komplex ist die wissenschaftliche Methode eben und du beherrschst sie meisterhaft. Ich gehe nicht davon aus irgendeinen methodischen Fehler zu finden, du hast das einfach gut durchdacht.
Chapeau!
 
  • Gefällt mir
Reaktionen: frankyboy1967 und Baal Netbeck
Zurück
Oben