Linux系统压力测试软件stress使用

发表时间:2018-10-17 15:06 | 分类:Linux | 浏览:1,730 次

linux下测试cpu、内存、io负载的时候可以用stress,比如想cpu一直100%的运行等。
安装
以centos 6为例

  1. yum install stress

如果没有包运行如下命令

  1. yum install epel-release

或者

  1. wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
  2. rpm -Uvh epel-release*rpm

参数

  1. -? 显示帮助信息
  2. -v 显示版本号
  3. -q 不显示运行信息
  4. -n,--dry-run 显示已经完成的指令执行情况
  5. -t --timeout N 指定运行N秒后停止
  6.    --backoff N 等待N微妙后开始运行
  7. -c --cpu 产生n个进程 每个进程都反复不停的计算随机数的平方根
  8. -i --io  产生n个进程 每个进程反复调用sync(),sync()用于将内存上的内容写到硬盘上
  9. -m --vm n 产生n个进程,每个进程不断调用内存分配malloc和内存释放free函数
  10.    --vm-bytes B 指定malloc时内存的字节数 (默认256MB)
  11.    --vm-hang N 指示每个消耗内存的进程在分配到内存后转入休眠状态,与正常的无限分配和释放内存的处理相反,这有利于模拟只有少量内存的机器
  12. -d --hadd n 产生n个执行write和unlink函数的进程
  13.    --hadd-bytes B 指定写的字节数,默认是1GB
  14.    --hadd-noclean 不要将写入随机ASCII数据的文件Unlink
  15. 时间单位可以为秒s,分m,小时h,天d,年y,文件大小单位可以为K,M,G

举例
产生13个cpu进程4个io进程1分钟后停止运行
$ stress -c 13 -i 4 --verbose --timeout 1m

产生3个cpu进程、3个io进程、2个10M的malloc()/free()进程,并且vm进程中malloc的字节不释放
$ stress --cpu 3 --io 3 --vm 2 --vm-bytes 10000000 --vm-keep --verbose

测试硬盘,通过mkstemp()生成800K大小的文件写入硬盘,对CPU、内存的使用要求很低
$ stress -d 1 --hdd-noclean --hdd-bytes 800k

产生13个进程,每个进程都反复不停的计算由rand ()产生随机数的平方根
$ stress -c 13

产生1024个进程,仅显示出错信息
$ stress --quiet --cpu 1k

产生4个进程,每个进程反复调用sync(),sync()用于将内存上的内容写到硬盘上
$ stress -i 4

向磁盘中写入固定大小的文件,这个文件通过调用mkstemp()产生并保存在当前目录下,默认是文件产生后就被执行unlink(清除)操作,但是可以使用--hdd-bytes选项将产生的文件全部保存在当前目录下,这会将你的磁盘空间逐步耗尽

# 生成小文件
$ stress -d 1 --hdd-noclean --hdd-bytes 13

# 生成大文件
$ stress -d 1 --hdd-noclean --hdd-bytes 3G

本文标签:

本文链接:https://www.sijitao.net/2863.html

欢迎您在本博客中留下评论,如需转载原创文章请注明出处,谢谢!

一键脚本 博客历程 留言联系 文章归档 网站地图 谷歌地图
Copyright © 2010-2024 章郎虫博客 All Rights Reserved.