Существует ли простая команда UNIX для определения количества ядер, с которыми мне приходится работать?

14

У меня есть виртуальная машина Ubuntu на моем Mac. Есть ли команда, которую я могу запустить в Ubuntu, которая скажет мне, сколько ядер мне нужно работать?

Я мог бы сделать «об этом mac» на хосте, но я не уверен, насколько хорошо многоядерный процессор будет транслироваться на виртуальную машину.

Kirt
источник
Вы настроили свою виртуальную машину так, чтобы иметь больше, чем процессор, верно? (Просто проверяю)
Даниэль Бек

Ответы:

26

Это должно работать:

grep -c processor /proc/cpuinfo

или

lshw -class processor -short
Приостановлено до дальнейшего уведомления.
источник
Я попробовал, grep -c processor /proc/cpuinfoи результат был 4. Я запутался, потому что в моем боксе есть i3, и я подумал, что это двухъядерные процессоры.
Пиперчестер
2
@Islay: Это потому, что это гиперпоточный.
Приостановлено до дальнейшего уведомления.
5

В OS X вы можете использовать sysctl или 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

Мой процессор поддерживает гиперпоточность, поэтому имеется 8 логических ядер и 4 физических ядра.

LRI
источник
1

Эта команда выполнит эту работу: dmesg | grep процессор

Рэндольф Ричардсон
источник
Nopes. Это просто показывает все сообщения, связанные с процессором. Проверьте выше ответы или используйте lscpu
Ганеш Кришнан
0

lscpu перечислит процессоры и их ядра.

Ганеш Кришнан
источник