ceph存储 ceph集群性能测试iozone

Iozone使用小结

iozone工具常用参数

常用参数解释:

-a  auto mode产生文件大小16K-512M,记录大小4K-16M的输出结果;

-e  计算时间时算上fflush,fsync的时间;

-f  指定临时测试文件;

-s  指定测试文件大小;

-r  指定测试记录大小;

-g –n 指定auto模式下,最大/小测试文件大小;

-q –y 指定auto模式下,最大/小测试记录大小;

-i  指定特定的测试操作:

     (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=randommix, 9=pwrite/Re-pwrite, 10=pread/Re-pread, 11=pwritev/Re-pwritev, 12=preadv/Repreadv)

-I  指定direct io操作;

-p  清除cpu cache影响;

-O  输出IOPS值;

-R  生成excel报告文件;

-W  读写之前锁定文件;

 

对于-i选项具体含义

  • write:指测试创建并写入一个新文件,因为创建一个新文件不仅包括文件的数据,还要包括在文件系统上追踪到文件所在的额外开销信息,这类信息被成为metadata,通常包括目录信息,空间分配,以及其他的一些内容,因此这一项的性能会比rewrite的性能弱
  • rewrite:测试写入一个已存在的文件的性能,由于不需要动那个metadata,所以,这项的性能比write会高
  • read:测试读取一个已存在文件的速度
  • reread:测试读取一个最近读取过的文件,由于操作系统会缓存,所以数值会比read
  • Random read:测试随机从一个文件中的不同位置的访问的性能,这项会被系统的catch,磁盘数量,访问延迟等因素影响
  • Random write:同上,读换成写而已
  • Random Mix:测试随机的从一个文件的不同位置进行读写操作,影响因素同上,这个测试只能在throughput模式下跑。每个线程/进程只会进行读取或者写入,而非同时读写。读写分布于进程间的轮转调度之中,所以这个操作需要多个线程/进程
  • Backwards Read:测试逆序读取文件,这种方式常被程序使用,MSC     Nastran是一个这种方式的范例,通常它的文件也是gbtb级别的,虽然很多现有的操作系统优化了顺序读取文件的性能,但是很少有系统优化逆序读取文件的性能
  • Record Rewrite:测试对文件的一个特定的热点进行写入和rewrite操作,热点是一个比较有趣的现象,当热点小到和cpu的数据缓存差不多的时候会异常的快。但是当大于cpu的数据缓存同时小于TLB的时候速度会在另一个数量级,这个现象在热点在操作系统缓存左右的时候也会有同样的现象出现。
  • Strided Read:测试按照某种步进的方式读取文件的性能,比如读4k然后跳过200k再读4k再一直重复这种。这样的行为在文件保存了某些数据结构的时候是常见的。这个表现通常没有被操作系统优化,而且也常常是程序的性能瓶颈所在。
  • fwrite:测试使用库函数fwrite()的写入性能,这个库函数是操作系统中常用的,而且使用在用户地址空间内的buffer
  • frewrit:类似上一个,区别同writerewrite
  • fread
  • freread:类似fwrite,区别同readreread

示例解释

./iozone -i 0 -i 1 -Rab~/test-iozone.xls -g 4g -n 1M -C 

-R表示创建excel报告,-a表示自动模式 -b表示指定excel报告文件的名字 

-i指定测试的内容如下:(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-preadv) 

-g指定测试用的最大文件的大小 

-n指定测试用的最小文件的大小 

-C指定显示每个节点的吞吐量 

 

常用测试用例

针对文件系统的测试可以按一下几项执行操作:

 

1.多线程下的同步I/O读写测试

分别针对128K,16M,256M,2G文件大小和8进程,64进程,128进程数进行测试

主要测试文件写和重复写、读和重复读、随即读写、后向读、文件内随即点写、大间隔文件点读、文件内的随即点读写等测试项,记录大小1M cpu cache2048kbyte。

1.1 128k 文件性能测试:

1.1.1 8进程文件性能测试

测试命令为:

Iozone –s 128k –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 8 –r 1m –S 2048 –G –o –B > test-128k-8-g.txt

 

1.1.2 64进程文件性能测试

测试命令为:

Iozone –s 128k –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 64 –r 1m –S 2048 –G –o –B > test-128k-64-g.txt

 

