Wenig FPS [vermutlich gelöst]

Hier ist der Ort für Fragen bei technischen Problemen mit X4: Foundations.

Moderator: Moderatoren für Deutsches X-Forum

Post Reply
User avatar
arragon0815
Posts: 16721
Joined: Mon, 21. Aug 06, 13:17
x4

Re: Wenig FPS [vermutlich gelöst]

Post by arragon0815 » Wed, 30. Dec 20, 23:14

...und wie ich schon sagte, die Prozessorauslastung ist gerade bei den Mehrkernern nicht mehr relevant weil eben jeder Thread einzeln auf Überlastung angeschaut werden muss...da kann 12% Auslastung stehen, aber der Prozessor ist am Limit wenn 1 Thread bei 100% ist...

Und ja, die Mehrkernoptimierung ist in der Spieleindusdrie noch nicht so verbreitet, gibt ja verschiedene Themen das weniger Kerne mit hoher Taktrate besser sind als viele Kerne, bzw. ab einer gewissen Kernanzahl die Performance in Spielen nicht mehr verbessert wird. Ob Du dann einen Sechskerner oder Achtkerner hast ist dem Spiel wurscht - vorausgesetzt die sind Baugleich :D
AMD Ryzen 9™ 7900X3D // PNY GeForce RTX™ 4070 12GB Verto // Kingston FURY DIMM 32 GB DDR5-5200 Kit // GIGABYTE B650E AORUS MASTER // Enermax ETS-T50 AXE Silent Edition // SAMSUNG 980 PRO 1 TB SSD + Seagate ST2000DM008 2 TB // Thermaltake Toughpower GF3 1000W // Microsoft Windows 11 OEM // 65" Sony 4K Gaming TV, 120 Hz.
X4 rennt wie Sau in 4K :eg:

Homerclon
Posts: 1308
Joined: Thu, 13. Jul 06, 16:47
x3tc

Re: Wenig FPS [vermutlich gelöst]

Post by Homerclon » Thu, 31. Dec 20, 06:19

bogatzky wrote:
Wed, 30. Dec 20, 15:39
Wenn Du dies schon machst, solltest Du noch die Texturfilterung vom Standard "Hohe Qualität" auf "Hohe Leistung" umstellen. :wink:
Das bringt fast nichts, aber die Bildqualität leidet darunter. Ist also nicht zu empfehlen.
Sweex wrote:
Wed, 30. Dec 20, 19:00
Intel hat bei dem Pentium 4 Hyper Threading eingeführt und mit SMT folgte auch AMD.
Hyper Threading ist nur Intels Marketingbegriff für SMT.
Das 1 Thread selbst die gewaltigste CPU platt machen kann ist keine Zauberei und genau dafür gibt es logische Prozessoren, die sich die Last je physischen Core mit mehrerer Threads aufteilen können.
Genau das ist der Zweck der x64 Architektur.
Da wirfst du mehrere Sachen zusammen.
Die x64-Architektur hat nichts mit SMT zu tun. Die ersten Pentium 4 mit SMT hatten keine x64-Erweiterung, die folgte erst später. Um genau zu sein, wurde x64 mit der darauffolgenden Architetktur etwa 2 Jahre später eingeführt. AMD war mit x64 etwa 1 Jahr früher dran, zumindest dem x86-64, die zu den 32bit-Anwendungen von x86-CPUs Kompatibel waren. Inkompatible 64-Bit-CPUs gab es schon in den 90er, wurden eben wegen der Inkompatibilität vom Markt aber nur schlecht angenommen. Als AMD mit der x86-64 Erweiterung auf den Markt kam, hatte Microsoft ihr Windows darauf abgestimmt, damit war dann entschieden das nicht auf reine 64-Bit-CPUs umgestellt wird. Intels x86-64-Erweiterung wurde zu der von AMD Kompatibel gemacht.
Genug des Exkurs.

Mit SMT laufen die Programme nicht automatisch schneller, ohne Anpassung der Software tut sich gar nichts. Im ungünstigsten Fall läuft es sogar langsamer, was gerade nach der Einführung von SMT durch Intel nicht unüblich war. Auch heute gibts noch Software (inkl. Spiele) die bei aktivem SMT langsamer berechnet wird. Meist aber nur noch bei CPUs mit sehr vielen Kernen, während sie bei CPUs mit weniger Kernen von SMT profitiert oder unbeeinflusst bleibt.
SMT dient dazu, eine CPU besser Auslasten zu können, denn es werden nie alle Recheneinheiten gleichzeitig genutzt. Wenn nun ein Programm gerade nur die Einheiten für Addition benötigt, hilft weder SMT noch ein weiterer Kern, das Programm läuft dadurch nicht schneller. Da würde nur höherer Takt, schnellere oder mehr Additions-Einheiten helfen.
Wenn das Programm zwar Additionen und Multiplikationen durchführen muss, aber zur Multiplikation auf das Ergebnis der Addition warten muss, bringt SMT oder ein zusätzlicher Kern noch immer nichts. Es hilft nur etwas, wenn Addition und Multiplikation unabhängig voneinander berechnet werden können. Wenn zwei Additionen parallel durchgeführt werden könnten, dann hilft SMT bereits nichts mehr und es müsste ein weiterer Kern her. Wobei SMT noch helfen kann, ist die nötige Daten für eine anstehende Berechnung schon mal zu laden, damit mit weniger Verzögerung an dieser weitergearbeitet werden kann. Was u.a. dann hilfreich ist, wenn für die erste Berechnung auf Daten aus dem RAM gewartet werden muss. Andernfalls müssten die Daten erst in den Cache geschrieben werden - oder gar den RAM -, und dann die Daten der anderen Berechnung angefordert und geladen werden.
Aber damit überhaupt ein Programm Parallel berechnet werden kann, muss das Programm darauf ausgelegt sein. Andernfalls wird es weiterhin von nur einem einzigen Kern berechnet, egal ob Mehrkern-CPU oder auch mit/ohne SMT.
Zur erwarteten Leistungssteigerung durch SMT hatte Intel vor langer Zeit mal bis zu 20% angegeben, dies wird also auch nicht in jedem Fall erreicht. SMT zu implementieren ist aber "günstiger" als ein weiteren Kern.

