taskset 是一個CPU 調(diào)節(jié)工具,能夠?qū)⑾到y(tǒng)任務分配至指定的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 -eq0 ];then
echo“nodejs process not found”
exit1
else
node1=`pgrep node |sort|tr-s "\n"" "|awk'{print $1}'`
node2=`pgrep node |sort|tr-s "\n"" "|awk'{print $2}'`
node3=`pgrep node |sort|tr-s "\n"" "|awk'{print $3}'`
node4=`pgrep node |sort|tr-s "\n"" "|awk'{print $4}'`
taskset -pc 0 $node1
taskset -pc 1 $node2
taskset -pc 2 $node3
taskset -pc 3 $node4
fi