如何在Red Hat Linux机器上设置CPU负载?

我有一个RHEL盒,我需要放在适度和可变的CPU负载(50%-75%)下。

什么是最好的方式去做这件事? 有没有一个程序可以做到这一点,我不知道? 我很高兴写一些C代码来做到这一点,我只是不知道什么系统调用将帮助。

Solutions Collecting From Web of "如何在Red Hat Linux机器上设置CPU负载?"

这正是你所需要的: http : //weather.ou.edu/~apw/projects/stress/

从主页上看:“压力是POSIX系统的一个简单的工作负载生成器,它在系统上设置了一个可配置的CPU,内存,I / O和磁盘压力,它是用C语言编写的,并且是GPL下的免费软件许可“。

找到一个有源代码的简单的素数搜索程序。 修改源代码,向主循环中添加一个纳秒睡眠调用,无论哪个延迟都会给你所需的CPU负载。

在系统上加载一个常用的方法是一次又一次地编译一个大型的软件包。 就像Linux内核一样。

获取源代码的副本,解压tar.bz2,进入顶级源目录,将你的内核配置从/ boot复制到.config或zcat /proc/config.gz> .config,do make oldconfig,然后而真实的; 做清洁&&做bzImage; DONE

如果你有一个SMP系统,那么使-j bzImage很有趣,它会产生并行的任务。

其中一个问题是调整CPU负载。 除了等待磁盘I / O时,这将是最大的CPU负载。

你可以使用Bash脚本来做到这一点。 使用“ps -o pcpu | grep -v CPU”来获取所有进程的CPU使用情况。 将所有这些值一起添加以获得当前使用情况。 然后有一个繁忙的while循环,基本上保持检查这些值,计算当前的CPU使用率,并等待一段时间的计算,以保持处理器在一定的阈值。 需要更多的细节,但希望这会给你一个很好的起点。

看看我发现这个CPU监视器脚本,并试图获得一些其他的想法,你可以如何做到这一点。

这真的取决于你想要测试的东西。 如果你只是测试CPU负载,简单的脚本吃空CPU周期将正常工作。 我个人不得不最近测试RAID阵列的性能,我依靠Bonnie ++和IOZone。 IOZone将在这个盒子上放上一个不错的负载,特别是如果你设置的文件大小高于RAM。

您可能也对这篇文章感兴趣。

使用“nice”命令。

a)最高优先级:$ nice -n -20 my_command

要么

b)最低优先级:$ nice -n 20 my_command

一个简单的脚本来加载和锤击CPU使用awk。 该脚本进行数学计算,因此CPU负载在更高的值上传输到loadserver.sh。

结帐脚本@ http://unixfoo.blogspot.com/2008/11/linux-cpu-hammer-script.html

你可以使用一些负载生成工具来完成这个工作,或者运行脚本来完成所有的CPU周期,然后在进程中使用nice和renice来改变进程得到的周期的百分比。

这里是一个示例bash脚本,将占用所有的空闲CPU周期:

 #!/bin/bash while true ; do true done 

Lookbusy可以启用CPU负载的设定值。 项目网站

 lookbusy -c util[-high_util], --cpu-util util[-high_util] ie 60% load lookbusy -c 60 

不知道你的目标是在这里。 我相信glxgears会使用100%的CPU。

所以找到你知道的任何进程都会使CPU达到100%。

如果你有四个CPU核心(0 1 2 3),你可以使用“taskset”来绑定这个进程来说CPU 0和1,这应该加载你的机箱50%。 加载75%将进程绑定到0 1 2个CPU。

免责声明:没有测试过这个。 请让我们知道你的结果。 即使这样做,我不知道你会实现什么呢?