bogatzky wrote: ↑Wed, 30. Dec 20, 16:39
Wenn Du dies schon machst, solltest Du noch die Texturfilterung vom Standard "Hohe Qualität" auf "Hohe Leistung" umstellen.
Das bringt fast nichts, aber die Bildqualität leidet darunter. Ist also nicht zu empfehlen.
Sweex wrote: ↑Wed, 30. Dec 20, 20: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 Exbibyte (1.048.576 Terabyte) möglich, Desktop-CPUs unterstützen üblicherweise aber nur 48 Bit, mit 256 Tebibyte (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.