Frage zu Boost, TDP, Task-Manager und Auslastung

Pure Existenz

Banned
Registriert
Juli 2013
Beiträge
2.899
Hallo zusammen

Im Moment sitze ich an meinem Notebook. Dieses hat einen i5 3320m.
Im Moment hat mich die Nostalgie gepackt und ich zocke das gute alte Civ 2 von 1996.
Dabei ist mir aufgefallen, dass mein Lüfter "hörbar" dreht.
Ich habe dann "CoreTemp" runtergeladen und nach den Temps geschaut.
Die sind bei beiden Kernen um die 70°C.
Das verstehe ich nicht ganz! Civ 2 nutzt doch nur einen Kern???
Warum haben dann beide Kerne in etwas die gleiche Temp?

Der Task-Manager gibt die Auslastung mit 25% an.
Wieso nur 25%? Ich dachte bei Nutzung von Ein-Kern-Spielen/Anwendungen müsste das doch auch 100% sein, wenn der Turbo auf einem Kern dafür höher taktet?
Allerdings schwankt das immer wieder und ich habe mal 3,3GHz auf einem Kern, mal 3,1GHz auf beiden Kernen.
Habe ich durch HT deswegen Leistungseinbußen?

Die TDP ist mit 35Watt angeben. Bei Civ2 habe ich laut CoreTemp eine TDP von 13Watt (inkl. Boost).
Kommt das bei der Auslastung hin? Müsste die TDP nicht höher sein, wenn der maximale Boost anliegt?

Fragen über Fragen. Ich hoffe auf zahlreiche Antworten.

Danke und Gruß
 
Das Spiel wird, auch wenn es nur einen Kern nutzt, auf beiden ausgeführt. Zufällig mal auf dem, mal auf dem anderen. Aber eben immer nur auf einem. Windows Scheduler verteilt dies so automatisch.

Du hast eine 25% Auslastung weil du 4 logische Kerne hast (Dualcore + HT). Ein Kern ist voll belegt durchs Spiel und das sind eben 25%
Du hast keine Leistungseinbussen durch HT
Verbrauch in W und CPU Auslastung hat nur mittelbar miteinander was zu tun. Es müssen nicht die vollen 35W ausgeschöpft werden auch wenn eine CPU 100% ausgelastet ist. In der Pipeline der CPU mit ~15 Stages reicht es wenn einer der 15 Stages voll ausgelastet ist, und die CPU ist dann eben "zu", zu 100% beschäftigt.
 
Danke für die schnelle Antwort.
Was mir noch einfällt: Im Task-Manager ist die Grafik bei allen Kernen ausgelastet.
Als Zahl eben 25%. Wie ist das die Erklärung?
 
bei allen Kernen ausgelastet.
Du meinst wohl nicht "ausgelastet", sondern ausgeglichen.

Abgesehen davon:
- Du hast nur einen Prozessor, also nur einen Die (Silizium-Chip, also der eigentlich Prozessor) und damit nur eine Temperatur. Die mag ein paar Grad je nach Kern hin und her schwanken, im Grunde ist aber der Die überall relativ gleich warm. Schnurzpipegal, welcher Kern gerade ausgelastet ist.
- du hast eine CPU mit 2 Kernen und 4 Threads. Für den Taskmanager zählt allein die Anzahl der Threads. Also 1 Kern Volllast entspricht eben 25% Gesamtlast bei 4 Thread (virtuellen Kernen)
- du alledem verteilt der Scheduler des Betriebssystems noch die laufenden Programme (nennen wir sie hier Software-Threads bzw. SW-Threads zur Abgrenzung der Hardware-Threads der CPU) ständig neu. Würde er das nicht machen, dann hättest du nur maximal 4 Programme die gleichzeitig laufen würden. Das würde nicht mal für den Start von Windows ausreichen. Jedes Programm braucht Rechenzeit und meldet diese beim Scheduler an, der Scheduler teilt diese dann zu. Selbst jede Tastatureingabe braucht eine Zuweisung vom Scheduler, sonst würdest du wenn ein Programm läuft auf einem Kern nicht mal eine Taste drücken können. (Vereinfacht gesagt). Das ganze passiert im Mikrosekundenbereich (wenn nich noch schneller).
-> Der Taskmanager ist also nur eine stark vereinfachte Sicht auf das, was wirklich unter der Haube vorgeht. Wenn du den anschaust und denkst du kapierst dadurch alleine was wirklich passiert ist das so, wie wenn du ein Auto siehst und denkst, das fährt nur, weil es Räder hat ;)
- " Habe ich durch HT deswegen Leistungseinbußen?" -> In der Regel nicht, das macht der Scheduler, dass er sich um eine sinnvolle Verteilung kümmert. Einbußen kommen meist davon, dass Programme die SW-Threads als echte Kerne zählen und entsprechend so mit ihnen Haushalten als ob sie vollwertig mitrechnen könnten. Das ist aber mittlerweile zum Glück die Ausnahme und wird bei neuen CPU-Modellen die die Software noch nicht richtig erkennt, meist schnell gefixed.
- Die schwankende Taktrate ist entweder TDP/Verbrauch-, Temperatur- oder Auslastungsabhängig. Muss dich nicht interessieren, weil das die CPU für sich selbst regelt.

