一:简单介绍
iozone是一个文件系统的benchmark工具,
用于測试不同的操作系统中文件系统的读写性能,
能够測试下面13种模式
0=write/rewrite
1=read/re-read
2=random-read/write
3=Read-backwards
4=Re-write-record
5=stride-read
6=fwrite/re-fwrite
7=fread/Re-fread
8=random mix
9=pwrite/Re-pwrite
10=pread/Re-pread
11=pwritev/Re-pwritev
12=preadv/Re-pread
二:使用
例:
./iozone -az -y 64 -g 4G -i 0 -i 1 -f test.txt -b iozone_result.xls
參数说明:
-a:
用来使用全自己主动模式,生成包含全部測试操作的报告。
使用的块大小从 4k 到 16M, 文件大小从 64k 到 512M。
-z:
联合-a 參数使用,强制測试全部可能的记录值。
默认情况下,当 iozone 以非常大记录值測试时,会忽略掉小的记录值
-y:
设置自己主动模式下使用的最小块大小(Kbytes)
-g:
设置最大測试文件,一般为内存的 2 倍
-i 0 -i 1:
指定測试的方式,如今仅仅測试读写。
如不指定,则測试上面的全部方式
-f filename
指定測试文件的名字, 完毕后会自 动删除。
这个文件必须指定你要測试的那个硬盘中
-b filename
iozone 输出结果到 excel 文件
三:结果
分析:
1: 这个表单是关于 write 的測试结果
2: 左側一列是測试文件大小( Kbytes) 。
例表中“ 512 ” 即写入測试文件的大小为 512 Kbytes
3: 最上边一行是记录大小。
例表中“ 128 ” 即以记录大小为 128 Kbytes 来进行传输
4: 相应中间数据是測试的传输速度。
5: 例表中的“ 左側 524288 上側 512 ”
即是:当測试文件大小为 524288 时,以记录大小为 512K
来进行传输,它的传输速度为 16254Kbytes/s
6:将上述数据导入 excel 中
时,写的速率最大,约为 60M 左右,可是此时受到 buff cache 的影响
2:大约在写 32M 的文件时,写的速度稳定在 14M 左右,此时是真正的
写 emmc, 既 emmc 的写速度大约为 14M/s 左右
附:
Re-write: 測试向一个已存在的文件写入的性能。
Read: 測试读一个已存在的文件的性能。
Re-Read: 測试读一个近期读过的文件的性能。
Random Read: 測试读一个文件里的随机偏移量的性能。
Random Write: 測试写一个文件里的随机偏移量的性能。
Backwards Read: 測试使用倒序读一个文件的性能
Record Rewrite: 測试写与覆盖写一个文件里的特定块的性能
Strided Read: 測试跳跃读一个文件的性能
Fwrite: 測试调用库函数 fwrite() 来写新文件的性能
Frewrite: 測试调用库函数 fwrite() 来写已存在文件的性能
Fread: 測试调用库函数 fread() 来读一个近期读过性能
Random mix: 随机的读写一个文件
參考:
http://baike.baidu.com/view/3502720.htm?fr=aladdin
http://www.iozone.org/