linux下模拟CPU占用100%小程序和对应解决建议
2017-01-23 17:29
232 查看
一、单个核100%
代码kill_cpu.c
运行之前的CPU
运行:
结束:Ctrl + C
在运行程序之前先在本地测试自己的程序,避免程序的逻辑错误或者死循环的错误。
数据库服务器执行某一个SQL或者存储过程需要大量的运算(一般为软件设计不合理)
二、让所有的核都是100%
所有的核都是100%,cat /proc/cpuinfo | grep “physical id” | wc -l 是获取到CPU的核数,逻辑核数。这样每一个cpu上都会调度到一个死循环的进程。
批量kill进程
显示其他用户启动的进程(a)
查看系统中属于自己的进程(x)
启动这个进程的用户和它启动的时间(u)
把大的作业分给多个CPU一起运行,避免单个CPU运行导致CPU消耗过高而引发的系统奔溃问题
三、让某个核100%
当前的进程在cpu2上
通过taskset命令绑定CPU(taskset 指定进程运行在某个特定的CPU上)
把某一个任务直接指定一个CPU专门运行,保证该任务快速运行,不会长期拉低整个系统的运作效率
代码kill_cpu.c
#include <stdlib.h> int main() { while(1); return 0; }
运行之前的CPU
运行:
# gcc -o out kill_cpu.c # ./out
结束:Ctrl + C
在运行程序之前先在本地测试自己的程序,避免程序的逻辑错误或者死循环的错误。
数据库服务器执行某一个SQL或者存储过程需要大量的运算(一般为软件设计不合理)
二、让所有的核都是100%
$ for i in `seq 1 $(cat /proc/cpuinfo | grep "physical id" | wc -l)`; do ./out & done
所有的核都是100%,cat /proc/cpuinfo | grep “physical id” | wc -l 是获取到CPU的核数,逻辑核数。这样每一个cpu上都会调度到一个死循环的进程。
批量kill进程
ps aux
显示其他用户启动的进程(a)
查看系统中属于自己的进程(x)
启动这个进程的用户和它启动的时间(u)
把大的作业分给多个CPU一起运行,避免单个CPU运行导致CPU消耗过高而引发的系统奔溃问题
三、让某个核100%
当前的进程在cpu2上
通过taskset命令绑定CPU(taskset 指定进程运行在某个特定的CPU上)
taskset -cp CPUID 进程ID
把某一个任务直接指定一个CPU专门运行,保证该任务快速运行,不会长期拉低整个系统的运作效率
相关文章推荐
- linux下模拟CPU占用100%小程序
- linux下模拟CPU占用100%小程序
- linux下Bochs模拟占用CPU过高问题解决
- linux中nohup写操作与程序中读操作冲突引起cpu占用100%
- linux 解决 gvfsd-smb-browse CPU 100%占用
- spoolsv.exe占用cpu 100%的解决方法
- [转]WinXP中CPU占用100%原因及解决方法
- svchost.exe占用CPU 100%的解决方法
- svchost.exe占用CPU 100%的解决方法
- QQ程序占用CPU资源的解决办法
- spoolsv.exe占用cpu 100%的解决方法
- winlogon 100%占用cpu的解决办法
- CPU占用达到100%的几种解决方法
- 解决Wine运行中文界面程序慢,占用CPU的问题
- 当在SCOM 2007 SP1环境下遭遇SQLSERVER进程持续占用CPU 100%的解决办法
- [组图教程]:8大方法!解决CPU资源占用100%[ZT]
- CPU占用100%解决办法
- (转)IIS的inetinfo.exe进程占用CPU达100%解决办法
- svchost.exe占用CPU 100%的解决方法
- 解决inetinfo.exe CPU占用 100%