this post was submitted on 21 Jun 2023
5 points (100.0% liked)

de_EDV

3805 readers
1 users here now

Ableger von r/de_EDV auf Lemmy.

News, Diskussionen und Hilfestellung zu Hard- und Software

Diese Community dient als Anlaufstelle für alle IT-Interessierten, egal ob Profi oder blutiger Anfänger. Stellt eure Fragen und tauscht euch aus!

Weitere IT Communitys:

[email protected]

[email protected]

[email protected]

[email protected]

founded 1 year ago
MODERATORS
 

Hallo zusammen! Ich wollte mal fragen, ob ich es richtig verstehe, dass in meinem Fall hyperthreading stört...

Und zwar benutze ich eine Simulationssoftware, die bis zu 4 Threads gleichzeitig verwenden kann. Meine CPU ist ein i7 mit 4 Kernen und 8 Threads durch hyperthreading. Wenn die Simulation läuft, ist meine CPU zu 50% durch diese ausgelastet.

Wenn ich hyperthreading jetzt ausschalte, wird dann damit die CPU zu 100% verwendet, weil die 4 Threads exakt auf die 4 Kerne passen, oder habe ich da etwas übersehen? Das sollte ja die Rechenzeit etwa halbieren.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 11 points 1 year ago* (last edited 1 year ago) (1 children)

Wenn ich hyperthreading jetzt ausschalte, wird dann damit die CPU zu 100% verwendet, weil die 4 Threads exakt auf die 4 Kerne passen

Ja, wird dann so aussehen.

Das sollte ja die Rechenzeit etwa halbieren.

Nein. Du gehst von 4C/8T (4 cores / 8 threads) und 4 threads im Programm auf 4C/4T und 4 threads im Programm. Es wird prinzipiell nicht schneller, du belegst jetzt halt 4 von 4 threads und nicht mehr 4 von 8.

[–] [email protected] 1 points 1 year ago (1 children)

Ja gut, dass ich hier frage. Die Sache ist halt, dass jeder thread des Programms 12,5 der CPU auslasten, da ist dann ja noch was frei...

[–] [email protected] 6 points 1 year ago (1 children)

Und wenn du Hyperthreading ausschaltest entfernst du diese frei Kapazität statt sie zu nutzen.

[–] [email protected] 2 points 1 year ago (1 children)

Ich kann sie ja so oder so nicht nutzen.

Ich glaube einfach, dass ich noch nicht so ganz verstanden habe, was hyperthreading tatsächlich tut. Ich dachte bisher, dass damit quasi ein Kern seine Rechleistung auf zwei Aufgaben parallel aufteilt und daher nur dann vollständig verwendet wird, wenn ausreichend viele Aufgaben anstehen. Da die Simulation nur 4 threads unterstützt, dachte ich, dass dadurch die halbe CPU ungenutzt ist.

Ist wohl noch so und ich probiere es einfach mal aus.

[–] [email protected] 5 points 1 year ago

Hyperthreading ist im Prinzip ein Mittelding zwischen einem und zwei Cores, ein paar Teile der Hardware sind doppelt vorhanden, die meisten nicht. Das ganze ist sehr hilfreich wenn man z.B. weniger CPU-lastige Tasks hat da man dann ohne erst aufwändig Context-Switch in Software machen zu müssen die gleiche Hardware für einen zweiten Task verwenden kann während der erste auf z.B. ein Laden von Daten aus dem RAM wartet und wenn die Daten dann da sind kann der erste weiter arbeiten während der zweite z.B. gerade seine Daten an die Festplatte schickt usw.