Linux-CPU-Hotplug funktioniert nicht wie erwartet

558
JATothrim

Ich teste Linux-CPU-Hotpluging auf einer normalen 8-Core-AMD-Desktop-Maschine. Das Problem scheint zu sein, dass, nachdem eine CPU wieder eingeschaltet wurde, tasket und Kernel sich weigert, Aufgaben auf dem Kern zu verschieben und / oder zu planen. ZB machen:

echo 0 | sudo tee /sys/devices/system/cpu/cpu7/online echo 1 | sudo tee /sys/devices/system/cpu/cpu7/online taskset -c 7 bash 

Schlägt fehl ... Ich weiß nicht, warum Taskset keine Threads zu den hotpluged-Kernen migrieren kann. Ich habe vor, dies zu verwenden, um die kernlose NO_HZ-Operation des Kerns zu verbessern, indem die lokalen Timer-Interrupts (LOC) von den Kernen 2-7 weggezwungen werden. Die Kernel-NO_HZ-Dokumentation legt diese Möglichkeit nahe.

Ich führe Mainline 4.4.6 PREEMPT Kernel unter Linux Mint 17.3 aus. Der Kernel ist selbstkompiliert, obwohl für die Stock-Mint-Kernel einige Funktionen / Treiber fehlen, die ich benötige.

1
Dasselbe passiert bei mir. Einmal offline, werden die CPU nicht online geschaltet. Kernel 4.1.1. Hast du das gelöst? davide vor 7 Jahren 0
Nein, habe ich nicht. Es ist immer noch ein Problem. Ich würde das wirklich brauchen, um zu funktionieren, also muss ich keine CPU-Affinität mit CPU-Einheiten erzwingen. Ich habe einen Upstart-Service geschrieben, der periodisch ausgewählte Aufgaben mit cpusets an den Core 0 abgibt. Aber das hält die LOC-Interrupts auf CPU 1-7 immer noch nicht auf. Zumindest der NO_HZ-Modus wird jetzt etwas genutzt. JATothrim vor 7 Jahren 0
Möglicherweise interessiert: https://bugzilla.kernel.org/show_bug.cgi?id=118221 davide vor 7 Jahren 0
Ich habe dafür eine funktionale Lösung gefunden, die es erlaubt, CPU-Hotplug ohne LXC-Unterbrechung zu ermöglichen. Sehen Sie meinen doppelten Thread hier: http://superuser.com/questions/1076920/cpu-cores-remain-offline-after-hotplug/1077898#1077898 davide vor 7 Jahren 0

0 Antworten auf die Frage