1.1.3 128进程文件性能测试

测试命令为:

Iozone –s 128k –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 128 –r 1m –S 2048 –G –o –B > test-128k-128-g.txt

 

1.216M文件性能测试

1.2.18进程文件性能测试:

测试命令为:

Iozone –s 16M –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 8 –r 1m –S 2048 –G –o –B > test-16m-8-g.txt

1.2.264进程文件性能测试:

测试命令为:

Iozone –s 16M –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 64 –r 1m –S 2048  –G –o –B >test-16m-64-g.txt

1.2.3128进程文件性能测试:

测试命令为:

Iozone –s 16M –i0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 128 –r 1m –S 2048  –G –o –B >test-16m-128-g.txt

1.3256M文件性能测试

1.3.18进程文件性能测试

测试命令为:

Iozone –s 256M –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 8 –r 1m –S 2048  –G –o –B >test-256m-8-g.txt

 

1.3.264进程文件性能测试:

测试命令为:

Iozone –s 256M –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 64 –r 1m –S 2048  –G –o –B >test-256m-64-g.txt

 

1.3.3128进程文件性能测试:

测试命令为:

Iozone –s 256M –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 128 –r 1m –S 2048  –G –o –B >test-256m-128-g.txt

 

1.42G文件性能测试

1.4.18进程文件性能测试:

测试命令为:

Iozone –s 2G –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 8 –r 1m –S 2048  –G –o –B > test-2G-8-g.txt

 

1.4.2 64进程文件性能测试:

测试命令为:

Iozone –s 2G –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 64  –r 1m –S 2048  –G –o –B >test-2G-64-g.txt

 

1.4.3 128进程文件性能测试:

测试命令为:

Iozone –s 2G –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 128 –r 1m –S 2048  –G –o –B >test-2G-128-g.txt

 

2.多线程下的异步I/O读写测试

分别针对128K,16M,256M,2G文件大小和8进程,64进程,128进程数进行测试

主要测试文件写和重复写、读和重复读、随即读写、后向读、文件内随即点写、大间隔文件点读、文件内的随即点读写等测试项。

 

2.1128k 文件性能测试:

2.1.1 8进程文件性能测试:

测试命令为:

Iozone –s 128k –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 8 –r 1m –S 2048  –D –o –B >test-128k-8-d.txt

 

2.1.264进程文件性能测试:

测试命令为:

Iozone –s 128k –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 64 –r 1m –S 2048  –D –o –B >test-128k-64-d.txt

 

2.1.3128进程文件性能测试:

测试命令为:

Iozone–s 128k –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 128 –r 1m –S 2048  –D–o –B > test-128k-128-d.txt

 

2.216M文件性能测试

2.2.18进程文件性能测试:

测试命令为:

Iozone –s 16M –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 8 –r 1m –S 2048  –D –o –B >test-16m-8-d.txt

 

2.2.264进程文件性能测试:

测试命令为:

Iozone –s 16M –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 64 –r 1m –S 2048  –D –o –B >test-16m-64-d.txt

 

2.2.3128进程文件性能测试:

测试命令为:

Iozone –s 16M –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 128 –r 1m –S 2048  –D –o –B >test-16m-128-d.txt

 

2.3256M文件性能测试

2.3.18进程文件性能测试:

测试命令为:

Iozone –s 256M –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 8 –r 1m –S 2048  –D –o –B >test-256m-8-d.txt

 

2.3.264进程文件性能测试:

测试命令为:

Iozone –s 256M –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 64 –r 1m –S 2048  –D –o –B >test-256m-64-d.txt

 

2.3.3128进程文件性能测试:

测试命令为:

Iozone –s 256M –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 128 –r 1m –S 2048  –D –o –B >test-256m-128-d.txt

 

2.42G文件性能测试

2.4.18进程文件性能测试:

测试命令为:

Iozone –s 2G –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 8 –r 1m –S 2048  –D –o –B > test-2G-8-d.txt

 

2.4.264进程文件性能测试:

测试命令为:

Iozone –s 2G –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 64 –r 1m –S 2048  –D –o –B >test-2G-64-d.txt

 

2.4.3128进程文件性能测试:

测试命令为:

Iozone –s 2G –i 0 –i 1 –i 2 –i 3 –i 4 –i 5 –i 8 –t 128 –r 1m –S 2048  –D –o –B >test-2G-128-d.txt

 

