Existe um comando UNIX simples para descobrir com quantos núcleos tenho que trabalhar?

14

Eu tenho uma VM do Ubuntu no meu Mac. Existe um comando que eu possa executar no Ubuntu que me diga com quantos núcleos eu tenho que trabalhar?

Eu poderia fazer "sobre este mac" no host, mas não tenho certeza de quão bem o processador multi-core seria traduzido para a VM.

Kirt
fonte
Você configurou sua VM para ter mais que CPU, certo? (Apenas certificando-se)
Daniel Beck

Respostas:

26

Isso deve funcionar:

grep -c processor /proc/cpuinfo

ou

lshw -class processor -short
Pausado até novo aviso.
fonte
Eu tentei o grep -c processor /proc/cpuinfoe a saída foi 4. Estou confuso porque minha caixa tem um i3 e achei que eram núcleos duplos.
Piperchester
2
@Islay: É porque é hyperthreaded.
Pausado até novo aviso.
5

No OS X, você pode usar sysctl ou system_profiler:

$ sysctl hw.ncpu hw.physicalcpu hw.logicalcpu
hw.ncpu: 8
hw.physicalcpu: 4
hw.logicalcpu: 8
$ sysctl -n hw.ncpu # -n disables printing the names of variables
8
$ system_profiler SPHardwareDataType|grep Cores
      Total Number of Cores: 4

Meu processador suporta hiperencadeamento, portanto, existem 8 núcleos lógicos e 4 núcleos físicos.

Lri
fonte
1

Este comando fará o trabalho: dmesg | grep cpu

Randolf Richardson
fonte
Não. Isso apenas mostra todas as mensagens relacionadas à CPU. Verifique as respostas acima ou use lscpu
Ganesh Krishnan
0

O lscpu listaria as CPUs e seus núcleos.

Ganesh Krishnan
fonte