Domanda: Vorrei sapere se esiste un comando in Linux (potrebbe essere in CentOS, RedHat o Fedora) che mi consente di scoprire quale core della CPU sta eseguendo un particolare processo?
Risposta:
Sì, esistono almeno quattro modi che ti consentono di identificare il core della CPU su cui è attualmente in esecuzione un determinato numero di identificazione del processo. Per dimostrare, considero crond processo con ID processo 24868.
Comando 1:utilizzo di ps comando
Puoi usare ps comando per scoprire quale processo è attualmente assegnato a quale core della CPU. Cerca il PSR campo in ps output del comando.
$ ps -o pid,psr,comm -p 24868 PID PSR COMMAND 24868 2 crond
L'output del comando sopra indica che il processo con PID 24868 (crond) è assegnato al core 2 della CPU.
Nota: Il kernel può programmare il processo in qualsiasi core della CPU e potrebbe continuare a cambiarlo da un core all'altro.
Comando 2:utilizzo di top comando
Puoi anche utilizzare top comando. Di seguito sono riportati i passaggi.
$ top -p 24868
Nella schermata di output "in alto", premi "f ' per aggiungere "Ultima CPU utilizzata (SMP) ” e premi ‘j ' (cerca l'asterisco nella riga Ultima CPU utilizzata (SMP)). Una volta terminato, vedrai l'ID core della CPU che esegue ogni processo nella colonna "P".
Comando 3:utilizzo di htop
Installa htop:
$yum install htop Installed: htop.x86_64 0:1.0.1-2.el6 Complete!
Avvia htop comando e premi F2 per accedere a Configurazione . Nella colonna Configurazione, seleziona "Colonne" e seleziona "PROCESSORE" in "Colonne disponibili". Una volta terminato, premi F5 per aggiungere la colonna e F10 per salvare.
$ htop
Comando 4:utilizzo di set di attività comando
Puoi utilizzare set di attività comando per recuperare l'affinità della CPU di un processo in esecuzione.
$ taskset -c -p 24868 pid 24868's current affinity list: 0-7
L'output del comando precedente dice che lo scheduler associa il processo a un insieme di CPU (0-7) nel sistema.
Elenca i core della CPU e il relativo ID:
Ora il comando seguente ti consentirà di trovare l'elenco dei core della CPU nel tuo sistema e ti aiuta a mappare con l'ID del processore restituito dai comandi top, htop, taskset e ps.
$ cat /proc/cpuinfo
Ecco fatto!