GNU/Linux >> Tutoriels Linux >  >> Linux

4 façons de trouver un cœur de processeur qui exécute un processus particulier sous Linux

Question : J'aimerais savoir s'il existe une commande sous Linux (peut-être dans CentOS, RedHat ou Fedora) qui me permet de savoir quel cœur de processeur exécute actuellement un processus particulier ?

Réponse :

Oui, il existe au moins quatre façons d'identifier le cœur du processeur qui exécute actuellement un numéro d'identification de processus donné. Pour démontrer, permettez-moi de considérer crond processus avec l'ID de processus 24868.

Commande 1 :Utilisation de ps commande

Vous pouvez utiliser ps commande pour savoir quel processus est actuellement affecté à quel cœur de processeur. Cherchez le PSR champ en ps sortie de la commande.

$ ps -o pid,psr,comm -p 24868
 PID PSR COMMAND
24868 2 crond

La sortie de la commande ci-dessus indique que le processus avec le PID 24868 (crond) est affecté au cœur du processeur 2.

Remarque : Le noyau peut programmer le processus dans n'importe quel cœur de processeur et il peut continuer à le changer d'un cœur à l'autre.

Commande 2 :Utilisation de top commande

Vous pouvez également utiliser haut commande. Voici les étapes.

$ top -p 24868

Dans l'écran de sortie "haut", appuyez sur "f ' pour ajouter "Dernier processeur utilisé (SMP) ” et appuyez sur 'j ' (faites attention à l'astérisque dans la ligne Dernier processeur utilisé (SMP) ). Une fois cela fait, vous verrez l'ID du cœur du processeur qui exécute chaque processus dans la colonne "P".

Commande 3 :Utilisation de htop

Installer htop :

$yum install htop
 Installed:
 htop.x86_64 0:1.0.1-2.el6
 Complete!

Lancer htop  commande et appuyez sur F2 pour entrer dans Configuration . Sous la colonne Configuration, sélectionnez "Colonnes" et sélectionnez "PROCESSEUR" sous "Colonnes disponibles". Une fois terminé, appuyez sur F5 pour ajouter la colonne et F10 pour enregistrer.

$ htop

Commande 4 :Utiliser l'ensemble de tâches commande

Vous pouvez utiliser ensemble de tâches commande pour récupérer l'affinité CPU d'un processus en cours d'exécution.

$ taskset -c -p 24868
pid 24868's current affinity list: 0-7

La sortie de la commande ci-dessus indique que le planificateur lie le processus à un ensemble de processeurs (0-7) dans le système.

Répertorier les cœurs de processeur et leur ID :

Maintenant, la commande ci-dessous vous permettra de trouver la liste des cœurs de processeur de votre système et vous aidera à mapper avec l'ID de processeur renvoyé par les commandes top, htop, taskset et ps.

$ cat /proc/cpuinfo

C'est tout !


Linux
  1. Trouver le temps d'exécution d'une commande ou d'un processus sous Linux

  2. Comment savoir ce que fait une commande Linux

  3. Linux - Comment trouver l'espace de noms d'un processus particulier ?

  4. Linux - Comment limiter un processus à un seul cœur de processeur sous Linux ??

  5. Le processus exécuté en arrière-plan a été tué sous Linux

3 façons de savoir quel processus écoute sur un port particulier

Comment trouver la version du noyau Linux en cours d'exécution sur votre PC

5 façons rapides de tuer un processus sous Linux

Comment savoir depuis combien de temps un processus s'exécute sous Linux

Comment tuer le processus Linux en cours d'exécution sur un port particulier

Linux :Découvrez sur quel numéro de port un processus écoute