LinuxやmacOSで論理プロセッサの個数を確認する方法をまとめます
nproc コマンド(Linux, macOS)
GNUの coreutils がインストールされている場合は nproc コマンドが利用できます.macOSでもcoreutilsをインストールしておけば nprocコマンドが使えます.
$ nproc --all
注意点は"--all"を指定する点です.例えばLinuxだと taskset コマンドでプロセスごとに利用できるCPU数を制限できます.nproc コマンドは,オプションなしだと制限後のCPU数,"--all"コマンドをつけると制限を無視した上限のCPU数を返します.
/proc/cpuinfo (Linuxのみ)
Linuxであれば /proc/cpuinfo をみればCPU数がわかります
$ cat /proc/cpuinfo
CPUの情報が大量に表示されるので,processor の行だけ見ましょう.
$ cat /proc/cpuinfo | grep processor
たとえば16コアあるサーバだと次の出力が得られます.
processor : 0 processor : 1 processor : 2 processor : 3 processor : 4 processor : 5 processor : 6 processor : 7 processor : 8 processor : 9 processor : 10 processor : 11 processor : 12 processor : 13 processor : 14 processor : 15
CPUが#0から#15まであり,合計で16コアあることがわかります
ちなみに上記のコア数とは,論理コア数(=スレッド数)になります.
物理コア数を調べたい場合は cpu cores の行をみます
また物理CPU数を調べたい場合は physical id の行をみます