UNIX 中的以下命令:
time sh -c julia src/script_etudedtsi.jl 80 20 100 366 5 10 0 1 0 0 1 1
返回我的 Julia 脚本的已用时间。
我试过:
pidstat -u -p $(pgrep -f julia src/script_etudedtsi.jl 80 20 100 366 5 10 0 1 0 0 1 1) 1
pgrep: only one pattern can be provided
如何获取经过时间内执行同一条命令的平均 CPU 和内存使用情况?
该
time
命令可以提供生成基本统计数据的方法。运行后,
time
将显示“用户”和“系统”时间,代表程序使用的 CPU 时间。重复此操作多次。通过平均计算“平均”CPU 使用率。将值相加,然后除以 CPU 核心数。对于内存使用情况,
time
输出“最大驻留集大小”,以千字节为单位给出“峰值使用情况”。取平均值。如果需要字节,请将总数乘以 1024。您可以使用
ps
bash 脚本进行轮询:run_command.sh
使用以下内容创建:使可执行文件:
chmod +x run_command.sh
创建
calc_mean_usage.sh
方式:用法:
./calc_mean_usage.sh bash -c "julia src/script_etudedtsi.jl 80 20 100 366 5 10 0 1 0 0 1 1"
这将在后台运行your_command并在your_command的整个运行时间内每秒轮询一次,并将每秒输出 CPU 和内存使用情况,然后计算平均值。
这样,您可以设置任何轮询间隔,而不必担心它会停止。