/ / Multi-Core-CPU-Single-Thread-Verhalten, erreicht nicht 100% - Multithreading, Multicore

Multi-Core-CPU-Single-Thread-Verhalten, erreicht nicht 100% - Multithreading, Multicore

Alt-Text

Wie Sie dem angehängten Bild entnehmen können, ist das CPU-Diagramm auf meinem Dual-Core-Rechner seltsam symmetrisch!

Ist dies eine Art Lastenausgleich, um zu verhindern, dass ein Kern mehr als der andere verwendet wird? Was sind die Gründe dafür (Wärmeverteilung vielleicht)?

Natürlich ist mein Hauptanliegen: Erreicht mein PSNR-Bildalgorithmus mit einem Thread 100%?

CPU ist Core 2 Duo E6850 3Ghz mit Ubuntu 10.4.

Vielen Dank

Ross

Antworten:

4 für die Antwort № 1

Sie erreichen mit beiden CPUs eine Auslastung von 50%. Ihr Programm ist nicht an eine feste CPU gebunden und wechselt je nach Kernel (und anderen auf Ihrem System ausgeführten Prozessen).

Wenn Sie sicherstellen möchten, dass Ihr Prozess auf einem Ihrer Kerne ausgeführt wird, müssen Sie die Affinität festlegen (Beispiel hier). Auf diese Weise sollte ein Kern zu 100% ausgelastet sein, während der andere für andere Aufgaben verwendet wird.


0 für die Antwort № 2

(Hätte Kommentare dazu verwenden sollen, aber ich habe nicht genug Repräsentanten!)

Ich bin mehr als einmal auf diese Situation gestoßen und hatte immer einen Anwendungskonflikt.

Dies kann beispielsweise passieren, wenn compiz zweimal gestartet wird oder wenn es teilweise nicht installiert ist. Ich habe festgestellt, dass dies auch passieren kann, wenn DVDs mit zwei verschiedenen Playern gleichzeitig gelesen werden.

Nach meiner Erfahrung ist es kein normales Verhalten: Der Computer verlangsamt sich ziemlich stark, was ärgerlich ist, wenn Sie versuchen, es zu beheben!