sysbench提供了针对linux的基准测试能力,它支持测试CPU、内存、文件IO、信号量、线程等的能力,甚至包括mysql的基准测试。
使用以下命令创建测试文件
sysbench --test=fileio --file-total-size=128G prepare使用以下命令负载测试
sysbench --test=fileio --file-total-size=128G --file-test-mode=rndrw --max-time=60 --max-requests=0 run测试完毕,使用以下命令清理测试文件
sysbench --test=fileio --file-total-size=128G cleanup注意:
测试文件大小最好大于内存,确保文件缓存不会过多影响测试;通过声明--file-test-mode选项,你可以告诉sysbench你想进行哪种类型的负载(顺序读写、随机读写、或者组合)。上面例子中指定了随机读写。通过声明--max-time选项,你可以告诉sysbench你的测试时长。上面例子中指定了60秒。下面是一个验证最大素数的例子,通常用它来测试CPU
sysbench --test=cpu --cpu-max-prime=20000 --num-threads=2 run执行以下命令:
sysbench --test=memory --num-threads=4 run更多参数参见:SysBench manual
Ref https://wiki.gentoo.org/wiki/Sysbench#Using_the_fileio_workload