この前、若手に聞かれたので、ここにも書いておく。
好みでは有るが、可能な限り数字のみで標準出力に出せるようにしておくと、スクリプトの中などで並列実行数を動的に定義しやすい。
ちなみに下記の前提は、CentOS 6.6 & 56コア(!)のサーバで確認している。
nproc
# nproc 56
一番簡単なやつ。
getconf
# getconf _NPROCESSORS_ONLN 56
getconfでも拾える。
/proc/cpuinfo
# cat /proc/cpuinfo | grep -c "processor" 56
皆さん、ご存知の通り、 /proc/cpuinfo は多くのCPU情報を取得することが出来る。
余談だけど、 /proc/cpuinfo に含まれる"physical id"はどの物理ソケットか、とか、"core id"を見ると物理コア(HT関連などで論理コアの紐付きを確認したいとき)などが確認できる。
lscpu
# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 56 On-line CPU(s) list: 0-55 Thread(s) per core: 2 Core(s) per socket: 14 Socket(s): 2 NUMA node(s): 2 Vendor ID: GenuineIntel CPU family: 6 Model: 63 Stepping: 2 CPU MHz: 2300.044 BogoMIPS: 4599.34 Virtualization: VT-x L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 35840K NUMA node0 CPU(s): 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54 NUMA node1 CPU(s): 1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55
lscpuコマンドは /proc/cpuinfo 同様、細かくCPU情報が確認できる。
とまぁ、こんなところかな。
それでは!=͟͟͞͞(๑•̀=͟͟͞͞(๑•̀д•́=͟͟͞͞(๑•̀д•́๑)=͟͟͞͞(๑•̀д•́
あわせて読みたい
Linuxカーネル Hacks ―パフォーマンス改善、開発効率向上、省電力化のためのテクニック
- 作者: 池田宗広,大岩尚宏,島本裕志,竹部晶雄,平松雅巳,高橋浩和
- 出版社/メーカー: オライリージャパン
- 発売日: 2011/07/26
- メディア: 単行本(ソフトカバー)
- 購入: 4人 クリック: 50回
- この商品を含むブログを見る