Spiele lassen sich leider nicht so gut parallelisieren wie Software für manch andere Betätigungsfelder. Bei Spiele kommt es häufiger vor, das für eine Aufgabe das Ergebnis einer anderen Aufgabe benötigt wird, solange muss mit der Berechnung dann pausiert werden. Zudem muss früher oder später alles auf ein gemeinsamen Stand gebracht werden. Es gibt also immer einen Flaschenhals, den die Entwickler jedoch so groß wie möglich zu machen versuchen.

SMT ist übrigens auch nicht zwingend auf 2 Logische je einem Physischen Kern beschränkt. IBM bietet bspw. CPUs mit 8-fach SMT an, also 1 physischer Kern, insgesamt 8 Logische.

x64 dient dazu größere Datensätze gleichzeitig verarbeiten zu können (vereinfacht ausgedrückt), nämlich bis zu 64 Bit anstatt nur 32 Bit Größe. Für die Kompatibilität zu x86-32 wird auch noch 32 Bit unterstützt, folglich muss die Software für 64 Bit angepasst sein, um davon zu profitieren.
Zeitgleich wurde der adressierbare Speicherbereich deutlich erhöht. Mit 64 Bit sind theoretisch 16 Exbi­byte (1.048.576 Terabyte) möglich, Desktop-CPUs unterstützen üblicherweise aber nur 48 Bit, mit 256 Tebi­byte (262.144 Gigabyte). Wobei so große RAM-Mengen im Desktop-Bereich noch immer nicht zu bekommen sind. Mit 32 Bit waren nur 4 Gibibyte (4.096 Megabyte) möglich, wobei bereits ab dem Pentium Pro die Technik PAE integriert wurde, um trotzdem mehr als 4GiB zu adressieren zu können. Das musste aber vom Betriebssystem und der Software unterstützt werden, weshalb man es in Heimanwender-Software quasi nicht zu Gesicht bekam, obwohl man es in mehreren Windows-Versionen für Heimanwender aktivieren konnte.
- 01100100 00100111 01101111 01101000 00100001
- Nur DL-Vertrieb? Ohne mich!

Sweex
Posts: 16
Joined: Sun, 17. Jun 07, 21:38
x4

Re: Wenig FPS [vermutlich gelöst]

Post by Sweex » Fri, 8. Jan 21, 13:57

Danke für eure Hinweise und Korrekturen.

Nach einigen Stunden weiterer Tests bin ich zufällig auf die RAM / VRAM Nutzung aufmerksam geworden und hab mir dementsprechend mal die Virtual RAM Settings von Win genauer angeschaut.
Die Werte dort habe ich grob auf 16GB Ram umgestellt ( =min 24576 MB) und die Auslagerungsdatei auf die NVMe SSD festgelegt.
Nach einigen System Updates waren die Werte noch auf einem alten Stand und wurden auch nicht autom. verwaltet, was scheinbar zu Problemen und unnötiger CPU Last führte.

Lange Rede kurzer Sinn. Die FPS (selber Spielstand) sind nun stabiler als zuvor und das gesamte Spiel wirkt deutlich flüssiger. Gefühlt sind die min und average FPS leicht gestiegen.
Der ProcessExplorer zeigt weiterhin einen recht geringen RAM Verbrauch von max 7 GB an aber eine deutlich höhere Nutzung des Virtual Memory (rund um 15GB)

Die GPU Auslastung ist ber 1080p weiterhin sehr gering und sinkt, je weiter die CPU ausgelastet ist.
Mit 4x DSR lässt sich das Spiel in 3840x2160 Rendern und hat dabei kaum weniger FPS als in 1920x1080.


Hat jemand Erfahrungen, ob das Spiel bei 32GB Ram komplett ohne Auslagerungsdateien läuft? Vielleicht könnte ich damit nochmal etwas mehr Leistung raus holen ?

Nochmal danke für ganzen Infos.

User avatar
mr.malcom
Posts: 1118
Joined: Mon, 29. Mar 04, 21:48
x4

Re: Wenig FPS [vermutlich gelöst]

Post by mr.malcom » Tue, 12. Jan 21, 18:12

Sweex wrote:
Fri, 8. Jan 21, 13:57
...Hat jemand Erfahrungen, ob das Spiel bei 32GB Ram komplett ohne Auslagerungsdateien läuft? Vielleicht könnte ich damit nochmal etwas mehr Leistung raus holen ?...
Bitte die Auslagerungsdatei nicht deaktivieren, auch bei 32GB RAM nicht.
Das kann zu nicht startenden Spielen/Programmen oder mit Fehlermeldung beendeten Spielen/Anwendungen führen.

Tip: Auslagerungsdatei von Windows verwalten lassen. Wenn unbedingst was daran gebastelt werden soll. Aulagerungsdatei auf dem schnellsten SSD Laufwerk mit von Winwdows verwalteter Größe.

Post Reply

Return to “X4: Foundations - Technische Unterstützung”