Baldur’s Gate 3 Akt Drei beeinträchtigt die CPU-Leistung massiv – aber warum?

Baldur's Gate 3 Akt Drei beeinträchtigt die CPU-Leistung massiv - aber warum?' - 'Baldur's Gate 3 Akt 3 beeinträchtigt CPU-Leistung massiv - warum?

Kurz nachdem unser Hauptinhalt zu Baldur’s Gate 3 letzte Woche ‘veröffentlicht’ wurde, habe ich bemerkt, dass es Kommentare gab, die darauf hindeuten, dass sich die Leistungseigenschaften umso mehr ändern, je weiter man im Spiel vorankommt. Veteranen des Early Access wollten besonders spezifische Tests des dritten Akts und dank eines Spielstands, den uns der Twitter-Benutzer DarknessFX zur Verfügung gestellt hat, konnten wir auf einen 99-Stunden-Spielstand zugreifen und uns in einige Stresstests zur Leistung stürzen.

Also, was ist so besonders am dritten Akt? Ganz einfach ausgedrückt, es geht um die Dichte, denn das Geschehen verlagert sich in die Stadt Baldur’s Gate selbst, eine große Stadt in der Spielreihe, mit vielen NPCs. In meiner Hauptrezension letzte Woche habe ich festgestellt, dass mittlere PCs in bevölkerungsreichen Gebieten zu kämpfen hatten und allein das Durchlaufen der Stadt zeigt, dass die Anzahl der NPCs hier erheblich höher ist. Diese Dichte belastet die CPU erheblich – und ich denke, sie verstärkt andere Probleme, die in unserer ersten Arbeit noch nicht sichtbar waren.

Eine der Besonderheiten dieser höheren Leistung im dritten Akt besteht darin, dass die Bewegung das Spiel sichtbar CPU-intensiver macht. In einer bestimmten statischen Szene habe ich eine Bildrate von 90fps auf einem Core i9 12900K festgestellt, aber schon das Bewegen des Charakters in Mini-Kreisen hat die Leistung um 20 Prozent beeinträchtigt, obwohl die Ansicht und die Anzahl der Objekte auf dem Bildschirm im Wesentlichen gleich sind. Die Bildrate ist niedriger, aber vor allem sind die Frame-Zeiten unruhiger.

Wenn Sie High-End- und Mainstream-CPUs in Baldur’s Gate 3 in der anspruchsvollsten Umgebung testen möchten, schauen Sie sich das hier an.

Ein weiteres Problem im dritten Akt entsteht durch Kamerawechsel in Zwischensequenzen oder Gespräche, was in diesem Bereich regelmäßig passiert. Der Wechsel zu Zwischensequenzen verursacht normalerweise sowieso eine hohe CPU-Auslastung, aber aufgrund der allgemein höheren CPU-Last im dritten Akt sind diese Pausen, um in ein Gespräch zu kommen, jetzt sichtbar und spürbar schlechter. Der größte Effekt, den Sie in belastenden Szenen im dritten Akt bemerken werden, betrifft jedoch die allgemeine Stabilität der Frame-Zeiten – oder wie ich es nenne, die ‘Frame-Gesundheit’. Dies wird visuell im eingebetteten Video besser erklärt, aber wenn die Frame-Zeiten um bis zu 50 bis 100 Prozent steigen können, äußert sich dies als Ruckeln. Hinzu kommen die Erdbeben in der Stadt – jedes Erdbeben geht auch mit mehreren großen Spitzen in den Frame-Zeiten einher, die wie spürbare Ruckler wirken.

Die Wahl der Rendering-API kann ebenfalls eine Rolle spielen. Unter Vulkan führt das Spiel in von NPCs bevölkerten Gebieten ähnlich – oder sogar schlechter – als DirectX 11. Obwohl Vulkan technisch gesehen in leeren Bereichen auf Nvidia- oder AMD-Hardware ohne NPCs schneller laufen kann, funktioniert es tatsächlich schlechter in Gebieten mit vielen NPCs – rund 10 Prozent schlechter auf meinem 12900K.

Dies ist ein Prozessor der Spitzenklasse, aber die Auswirkungen auf die Leistung sind auf etwas wie dem Mainstream Ryzen 5 3600 einfach katastrophal. Die Leistung sinkt von Anfang an um 50 Prozent, aber die Frame-Zeiten sind viel, viel schlechter. Während der 12900K definitiv einige Frame-Zeiten-Spitzen und etwas Fluktuation aufweist, ist der Ryzen 5 3600 viel schlechter dran, bei dem nahezu jeder gerenderte Frame eine sichtbare Varianz in der Länge aufweist. Er läuft zeitweise durchschnittlich mit 30fps, sieht aber überhaupt nicht flüssig aus, ähnlich wie Bloodborne auf PlayStation-Konsolen nie flüssig aussieht, da die Varianz von Frame zu Frame viel zu hoch ist. Wenn ein Frame zum nächsten eine Steigerung der Frame-Zeit um 40 bis 50 Prozent aufweist, kann dies nicht geglättet werden, was bedeutet, dass FreeSync und G-Sync Ihnen hier nicht helfen werden.