测试结果分析

Writer Report

        4       8       16      32      64

32768  5300    8166    12726   1670224441

65536  5456    8285    9630    1610118679

131072 5539    6968   9453    1308614136

262144 5088    7092   9634    1160214776

524288 5427    9356   10502   1305613865

1048576 6061   9625    11528  12632 13466

解释如下:

在Execl文件中的这段表,它说明了这个表单是关于write的测试结果,左侧一列是测试文件大小(Kbytes),最上边一行是记录大小,中间数据是测试的传输速度。举例说明,比如表中的“5300”,意思是测试文件大小为32M,以记录大小为4K来进行传输,它的传输速度为5300Kbytes/s

iozone是一个文件系统的benchmark工具,可以测试不同的操作系统中文件系统的读写性能。 可以测试 Read, write, re-read,re-write, read backwards, readstrided, fread, fwrite, random read, pread, mmap, aio_read, aio_write 等等不同的模式下的硬盘的性能。 测试的时候请注意,设置的测试文件的大小一定要大过你的内存(最佳为内存的两倍大小),不然linux会给你的读写的内容进行缓存。会使数值非常不真实。

1安装编辑

首先从官方下载最新的iozone源码包,然后编译适合自己target的执行文件。

#tar iozone3_347.tar

#cd iozone3_347/src/current

#make linux (直接执行make 有帮助选项)

2常用参数编辑

-a 全面测试,比如块大小它会自动加

-i N 用来选择测试项, 比如Read/Write/Random比较常用的是0 12,可以指定成-i 0-i 1 -i2.这些别的详细内容请查man

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-preadv

-r block size 指定一次写入/读出的块大小

-s file size 指定测试文件的大小

-f filename 指定测试文件的名字,完成后会自动删除(这个文件必须指定你要测试的那个硬盘中)

-F file1 file2... 指定多线程下测试的文件名

批量测试项:

-g -n 指定测试文件大小范围,最大测试文件为4G,可以这样写 -g 4G

-y -q 指定测试块的大小范围

输出:

下面是几个日志记录的参数.好像要输出成图象进行分析,需要指定-a的测试才能输出

-R 产生Excel到标准输出

-b 指定输出到指定文件上. 比如 -Rb ttt.xls

3测试实例编辑

#./iozone -a -n 512m -g 4g -i 0 -i 1 -i 5 -f/mnt/iozone -Rb ./iozone.xls

注:进行全面测试.最小测试文件为512M直到测试到4G.测试read,write,和StridedRea

  测试结果图片

d.测试的地方在mnt下。生成Excel的文件.

./iozone -i 0 -i 1 -f /iozone.tmpfile -Rab /test-iozone.xls-g 8G -n 4G -C

结果分析:

使用这条测试命令测试NAS后,我对下边产生的Execl文件中的一段表进行下解释,很简单的:

 

Writer Report

4

8

16

32

64

32768

5300

8166

12726

16702

24441

65536

5456

8285

9630

16101

18679

131072

5539

6968

9453

13086

14136

262144

5088

7092

9634

11602

14776

524288

5427

9356

10502

13056

13865

1048576

6061

9625

11528

12632

13466

 

在Execl文件中的这段表,它说明了这个表单是关于write的测试结果,左侧一列是测试文件大小(Kbytes),

最上边一行是记录大小,中间数据是测试的传输速度。举例说明,比如表中的“5300”,意思是测试文件大小为

32M,以记录大小为4K来进行传输,它的传输速度为5300 Kbytes/s

4测试的定义编辑

Write: 测试向一个新文件写入的性能。当一个新文件被写入时,不仅仅是那些文件中的数据需要被存储,还包括那些用于定位数据存储在存储介质的具体位置的额外信息。这些额外信息被称作“元数据”。它包括目录信息,所分配的空间和一些与该文件有关但又并非该文件所含数据的其他数据。拜这些额外信息所赐,Write的性能通常会比Re-write的性能低。

Re-write: 测试向一个已存在的文件写入的性能。当一个已存在的文件被写入时,所需工作量较少,因为此时元数据已经存在。Re-write的性能通常比Write的性能高。

Read: 测试读一个已存在的文件的性能。

