【发布时间】:2016-08-13 19:31:18
【问题描述】:
我是这个论坛的新手,也是 bash 的新手,所以请多多包涵:)。
我想编写一个 bash 脚本来进行 CPU 压力测试,同时观察时钟速度。因此,我做了以下工作:
1.) 对于 CPU 压力测试,我创建了一个名为“bernoulli”的脚本,代码如下:
#!/bin/bash
# argument 1: n
function bernoulli()
{
if (( $1 < 3 ))
then
echo 1
else
echo $(( $(bernoulli $(( $1 - 1 ))) + $(bernoulli $(( $1 - 2 ))) ))
fi
}
bernoulli $1
2.) 我发现通过使用“超时”命令,我可以在指定时间后终止任务。例如,
timeout 30s ./bernoulli 35
启动计算第 35 个伯努利数的任务,并在 30 秒后终止该任务。
3.) 我也通过打字发现了这一点
timeout 30s watch grep \"cpu MHz\" /proc/cpuinfo
我可以在 30 秒内观察我的内核的时钟速度(每 2 秒更新一次)(此时“超时 30 秒”会终止此任务)。
我想要什么:我想做上面的压力测试,同时观察时钟速度。换句话说,我会以某种方式运行这两个命令
timeout 30s ./bernoulli 35
timeout 30s watch grep \"cpu MHz\" /proc/cpuinfo
“同时”。我希望我能说清楚我想要达到的目标。任何人都可以帮助解决我的问题吗?非常感谢您的每一条评论!
【问题讨论】:
标签: linux bash parallel-processing