国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > Linux Shell > 正文

Shell腳本實現(xiàn)把進程負載均衡到多核CPU中

2020-07-27 19:15:45
字體:
供稿:網(wǎng)友

有時候,由于架構(gòu)設計或其他業(yè)務本身特點原因,導致有些應用使用CPU很不均衡,所以業(yè)務處理集中在一個CPU上,而其它CPU閑得在睡覺。這里有個簡單的優(yōu)化方案實現(xiàn)將各個線程綁定到到多個CPU,從而實現(xiàn)性能的提高。

雖然CPU是一個不錯的思路,但是不是殺手锏,其性能能提高多少依賴于各個線程的性能分布是否均勻;所以最好的辦法是優(yōu)化你的程序架構(gòu)。

在這里分享一個Shell腳本(腳本名為bindcpu2p.sh),通過該腳本可將該進程均勻負載到各個CPU上。

復制代碼 代碼如下:
#!/bin/sh
pids=`/sbin/pidof $1`
cpunum=`cat /proc/cpuinfo | grep processor | wc -l`
 
cpuidx=0
for pid in $pids
do
    /usr/bin/taskset -cp ${cpuidx} ${pid}
    cpuidx=$(($cpuidx+1))
    cpuidx=$(($cpuidx%$cpunum))
    echo $cpuidx
done

使用方法 $> ./bindcpu2p.sh progressname

注:請兄弟們檢視下代碼,能幫忙調(diào)試下就最好不過了。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 北流市| 灵璧县| 庆阳市| 赣榆县| 普陀区| 宁陵县| 顺平县| 顺昌县| 荃湾区| 茶陵县| 进贤县| 金塔县| 清苑县| 马尔康县| 玉田县| 灵璧县| 肇东市| 集安市| 嘉峪关市| 大城县| 湟源县| 北宁市| 四子王旗| 兴隆县| 广东省| 临清市| 昔阳县| 醴陵市| 中宁县| 宁武县| 江源县| 玉树县| 墨脱县| 张家川| 锡林郭勒盟| 两当县| 睢宁县| 南乐县| 广南县| 卓尼县| 安龙县|