dme*_*ter 35

IO和文件系统基准测试是一个复杂的主题.没有一种基准测试工具适用于所有情况.以下是有关不同基准测试工具的小概述:

块存储:

  • IOMeter - 高度可定制,允许协调多个客户端.需要Windows PC才能进行协调应用.由英特尔开发.在Linux上,由于提交方法不是最佳的,因此需要使用较旧的最大速率(至少2006.07.27及更早版本).

文件系统(合成):

  • FFSB - 灵活的文件系统基准.Linux的非常简洁的基准测试.良好的工作量定制.NFS基准测试(net-ffsb)有点不健全.
  • Filebench - 非常强大,但最初是为Solaris开发的.Linux支持不好.
  • sysbench - 主要是一个DB基准测试工具,也是基本的文件系统基准测试工具.
  • bonnie - 似乎已经过时了.
  • bonnie ++ - 邦妮的 C++端口.容易,但似乎不是很可定制.

文件系统(工作量):

  • 邮戳 - 模拟邮件服务器的IO行为.太小,无法强调良好的IO系统.

Stony Brook大学和IBM Watson Labs在"存储事务"中发布了一篇关于文件系统基准测试的高度推荐的期刊论文,其中提出了不同的基准以及它们的优点和缺点:对文件系统和存储基准测试的九年研究.文章明确指出,大多数基准测试的结果至少值得怀疑.


注意:编程问题是否相关?也许不是,但也许是.我花了很多时间对我开发的系统的IO性能进行基准测试.至少对我而言,关于如何对这些事情进行基准测试的问题与编程高度相关.请:不要从您的角度关闭所有与开发/编程相关的问题.其他开发人员的观点可能不同.


dee*_*pan 18

工具:fio

链接:http: //freshmeat.net/projects/fio/

测试物理磁盘IO:

    ./fio examples/disk-zone-profile 
Run Code Online (Sandbox Code Playgroud)

set参数:sequential r/w:rw = read或rw = write random r/w:rw = randread或rw = randwrite

  • 如今,https://github.com/axboe/fio 可能是一个比 [现已不复存在的 freshmeat](http://freshmeat.sourceforge.net/about) 更好的链接... (3认同)

ark*_*oak 12

如果你需要一个快速的方法,没有安装任何东西的麻烦.这是我用于写入速度测试的方法:

dd if=/dev/zero of=test bs=64k count=16k conv=fdatasync
Run Code Online (Sandbox Code Playgroud)

输出是这样的

root@rackserver:/# dd if=/dev/zero of=test bs=64k count=16k conv=fdatasync
16384+0 records in
16384+0 records out
1073741824 bytes (1.1 GB) copied, 4.86922 s, 221 MB/s
Run Code Online (Sandbox Code Playgroud)

另外: 在此之后删除测试文件以恢复使用的额外空间

一些解释:

bs = block size
count = the no of blocks to be written
Run Code Online (Sandbox Code Playgroud)

调整这些参数以根据服务器规格和要写入的时间来更改写入文件的大小.

可以使用/ dev/null作为输出来检查gtsouk已经建议的读取速度.

  • 完成后,别忘了对sudo rm test! (2认同)

gts*_*ouk 7

dd if=/dev/sda of=/dev/null
Run Code Online (Sandbox Code Playgroud)

让它运行几分钟,然后用ctrl + C停止它.它将打印驱动器/控制器的读取传输速度.这是您可以从驱动器中获取的最大读取速度.


bas*_*iat 5

系统工作台

http://www.howtoforge.com/how-to-benchmark-your-system-cpu-file-io-mysql-with-sysbench

例子

sysbench --test=fileio --file-total-size=150G prepare

sysbench --test=fileio --file-total-size=150G --file-test-mode=rndrw --init-rng=on --max-time=300 --max-requests=0 run
Run Code Online (Sandbox Code Playgroud)

它还可以测试cpu、内存、线程和数据库服务器性能,

这很棒。

或者用java编写的测试软件:http : //www.dacapobench.org/