Re-Read: 测试读一个最 近读过的文件的性能。Re-Read性能会高些,因为操作系统通常会缓存最 近读过的文件数据。这个缓存可以被用于读以提高性能。

Random Read: 测试读一个文件中的随机偏移量的性能。许多因素都可能影响这种情况下的系统性能,例如:操作系统缓存的大小,磁盘数量,寻道延迟和其他。

Random Write: 测试写一个文件中的随机偏移量的性能。同样,有许多因素可能影响这种情况下的系统性能,例如:操作系统缓存的大小,磁盘数量,寻道延迟和其他。

Random Mix: 测试读写一个文件中的随机偏移量的性能。许多因素可能影响这种情况下的系统性能运作,例如:操作系统缓存的大小,磁盘数量,寻道延迟和其他。这个测试只有在吞吐量测试模式下才能进行。每个线程/进程运行读或写测试。这种分布式读/写测试是基于round robin 模式的。最好使用多于一个线程/进程执行此测试。

Backwards Read: 测试使用倒序读一个文件的性能。这种读文件方法可能看起来很可笑,事实上,有些应用确实这么干。MSC Nastran是一个使用倒序读文件的应用程序的一个例子。它所读的文件都十分大(大小从G级别到T级别)。尽管许多操作系统使用一些特殊实现来优化顺序读文件的速度,很少有操作系统注意到并增强倒序读文件的性能。

Record Rewrite: 测试写与覆盖写一个文件中的特定块的性能。这个块可能会发生一些很有趣的事。如果这个块足够小(比CPU数据缓存小),测出来的性能将会非常高。如果比CPU数据缓存大而比TLB小,测出来的是另一个阶段的性能。如果比此二者都大,但比操作系统缓存小,得到的性能又是一个阶段。若大到超过操作系统缓存,又是另一番结果。

Strided Read: 测试跳跃读一个文件的性能。举例如下:在0偏移量处读4Kbytes,然后间隔200Kbytes,读4Kbytes,再间隔200Kbytes,如此反复。此时的模式是读4Kbytes,间隔200Kbytes并重复这个模式。这又是一个典型的应用行为,文件中使用了数据结构并且访问这个数据结构的特定区域的应用程序常常这样做。

许多操作系统并没注意到这种行为或者针对这种类型的访问做一些优化。同样,这种访问行为也可能导致一些有趣的性能异常。一个例子是在一个数据片化的文件系统里,应用程序的跳跃导致某一个特定的磁盘成为性能瓶颈。

Fwrite: 测试调用库函数fwrite()来写文件的性能。这是一个执行缓存与阻塞写操作的库例程。缓存在用户空间之内。如果一个应用程序想要写很小的传输块,fwrite()函数中的缓存与阻塞I/O功能能通过减少实际操作系统调用并在操作系统调用时增加传输块的大小来增强应用程序的性能。

这个测试是写一个新文件,所以元数据的写入也是要的。

Frewrite:测试调用库函数fwrite()来写文件的性能。这也是一个执行缓存与阻塞写操作的库例程。是缓存在用户空间之内。如果一个应用程序想要写很小的传输块,fwrite()函数中的缓存与阻塞I/O功能可以通过减少实际操作系统调用并在操作系统调用时增加传输块的大小来增强应用程序的性能。

这个测试是写入一个已存在的文件,由于无元数据操作,测试的性能会高些。

Fread:测试调用库函数fread()来读文件的性能。这是一个执行缓存与阻塞读操作的库例程。缓存在用户空间之内。如果一个应用程序想要读很小的传输块,fwrite()函数中的缓存与阻塞I/O功能能通过减少实际操作系统调用并在操作系统调用时增加传输块的大小从而增强应用程序的性能。

几个特殊测试:

Mmap:许多操作系统支持mmap()的使用来映射一个文件到用户地址空间。映射之后,对内存的读写将同步到文件中去。这对一些希望将文件当作内存块来使用的应用程序来说很方便。一个例子是内存中的一块将同时作为一个文件保存在于文件系统中。

5命令行参数编辑

接下来解释每个参数的用法。

Usage: iozone [-s filesize_Kb] [-r record_size_Kb ][-f [path]filename]

