Was verursacht seltsame CPU-Auslastung Ausgabe von htop in Bash unter Windows

10

Wenn ich htopunter Windows in Bash ausgeführt werde, erhalte ich die folgende Ausgabe bezüglich der CPU-Auslastung: Geben Sie hier die Bildbeschreibung ein Während der Windows Task-Manager eine Auslastung von etwa 1% anzeigt.

Von hier aus ist klar, dass die roten Bereiche von htop die CPU-Auslastung durch Kernel-Threads bedeuten sollen , und grün für Threads mit normaler Priorität.

Im Fall von Bash unter Windows scheint das Grün derzeit die tatsächliche CPU-Auslastung zu sein, aber was bedeutet das Rot? Stellt es möglicherweise eine maximale Grenze für die Verwendung des Windows-Linux-Subsystems dar oder handelt es sich lediglich um einen Anzeigefehler. In diesem Fall wird speziell für jede CPU / jeden Hyperthread eine Auslastung von 50% angezeigt?

Silveri
quelle

Antworten:

2

Ich habe genau das gleiche Problem:

htop

Wie Sie sehen können, läuft nur htop und es verbraucht kaum 1,0% der CPU. Unter Windows bin ich dabei unter 10% der CPU-Auslastung. Noch schlimmer ist, dass Thread 4 immer einen grünen Balken hat, der viel größer ist als die anderen. Der Prozentsatz von allen liegt immer zwischen 50-60%.

Ich glaube, es ist ein Problem der Implementierung oder nur ein Fehler. Denken Sie daran, dass "bash on Windows" sich noch in der Beta befindet. Wenn jemand eine Lösung oder zumindest eine Problemumgehung kennt, wäre das gut.

Zusätzliche Informationen zu Bash und möglichen Problemen während der Beta: https://msdn.microsoft.com/en-us/commandline/wsl/about?f=255&MSPPError=-2147217396 (lesen Sie den wichtigen Hinweis )

JChris
quelle
1

Es gibt eine ziemlich einfache Erklärung. Bash unter Windows hat keinen Zugriff auf die CPU-Daten des Hosting-Windows-Computers. Daher Ausgabe von top, htopoder was auch immer Sie , bis Microsoft verwenden möchten löst dieses Problem werden Sie nicht wirklich die CPU - Auslastung zeigen.

sebszyller
quelle
0

Meine Vermutung wäre "System Idle Process" in Details im Task-Manager. Das ist wahrscheinlich ein Prozess auf Kernel-Ebene, der den Rest meiner CPU beansprucht, der nicht verwendet wird. Vielleicht htopwird es damit verwechselt.

Siehe: https://en.wikipedia.org/wiki/System_Idle_Process

Brandan Tyler Lasley
quelle
1
Aber warum sollten das genau 50% sein, gleichmäßig auf alle Kerne verteilt?
MWiesner
Er hatte Glück mit dem Screenshot? Es variiert ziemlich drastisch bei mir, liegt aber zwischen 40 und 60%. Vielleicht hat es etwas damit zu tun, wie htop die CPU-Auslastung berechnet. askubuntu.com/questions/15620/…
Brandan Tyler Lasley
Nicht spezifisch für htop, oben zeigt das gleiche. ZB starten topund drücken 1.
Zitrax