Die Mainstream-Champions von gestern kommen in Baldur’s Gate 3 im dritten Akt nicht klar. Ein Core i9 12900K ist ungefähr doppelt so schnell – und beachten Sie, wie die Frame-Zeit-Spitzen deutlich reduziert sind. Wir verwenden hier DX11, aber Vulkan ist auf beiden Prozessoren tatsächlich schlechter – selbst mit einer AMD-GPU.

Und es kann noch schlimmer werden. Was ist, wenn Sie ein Zauberer im dritten Akt sind und eine Reihe von beschworenen Kreaturen verwenden? Bei einem 12900K sinkt die Leistung um 10 Prozent, mit unregelmäßigeren Frame-Zeiten. Alle paar Frames ist einer teurer als die anderen – was ein Pfadfindungs-, Animations- oder KI-Update sein könnte. Natürlich ist es schwer zu sagen, aber auf einem älteren Mid-Range-Chip wie dem Ryzen 5 3600 wird dieses KI-Update alle paar Frames verstärkt und führt zu katastrophalen Ergebnissen. Die Bildratenzahl deutet auf einen Rückgang von nur sechs Prozent hin, aber die Frame-Zeiten können um 50 Prozent steigen, was zu ruckelnden Bewegungen führt, die nie flüssig aussehen. Der dritte Akt ist wirklich ein Monster und ältere Zen 2-Chips scheinen der Aufgabe nicht gewachsen zu sein.

Also, die Aufforderungen, insbesondere Akt Drei genauer zu untersuchen, waren gerechtfertigt. Baldur’s Gate 3 läuft einfach schlechter – aber es ist erklärbar, dass es viel mehr KI auf dem Bildschirm gibt, was die CPU-Begrenzungen verstärkt. Und es gibt nicht viel, was man dagegen tun kann. Bei den absolut niedrigsten Einstellungen kann man sehen, wie die durchschnittliche Leistung um nur etwa 14 Prozent steigt. Die Frame-Zeiten sind etwas weniger unregelmäßig, aber all diese Erdbeben verursachen immer noch große Frame-Zeit-Spitzen, und jetzt verliert man einen Großteil der visuellen Pracht durch den Verlust an Detailgenauigkeit. Kann Vulkan hier helfen? Nicht wirklich, es gibt einen Leistungseinbruch von sieben Prozent – DX11 bleibt der beste Weg nach vorn.

Eine Framerate-Begrenzung von 30fps vielleicht? Die eingebaute Framerate-Begrenzung erzeugt bei aktivem V-Sync eine inkonsistente Frame-Pacing, während selbst Nvidias zuverlässige halbe adaptive V-Sync-Option im Treiberpanel aufgrund von CPU-Begrenzungen immer noch einige unregelmäßige Frame-Zeiten aufweist. Es ist jedoch stabiler, daher lohnt es sich, eine solche Option oder Kaldien’s SpecialK-Begrenzer zu untersuchen.

Ist diese Leistung gerechtfertigt und kann sie behoben werden? Um das zu beantworten, denke ich, dass wir uns ansehen können, wie sich die Leistung mit der Anzahl der Kerne und Threads skaliert. Wenn wir uns den Core i9 12900K ansehen, sehen wir interessante Daten, wenn wir untersuchen, wie das Spiel auf unterschiedlichen Anzahlen von Kernen und Threads läuft. Die beste Kombination hier ist tatsächlich acht Kerne ohne Hyperthreading. Acht Kerne performen nur vier Prozent besser als sechs, während der vollständig aktivierte 12900K nur zwei Prozentpunkte besser ist als das Ergebnis mit sechs Kernen, obwohl sich die Anzahl der Threads und verfügbaren Kerne verdoppelt. Acht p-Kerne mit aktiviertem Hyperthreading erzielen das schlechteste Ergebnis von allen, ein wenig langsamer als das Ergebnis mit sechs Kernen.

Wie ich das sehe, zeigt mir diese Skalierung, dass Baldur’s Gate 3 noch ein wenig Arbeit benötigt, um eine bessere Nutzung von Many-Core-Prozessoren zu ermöglichen (und vielleicht die Erkenntnis, dass Benutzer auf BIOS-Ebene wahrscheinlich nicht das Hyperthreading ausschalten werden). Eine Konzentration auf die Reduzierung von Rucklern, die durch Erdbeben und Kamera-Positionsänderungen verursacht werden, wäre ebenfalls willkommen. Vulkan bleibt ein Fragezeichen. Sein Zweck scheint hinfällig zu sein, wenn es die CPU-Leistung nicht verbessert, wenn man sie am meisten braucht, und eine gute, leistungsstarke Vulkan-Implementierung könnte die Grundlage sein, um die CPU-begrenzten Probleme zu lösen. Mit all dem im Hinterkopf wird es faszinierend sein zu sehen, wie sich die PlayStation 5-Version schlägt, bedenkt man, dass sie die gleiche Zen-2-Architektur wie der Ryzen 5 3600 verwendet, der in der Akt-3-Umgebung so sehr zu kämpfen hat.