[-i 它们都是什么意思 ?

-a

用来使用全自动模式。生成包括所有测试操作的报告,使用的块 大小从4k到16M,文件大小从64k到512M。

-A

使用mmap()文件。这将使用mmap()接口来创建并访问所有测试用的临时文件。一

些应用程序倾向于将文件当作内存的一块来看待。这些应用程序对文件执行mmap()

调用,然后就可以以读写内存的方式访问那个块来完成文件I/O。

计算时间时将close()包括进来。Thisis useful only if you suspect that close() is

broken in the operating system currently under test. 对于NFS版本3测试而言这将会

很有用,同时它也能帮助我们识别nfs3_commit 是否正常工作。

-d #

穿过“壁垒”时微秒级的延迟。在吞吐量测试中所有线程或进程在执行测试前都必

须挂起在一道“壁垒”之前。通常来说,所有线程或进程在同一时间被释放。这个

参数允许在释放每个进程或线程之间有一定的延迟(微秒级)。Microsecond delay out of barrier. During the throughputtests all threads or processes are

forced to a barrier before beginning the test.

-D

对mmap文件使用msync(MS_ASYNC)。这告诉操作系统在mmap空间的所有数据

需要被异步地写到磁盘上。

-e

计算时间时将flush(fsync,fflush) 包括进来。

-E

用来进行一些扩展的测试。只在一些平台上可用。使用pread 接口。

-f filename

用来指定测试时使用的临时文件的文件名。当使用unmount参数时这将很有用。测试时在每个测试之间进行unmount的话,测试使用的临时文件在一个可以被卸载的文件夹中是很有必要的。卸载当前工作目录是不可能的,因为Iozone进程运行于此。

-F filename filename filename …

指定吞吐量测试中每个临时文件的文件名。文件名的数量应该和指定的进程或线程

数相同。

-g #

设置自动模式可使用的最大文件大小(Kbytes)。

-G

对mmap文件使用msync(MS_SYNC)。这告诉操作系统在mmap空间的所有数据

需要被同步地写到磁盘上。

-h

显示帮助。

-H #

使用POSIX异步I/O接口中的#号异步操作。Iozone使用POSIX异步I/O接口,并使

用bcopy从异步缓存拷贝回应用程序缓存。一些版本的MSC NASTRAN就是这么进

行I/O操作的。应用程序使用这一技术以便异步I/O可以在一个库中实现,而不需要

更改程序内模。

This technique is used by applications so that theasync

I/O may be performed in a library and requires nochanges to the applications internal model.

-i #

用来指定运行哪个测试。(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-preadv).

总是需要先进行0号测试以便后面的测试有文件可以测试。

也支持使用-i #-i # -i # 以便可以进行多个测试。

-I

对所有文件操作使用VxFSVX_DIRECT 。告诉VXFS文件系统所有对文件的操作将跨

过缓存直接在磁盘上进行。

-j #

设置访问文件的跨度为 (#* 块 大小).Stride read测试将使用这个跨度来读块 。

-J # (毫秒级)

在每个I/O操作之前产生指定毫秒的计算延迟。看 -X 和-Y来获取控制计算延

迟的其他参数。

-k #

Use POSIX async I/O (no bcopy) with # asyncoperations. Iozone will use POSIX async

I/O and will not perform any extra bcopys. The buffersused by Iozone will be handed to

the async I/O system call directly.

-K

在普通测试时生成一些随机访问。

-l #

Set the lower limit on number of processes to run.When running throughput tests this

option allows the user to specify the least number ofprocesses or threads to start. This

option should be used in conjunction with the -uoption.

-L #

Set processor cache line size to value (in bytes).Tells Iozone the processor cache line size.

This is used internally to help speed up the test.

-m

Tells Iozone to use multiple buffers internally. Someapplications read into a single

buffer over and over. Others have an array of buffers.This option allows both types of

applications to be simulated. Iozone’s defaultbehavior is to re-use internal buffers.

This option allows one to override the default and touse multiple internal buffers.

-M

Iozone will call uname() and will put the string inthe output file.

-n #

为自动模式设置最小文件大小(Kbytes)。

-N

报告结果以毫秒每操作的方式显示。

-o

写操作是同步写到磁盘的。 (O_SYNC). Iozone 会以O_SYNC 标志打开文件。这强制所有写操作完全写入磁盘后才返回测试。

-O

报告结果以操作每秒的方式显示。

-p

This purges the processor cache before each fileoperation. Iozone will allocate another

internal buffer that is aligned to the same processorcache boundary and is of a size that

matches the processor cache. It will zero fill thisalternate buffer before beginning each test.

This will purge the processor cache and allow one tosee the memory subsystem without

the acceleration due to the processor cache.

-P #

Bind processes/threads to processors, starting withthis cpu #. Only available on some

platforms. The first sub process or thread will beginon the specified processor. Future processes or threads will be placed on thenext processor. Once the total number of cpus is exceeded then future processesor threads will be placed in a round robin fashion.

-q #

设置自动模式下使用的最大块大小(Kbytes) 。也可以通过-q#k ( Kbytes) 或 -q#m ( Mbytes) 或 -q#g ( Gbytes)。设置最小块大小见 –y 。

-Q

Create offset/latency files. Iozone will createlatency versus offset data files that can be

imported with a graphics package and plotted. This isuseful for finding if certain offsets

have very high latencies. Such as the point where UFSwill allocate its first indirect block.

One can see from the data the impacts of the extentallocations for extent based filesystems

with this option.

-r #

指定测试块 大小,K字节。也可以通过-r#k (Kbytes) 或 -r#m (Mbytes) 或 -r#g (Gbytes).

-R

生成Excel报告.Iozone将生成一个兼容Excel的标准输出报告。这个文件可以使用

Microsoft Excel打开,可以创建一个文件系统性能的图表。注意:3D图表是面向列

的。画图时你需要选择这项因为Excel默认处理面向行的数据。

-s #

指定测试文件大小,K字节。也可以通过-s#k (Kbytes) 或 -s#m (Mbytes) 或 -s#g (Gbytes).

-S #

Set processor cache size to value (in Kbytes). Thistells Iozone the size of the processor cache.

It is used internally for buffer alignment and for thepurge functionality.

-t #

以吞吐量模式运行Iozone。这一选项允许用户指定测试时使用多少个线程或者进程。

-T

吞吐量测试时使用POSIX线程。仅在兼容POSIX线程的平台上可用。

-u #

Set the upper limit on number of processes to run.When running throughput tests this

option allows the user to specify the greatest numberof processes or threads to start.

This option should be used in conjunction with the -loption.

-U mountpoint

在测试之间卸载并重新挂载挂载点。这保证了缓存cache不包含任何测试过的文件。

-v

显示Iozone的版本号。

-V #

Specify a pattern that is to be written to thetemporary file and validated for accuracy in

each of the read tests.

-w

当临时文件使用完毕时不删除它们。把它们留在文件系统中。

-W

读或写时锁文件。

-x

关闭“stone-walling”.Stonewalling 是Iozone内部使用的一种技术。它是在进行吞吐量测试时使用的。程序启动所有线程或进程然后将它们暂停在“壁垒”前。

一旦它们都做好准备工作,它们将被同时释放。当其中任何一个线程或进程完成工作,整个测试就终止了并计算到达这个点时所有I/O的吞吐量。这保证了整个测试进行时所有的进程和线程都是并行的。这个标志位允许取消 stonewalling并看看会发生什么。

-X filename

Use this file for write telemetry information. Thefile contains triplets of information:

Byte offset, size of transfer, compute delay inmilliseconds. This option is useful if one has

taken a system call trace of the application that isof interest. This allows Iozone to replicate the I/O operations that thisspecific application generates and provide benchmark results for this filebehavior. (if column 1 contains # then the line is a comment)

-y #

设置自动模式下使用的最小块大小(Kbytes) 。也可以通过-y#k ( Kbytes) 或 -y#m ( Mbytes) 或 -y#g ( Gbytes)。设置最大块大小见 –y 。

-Y filename

Use this file for read telemetry information. The filecontains triplets of information:

Byte offset, size of transfer, compute delay inmilliseconds. This option is useful if one has

taken a system call trace of the application that isof interest. This allows Iozone to replicate the I/O operations that thisspecific application generates and provide benchmark results for this filebehavior. (if column 1 contains # then the line is a comment)

-z

Used in conjunction with -a to test all possiblerecord sizes. Normally Iozone omits testing

of small record sizes for very large files when usedin full automatic mode. This option forces

Iozone to include the small record sizes in theautomatic tests also.

-Z

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值