Ich hoffe ich habe alle Fragen soweit "erschlagen".
 
Soweit passt das dann, Daaankeeee :-)
 
Zuletzt bearbeitet:
Pure Existenz schrieb:
Der Task-Manager gibt die Auslastung mit 25% an.
Wieso nur 25%? Ich dachte bei Nutzung von Ein-Kern-Spielen/Anwendungen müsste das doch auch 100% sein
Nein, so wäre es bei top unter Linux, da hätte ein 4 Kerner (4 Threads) dann aber auch 400% wenn alle (virtuellen) Kerne ausgelastet sind. Bei Windows Task Manager sind es aber nur 100% wenn alle Kerne voll ausgelastet sind, bei einem 4 Kerner sind also bei einem SW Thread maximal 25% Auslastung möglich, der Takt hat darauf keinen Einfluss.

Pure Existenz schrieb:
Im Task-Manager ist die Grafik bei allen Kernen ausgelastet.
Als Zahl eben 25%. Wie ist das die Erklärung?
Ja, der Task Scheduler verschiebt die Threads so schnell zwischen den Kernen der CPU hin und her, dass es wie eine gleichmäßige Auslastung von 25% auf allen 4 (virtuellen) Kernen aussieht, dabei limitiert dann die Singlethreadperformance und kaum einer merkt dies wirklich. Der Task Scheduler von Linux verschiebt dagegen die Threads viel langsamer und daher sieht man bei top wenn man sich die Auslastung pro Kern ansieht, die 100% langsam von einem Kern zum nächsten wandern.

Wüssten mehr Leute davon, es würden nicht so viele daran zweifeln wie wichtig die Singlethreadperformance einer CPU im Alltag eines Heimanwender ist, denn in der Situation würde ein bei einem 8 Kerner mit gleicher Singlethreadperformance das Programm kein Stück schneller laufen und alle 8 wären dann eben nur zu so 13% ausgelastet.
 
Holt schrieb:
Der Task Scheduler von Linux verschiebt dagegen die Threads viel langsamer

Quatsch. Nur weil top eine gemächliche Ansicht hat, ist der Scheduler nicht langsamer...
Auch der Scheduler von Linux/Unix/Whatever reagiert nach Prioritäten und verteilt blitzschnell (um mich nicht auf nano/micro/milli-Sekunden festnageln zu lassen) die Aufgaben.
Wobei verschieben sowieso der falsche Ausdruck ist, sondern eigentlich ist es ein reines zuteilen/zuweisen der Aufgaben zu einem Kern, bzw Zuweisung von Rechenzeit an einen Thread.
 
Nur weil du keine Ahnung von Linux und Windows hast, ist das noch längst kein Quatsch und gerade weil top per default die Anzeige langsamer aktualisiert als der Windows Task Manager zeigt sich doch so deutlich wie viel länger der Task Scheduler von Linux einen Thread auf dem gleichen Kern laufen lässt. Sonst wäre ja auch bei top bei einer Singlethreadlast bei jeder CPU die mehr als einen virtuellen Kern hat, nie 100% zu sehen. Dem ist aber nicht so, nur hast du sowas wohl noch nie gesehen und redest daher wo eine Blödsinn, wie es in letzter Zeit typisch für dich geworden ist und damit bist du echt ein Störer geworden und machst anderen nur unnötig Arbeit den Blödsinn richtigzustellen bevor den jemand glaubt.
 
Zurück
Oben