プロセスのためにCPUをバインドする


tasksetはCPU調整ツールであり、システムタスクを指定されたCPUに割り当てることができます.
本論文はnodejsを例にしている.
第一歩、nodejsプロセスを調べます.
pgrep node
19277
19283
第二ステップは、CPUをロックする.
taskset -pc 0 19277  (  0  CPU0,    )
taskset -pc 1 19283
第三ステップ、解決!
小さいスクリプトを添付して、nodejsのプロセスを自動的に結びつけることができます.四つのnodeがあると仮定して、CPUは四核です.
#!/usr/bin/env bash
set -e
node_porcess=`pgrep node|wc -l`
if [$node_process -eq 0 ];then
  echo “nodejs process not found”
  exit 1
else
  node1=`pgrep node |sort |tr -s "
" " "|awk '{print $1}'` node2=`pgrep node |sort |tr -s "
" " "|awk '{print $2}'` node3=`pgrep node |sort |tr -s "
" " "|awk '{print $3}'` node4=`pgrep node |sort |tr -s "
" " "|awk '{print $4}'` taskset -pc 0 $node1 taskset -pc 1 $node2 taskset -pc 2 $node3 taskset -pc 3 $node4 fi