Ubuntu 18.04 ———查看VIO算法占用内存和CPU运行情况
- 方法一
- 一、安装htop
- 二、htop的界面操作
- 方法二
- 1. 查看VIO算法占用内存和CPU运行情况
- 2. 使用`top`命令查看算法的Command执行命令的代码
- 3. 运行VIO算法占用内存和CPU数据命令
- 4. 求取平均值
- 5. 得到真实值
方法一
一、安装htop
sudo apt install htop
二、htop的界面操作
- PID – 描述进程的ID号
- USER – 描述进程的所有者(谁跑的)
- PRI – 描述Linux内核查看的进程优先级
- NI – 描述由用户或root重置的进程优先级
- VIR – 它描述进程正在使用的虚拟内存 (virtual memory)
- RES – 描述进程正在消耗的物理内存(physical memory)
- SHR – 描述进程正在使用的共享内存(shared memory)
- S – 描述流程的当前状态 (state)
- CPU% –
描述每个进程消耗的CPU百分比
- MEM% –
描述每个进程消耗的内存百分比
- TIME+ –
显示自流程开始执行以来的时间
- Command –
它与每个进程并行显示完整的命令执行 (比如/usr/lib/R)
常用命令:
-u 选项 : 显示指定的用户的进程信息列表。例如,htop -u himanshu 命令会只显示出用户名为 himanshu 的相关进程。
-d 选项 : 设置刷新的延迟时间。例如,htop -d 100 命令会使输出在1秒后才会刷新(参数 -d 的单位是10微秒)。
方法二
1. 查看VIO算法占用内存和CPU运行情况
top -n 20 -d 5 -b |grep -E "Command执行命令的代码" |tr -s " "| cut -d " " -f 10,11 > 01.txt
-n 20 表示次数设置为20次
-d 5 表示时间间隔为5秒
|grep -E "Command执行命令的代码" 表示输出线程Command执行命令的代码的信息;
//可以通过top命令查看Command执行命令的代码
|tr -s " " 则表示利用一个空格来替代字段中出现的多个空格;
cut -d " " -f 10,11 表示将表格中第10和11列的数据提取出来;即为%CPU和%MEM数据
> test.txt 表示把数据写入到名为 test 的文本文件中;
2. 使用top
命令查看算法的Command执行命令的代码
得到Command执行命令的代码:rovio_node
3. 运行VIO算法占用内存和CPU数据命令
top -n 20 -d 3 -b |grep -E "Command执行命令的代码" |tr -s " "| cut -d " " -f 10,11 > 01.txt
4. 求取平均值
可用如下方法:
cat 01.txt|awk '{sum+=$1} END {print "Average = ", sum/NR}'
01.txt----表示要计算数据的文件
$1----表示第一列
5. 得到真实值
由于运行算法的虚拟机为4核top查看的是四个核数直接相加的结果,所以真实的cpu占有率应该是要除以400(四核处理器)。(但是我发现论文中的数据并不是以百分制标准,所以这里也可不用转化为百分制。)
echo "scale=3;(92.87/400)" | bc