Warum erzeugen kleine FFTs in Prime95 die meiste Wärme, obwohl die Prozessorleistung bei allen Optionen zu 100% liegt?

4997
ChrisA

Ich habe gerade einen neuen Skylake-PC gebaut und werde mit Prime95 ein bisschen Übertakten als Belastungsprüfgerät erleben.

Im normalen Betrieb funktioniert es einwandfrei, aber mit Prime95 merke ich unter bestimmten Lastbedingungen ein wenig CPU-Throttling.

Wenn alle 4 Kerne (8 Threads) ungeachtet dessen um 100% verklemmt sind, warum wird die Einstellung "Kleine FFT" in Prime95 auf eine höhere Temperatur eingestellt als die Option "Blend"?

9

1 Antwort auf die Frage

13
bwDraco

Vektorisierter Code, insbesondere AVX, erhöht naturgemäß die CPU-Heizleistung, da der Prozessor mit einer höheren Spannung arbeiten muss, um diese Anweisungen auszuführen. Kleine FFTs erfordern weniger Speicher als der Mischmodus, sodass der Prozessor mehr Zeit für die Datenverarbeitung und weniger Zeit für das Warten auf Daten aufwenden muss.

  • Die x86-64-Architektur bietet umfangreiche Vektorverarbeitungsfunktionen, insbesondere bei den neuesten Prozessoren. Die Vektorverarbeitung ermöglicht Anwendungen, mathematische Operationen an mehreren Datenelementen gleichzeitig auszuführen, und wird von vielen neueren, rechenintensiven Anwendungen verwendet, um den Verarbeitungsdurchsatz zu erhöhen.

  • Vektorisierter Code, insbesondere die von Prime95 verwendeten AVX- Anweisungen, setzt voraus, dass der Prozessor mit einer höheren Spannung als normal arbeitet. Dies führt zu einem höheren Energieverbrauch und einer höheren Wärmeabgabe als bei normalen Arbeitslasten. Aus diesem Grund warnt Intel, dass AVX-schwere Lasten dazu führen können, dass der Prozessor die vollen Turbo-Boost-Taktraten drosselt oder nicht aufrechterhält (Fußnote 1):

    Intel® Advanced Vector Extensions (Intel® AVX) sind darauf ausgelegt, bei bestimmten Ganzzahl- und Fließkommaoperationen einen höheren Durchsatz zu erzielen. Aufgrund unterschiedlicher Prozessorleistungsmerkmale kann die Verwendung von AVX-Anweisungen dazu führen, dass a) einige Teile mit weniger als der Nennfrequenz arbeiten und b) einige Teile mit Intel® Turbo Boost Technology 2.0, um keine oder maximale Turbofrequenzen zu erreichen.

    Intel erklärt dies im weiteren Detail in diesem Whitepaper . Insbesondere wird darauf hingewiesen:

    Intel AVX wurde entwickelt, um einen höheren Durchsatz für bestimmte Ganzzahl- und Fließkommaoperationen zu erreichen. Die Verwendung dieser Anweisungen kann dazu führen, dass Prozessoren mit der angegebenen TDP-Frequenz arbeiten. Diese Frequenzverringerungen treten auf, weil Intel AVX-Befehle mit hoher Leistung zusätzliche Spannung und elektrischen Strom benötigen.

    • Ich schätze, warum eine Erhöhung des V- Core für AVX-Anweisungen notwendig ist, dass die AVX-Ausführungseinheiten komplexer sind als die anderen Teile des Prozessors, was zu entsprechenden Pipelinestufen führt, deren Ausführung länger dauert (siehe technische Antwort zu Pipelines und andere Aspekte des Prozessordesigns). Wenn eine bestimmte Pipeline-Stufe langsam ist, ist die maximale Taktrate des gesamten Prozessors begrenzt, da jede Stufe in der Pipeline innerhalb jedes Taktzyklus enden muss.

    • Aus dem gleichen Grund erhöhen höhere Spannungen die maximal erreichbaren Frequenzen beim Übertakten (Transistoren können bei höheren Spannungen schneller schalten). Durch die Erhöhung der Spannung wird sichergestellt, dass die längeren Pipelinestufen rechtzeitig enden.

  • Der Small-FFT-Modus verwendet nur kleinere Datenelemente, die in den CPU-Cache passen können, im Gegensatz zum Blend-Modus, der sowohl kleine als auch große Werte verarbeitet, die möglicherweise nicht in den Cache passen. Da der Zugriff auf den Speicher relativ zum einfachen Verarbeiten von Daten langsam ist, wird der Prozessor weniger Zeit damit verbringen, Daten im Mischmodus zu verarbeiten, wodurch die Wärmeabgabe verringert wird. Kleine FFTs haben nicht annähernd so viele Speicherzugriffe zur Folge, dass die CPU tatsächlich mehr arbeiten muss, was den Stromverbrauch und die Wärmeabgabe erhöht.

Danke @DragonLord, das macht die verschiedenen Prime95-Modi sehr klar. Bitte erläutern Sie, warum der Ressourcenmonitor in beiden Fällen 100% anzeigt. Warum liest es im Blend-Modus nicht weniger als 100%, zum Beispiel, wenn es öfter auf Daten wartet als im Small-FFT-Modus? ChrisA vor 9 Jahren 0
Die CPU, die gerade auf Speicher wartet, wird immer noch als beschäftigt an das Betriebssystem gemeldet. bwDraco vor 9 Jahren 1