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 "\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