Comment détecter si isolcpus est activé et sur quels processeurs, par exemple lorsque vous vous connectez pour la première fois sur un serveur. Conditions:
n'engendre aucun processus pour voir où il sera migré.
Le cas d'utilisation est que isolcpus=1-7
sur un i7 à 6 cœurs, semble ne pas activer isolcpus au démarrage, et je voudrais savoir si c'est possible à partir de /proc/
, /sys
ou tout interne du noyau qui peut être lu dans l'espace utilisateur, pour fournir un statut clair d'activation d'isolcpus et quels processeurs sont concernés. Ou même lire le paramètre actif de l'ordonnanceur qui est le premier concerné par isolcpus.
Considérez que le temps de disponibilité est si grand, qu'il dmesg
n'y a plus d'affichage du journal de démarrage pour détecter toute erreur au démarrage. La réponse de base comme " regardez la ligne cmd du noyau " ne sera pas acceptée :)
pidstat
et isolcpus
. Pouvez-vous élaborer un peu plus?
isolcpus
c'est, mais pidstat
je peux vous dire sur quel processeur un processus s'exécute si vous passez le -C process_name
drapeau. Par exemple, pidstat -C top
produit ce qui suit. 10:56:52 AM PID %usr %system %guest %CPU CPU Command 10:56:52 AM 3457 0.00 0.00 0.00 0.00 6 top
isolcpus
est un paramètre du noyau qui oblige le planificateur à ne migrer aucun processus seul s'il est isolé. Par exemple, sur un serveur à 8 processeurs, isolcpus=1-7
dans la ligne de commande du noyau, tous les processus générés par init et tout type de commande en shell seront exécutés uniquement sur CPU0. Pour exécuter une tâche sur un processeur isolé, vous devez le lancer avec taskset
par exemple. Donc, en ce qui concerne ce que je demande, il semble que votre réponse soit hors sujet. Merci quand même d'avoir essayé de me répondre
pidstat -C isolcpus
. pidstat fait partie dusysstat
paquet.