码迷,mamicode.com
首页 > 系统相关 > 详细

监控cpu、内存 <shell>

时间:2018-11-19 13:33:30      阅读:264      评论:0      收藏:0      [点我收藏+]

标签:interval   MLOG   log   就是   sort   int   逻辑   服务   大小   

获取cpu、内存结果

pid=$1  #获取进程pid
echo $pid
interval=1  #设置采集间隔
while true
do
    echo $(date +"%y-%m-%d %H:%M:%S") >> proc_memlog.txt
    cat  /proc/$pid/status|grep -e VmRSS >> proc_memlog.txt    #获取内存占用
    cpu=`top -b -n 1 -p $pid|tail -2|head -1|awk ‘{ssd=NF-3} {print $ssd}‘`    #获取cpu占用
    echo "Cpu: " $cpu >> proc_memlog.txt
    echo $blank >> proc_memlog.txt
    sleep $interval
done

结果排序

cat proc_memlog.txt |grep Cpu |awk ‘{print $2}‘ | sort -nbr

此处cpu是单核的cpu大小,因此超过100%的意思就是跑满了单核。

逻辑核和物理核

物理核就是一般说的几核cpu,其为物理核心。一般都是2、4、8核。服务器一般为32核。利用cat /proc/cpuinfo查看物理核。
逻辑核则是因超线程技术,将物理核进行虚拟。当计算机没有开启超线程时,逻辑CPU的个数就是计算机的核数。而当超线程开启后,逻辑CPU的个数是核数的两倍。

任务绑定cpu

taskset -c 0,10 ./bind_core

监控cpu、内存 <shell>

标签:interval   MLOG   log   就是   sort   int   逻辑   服务   大小   

原文地址:https://www.cnblogs.com/lcamry/p/9982515.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!