Skip to content

Latest commit

 

History

History
528 lines (260 loc) · 33.9 KB

1.15 运行定义(RD)参数详情-Raw IO专属.md

File metadata and controls

528 lines (260 loc) · 33.9 KB

For parameters specific to file system testing, see RD parameters for file system testing, detail.

The Run Definition parameters specify which of the earlier defined workloads need to be executed, which I/O rates need to be generated, and how long to run the workloads. One Run Definition can result in multiple actual runs, depending on the parameters used.

有关文件系统测试特定参数,请参阅文件系统测试的RD参数详细信息

运行定义参数指定了需要执行哪些先前定义的工作负载,需要生成哪些I/O速率,以及工作负载运行多长时间。一个运行定义可以导致多次实际运行,具体取决于使用的参数。

# Example: 
rd=run1,wd=(wd1,wd2),iorate=1000,elapsed=60,interval=5
参数 说明
rd=default Sets defaults for all RDs that are entered later.
rd=name Unique name for this Run Definition (RD).
wd=xx Workload Definitions to use for this run.
sd=xxx Which SDs to use for this run (Optional).
curve=(nn,nn,..) Data points to generate when creating a performance curve.
stopcurve=n.n Stop running curve datapoints when response time > n.n ms.
distribution=(x[,variable] I/O inter arrival time calculations: exponential, uniform, ordeterministic. Default exponential.
elapsed=nn Elapsed time for this run in seconds. Default 30 seconds.
maxdata=nnn Stop the run after nnn bytes have been read or written, e.g. maxdata=200g. Vdbench will stop at the lower of elapsed=and maxdata=.
endcmd=cmd Execute command or script at the end of the last run
(for)compratio=nn Multiple runs for each compression percentage.
(for)hitarea=nn Multiple runs for each hit area size.
(for)hpct=nn Multiple runs for each read hit percentage.
(for)rdpct=nn Multiple runs for each read percentage.
(for)seekpct=nn Multiple runs for each seek percentage.
(for)threads=nn Multiple runs for each read thread count.
(for)whpct=nn Multiple runs for each write hit percentage.
(for)xfersize=nn Multiple runs for each data transfer size.
Most forxxx parameters can just be abbreviated to their regular name, e.g. xfersize=(..,..)
interval=nn Reporting interval in seconds. Default 'min(elapsed/2,60)'
iorate=(nn,nn,nn,…) One or more I/O rates.
iorate=curve Create a performance curve.
iorate=max Run an uncontrolled workload.
iorate=(nn,ss,nn,ss,…) nn,ss: pairs of I/O rates and seconds of duration for this I/Orate. See also 'distribution=variable'.
mount=xxx See HD mount parameter
openflags=xxxx Pass specific flags when opening a lun or file
pause=nn Sleep 'nn' seconds before starting next run.
replay=(filename,…) File name used for Swat I/O replay (file 'flatfile.bin' fromSwat)
startcmd=cmd Execute command or script at the beginning of the first run
warmup=nn Override warmup period.

1. 'rd=name': Run Name

rd=name defines a unique name for this run. Run names are used in output reports to identify which run is reported.

When you specify default as the RD name, the values entered will be used as default for all SD parameters that follow.

rd=name用于为此次运行定义指定一个唯一名称。运行名称在输出报告中用于标识报告的是哪个运行定义。

当您将default指定为RD名称时,输入的值将作为所有随后的SD参数的默认值。

2. 'wd=': Names of Workloads to Run

wd= identifies workloads to run. Specify a single workload as wd=wd1 or multiple workloads either by entering them individually wd=(wd1,wd2,wd3), a range wd=(wd1-wd3) or by using a wildcard character: wd=wd*.

The total skew percentage specified for all requested workloads must equal 100.

Note: When using a WD range, leading zeros are not allowed, e.g. (wd01-wd09)

wd=用于指定要运行的工作负载。可以单独指定一个工作负载,如wd=wd1,也可以通过逐个输入它们wd=(wd1,wd2,wd3),使用范围wd=(wd1-wd3)或使用通配符wd=wd*来指定多个工作负载。

所有请求的工作负载指定的总偏斜百分比必须等于100。

注意:当使用工作负载范围时,不允许有前导零,例如(wd01-wd09)

3. ‘sd=xxx’

Normally you specify the SDs to be used as part of a Workload Definition (WD) parameter. However, when you specify all workload parameters using the available forxx RD options, the WD parameter really is not necessary at all, so you can now specify the SD parameters during the Run Definition.

You can specify both the WD and the SD parameters though. In that case the SD parameters specified here will override the SD parameters used when you defined the WD= workload. If you do not specify the WD parameter, all defaults as currently set for the Workload Definition are used.

通常情况下,您会在工作负载定义(WD)参数中指定要使用的SD参数。然而,当您使用可用的forxx RD选项指定所有工作负载参数时,实际上WD参数并不是必需的,因此您现在可以在运行定义期间指定SD参数。

您可以同时指定WD和SD参数。在这种情况下,在此处指定的SD参数将覆盖您定义WD=工作负载时使用的SD参数。如果您不指定WD参数,则将使用当前为工作负载定义设置的所有默认值。

4. 'iorate=nn': One or More I/O rates

参数 说明
iorate=100 Run a workload of 100 I/Os per second
iorate=(100,200,…) Run a workload of 100 I/Os per second, then 200, etc.
iorate=(100-1000,100) Run workloads with I/O rates from 100 to 1000, incremented by100.
iorate=curve Run a performance curve. See below.
iorate=max Run the maximum uncontrolled I/O rate possible. See below.
iorate=(nn,ss,nn,ss,…) nn,ss: pairs of I/O rates and seconds of duration for this I/O rate.See also 'distribution=variable'.

iorate=curve: Run a performance curve.

  • When no skew is requested for any workload involved, determine the maximum possible I/O rate by running iorate=max. After this max run, the target skew for the requested workloads will be set to the skew that was observed. Workloads of 10%, 50%, 70%, 80%, 90% and 100% of the observed maximum I/O rate and skew will be run. Target I/O rates above 100 will be rounded up to 100; I/O rates below 100 will be rounded up to 10. Curve percentages can be overridden using the 'curve=' parameter.
  • When any skew is requested, do the same, but within the requested skew.
  • stopcurve=n.n will prevent the next curve datapoints from being run once the average response time reaches n.n milliseconds.

iorate=max: Run the maximum I/O rate possible.

  • When no skew is requested, allow each workload to run as fast as possible without controlling skew. This is called an uncontrolled max workload.

    Warning: File system workloads using fwdrate= are always controlled using a default skew per FSD and FWD.

  • When any skew is requested, allow all workloads to run as fast as possible within the requested skew.

During a Vdbench replay run, the I/O rate by default is set to the I/O rate as it is observed in the trace input. This I/O rate is reported on the console and in file logfile.html.

If a different I/O rate is requested, the inter-arrival times of all the I/Os found in the trace will be adjusted to allow for the requested change. Note though that a one hour trace replayed at twice the iops will last only 30 minutes.

iorate=curve: 执行性能曲线测试。

  • 当没有请求任何工作负载的偏斜时,通过运行iorate=max确定最大可能的I/O速率。在这个max运行之后,将根据观察到的情况设置请求工作负载的目标偏斜。将运行观察到的最大I/O速率和偏斜的工作负载的10%、50%、70%、80%、90%和100%。目标I/O速率高于100将四舍五入为100;低于100的I/O速率将四舍五入为10。可以使用'curve='参数覆盖曲线百分比。
  • 当请求任何偏斜时,请执行相同操作,但请求的偏斜内运行。
  • stopcurve=n.n将在平均响应时间达到n.n毫秒时阻止运行下一个曲线数据点。

iorate=max: 执行可能的最大I/O速率测试。

  • 没有请求偏斜时,允许每个工作负载以最快的速度运行,而不控制偏斜。这被称为未控制的最大工作负载。

    警告:使用fwdrate=的文件系统工作负载始终使用每个FSD和FWD的默认偏斜进行控制。

  • 请求任何偏斜时,允许所有工作负载以尽可能快的速度请求的偏斜内运行。

在Vdbench重放运行期间,默认情况下,I/O速率设置为观察到的跟踪输入中的I/O速率。这个I/O速率将在控制台和文件logfile.html中报告。

如果请求不同的I/O速率,则将调整跟踪中所有I/O的到达间隔,以允许请求的更改。请注意,以两倍iops重放的一个小时跟踪将只持续30分钟。

5. 'curve=nn': Define Data points for Curve

The default data points for a performance curve are 10, 50, 70,80, 90, and 100%. To change this, use the curve= parameter. Example: curve=(10-100,10) creates one data point for each 10% of the maximum I/O rate. Target I/O rates above 100 will be rounded up to 100; I/O rates below 100 will be rounded up to 10.

Remember: each data point takes elapsed=nn seconds!

性能曲线的默认数据点为10%、50%、70%、80%、90%和100%。要更改这一点,请使用curve=参数。例如:curve=(10-100,10)为最大I/O速率的每10%创建一个数据点。目标I/O速率高于100将四舍五入为100;低于100的I/O速率将四舍五入为10。

请记住:每个数据点需要elapsed=nn秒!

6. 'elapsed=nn: Elapsed Time

This parameter specifies the elapsed time in seconds for each run. This value needs to be at least twice the value of the reporting interval below. Each requested workload runs for elapsed= seconds while detailed performance interval statistics are reported every interval= seconds. At the end of a run, a total is reported for all intervals except for the first interval (or warmup=nn duration). The requirement to have at least 2 intervals allows us to have at least 1 reporting interval included in the workload total.

See also: maxdata and 'format=limited'.

Note that if you specify seek=eof your run will stop at the earlier of reaching EOF, or the elapsed time. This means that a seek=eof run for a 10TB lun with elapsed=10 will stop after 10 seconds! In that case, just specify elapsed=100h.

The same of course also is valid when using maxdata=x.

此参数指定每次运行的经过时间(以秒为单位)。这个值需要至少是下面报告间隔的两倍。每个请求的工作负载在elapsed=秒内运行,而详细的性能间隔统计数据每隔interval=秒报告一次。在运行结束时,将为所有间隔报告一个总计,除了第一个间隔(或warmup=nn持续时间)。至少有2个间隔的要求使我们可以在工作负载总计中包含至少一个报告间隔。

另请参阅:maxdata'format=limited'

请注意,如果指定了seek=eof,则运行将在到达EOF或经过时间之前停止。这意味着使用elapsed=10对10TB的lun运行seek=eof将在10秒后停止!在这种情况下,只需指定elapsed=100h

当使用maxdata=x时,情况当然也是一样的。

7. 'interval=nn': Reporting Interval

This parameter specifies the duration in seconds for each reporting interval. At the end of each reporting interval, all statistics that have been collected are reported.

Note: when doing very long runs for instance over the weekend, the amount of detail data reported can become overwhelming. A more reasonable interval duration may be appropriate, for instance 60 seconds. However, if you have a poorly performing storage device that never seems to be able to get to a stable workload I/O rate you may want to choose the lowest reporting interval possible. The longer your reporting interval, the more you will hide possible performance problems.

See also the report=no_sd_detail parameter if you want to limit the amount of output.

此参数指定每个报告间隔的持续时间(以秒为单位)。在每个报告间隔结束时,将报告收集到的所有统计数据。

注意:当进行非常长时间的运行,例如整个周末时,报告的详细数据量可能会变得非常庞大。更合理的间隔持续时间可能更合适,例如60秒。但是,如果您有一个性能不佳的存储设备,似乎永远无法达到稳定的工作负载I/O速率,则可能希望选择最低的报告间隔。报告间隔越长,可能隐藏的性能问题就越多。

另请参阅report=no_sd_detail参数,如果您想限制输出量。

8. ‘warmup=nn’: Warmup period

By default Vdbench will exclude the first interval from its run totals. The warmup value will cause the first warmup/interval intervals to be excluded. Using this parameter also changes the meaning of the elapsed= parameter to mean ‘run elapsed= seconds after the warmup period completes’.

默认情况下,Vdbench将排除第一个间隔的统计数据。warmup值将导致排除前面“warmup/interval”个间隔的数据。使用该参数还会改变elapsed=参数的含义,表示在warmup结束后再运行elapsed=秒。

9. 'maxdata=': stop after nnn bytes.

maxdata=, maxdata_read=, max_data_written:

Normally a run terminates after elapsed= seconds. maxdata= will terminate the run after the shorter of elapsed= or maxdata= bytes have been read or written.

Note that the byte count starts AFTER warmup= seconds, and that maxdata is only checked at the end of a reporting interval.

This parameter is available both for both raw and file system workloads, with the following difference: for raw workloads, any specified value less than 100 will be used to multiply this value with the total size of all currently used SDs. For instance two SDs, each of 10gb, using maxdata=5 will stop this run after 2*10gb*5=100gb worth of data has been accessed AFTER the warmup period.

Remember though: your elapsed time must be long enough to get this far.

通常情况下,运行会在elapsed=秒后终止。maxdata=将使运行在elapsed=maxdata=字节较少的情况下终止。

请注意,字节计数从warmup=秒后开始,并且maxdata仅在报告间隔结束时检查。

此参数适用于原始工作负载和文件系统工作负载,有以下区别:对于原始工作负载,任何指定的值小于100的值将与当前使用的所有SD的总大小相乘。例如,两个SD,每个大小为10GB,使用maxdata=5将在热身期后访问2*10GB*5=100GB的数据后停止运行。

请记住:您的elapsed时间必须足够长才能完成这一部分。

10. 'distribution=xxx': I/O arrival time distribution

distribution=([exponential][uniform][deterministic],[variable],[spike])
distribution=([e][u][d],[variable],[spike])
  • Exponential: exponential distribution. Default. In simple terms, an exponential arrival rate is a good distribution to achieve lots of I/O bursts. It is a good method to approximate a large application with many users. An exponential arrival rate is a classic modeling approach to describe a general arrival distribution of independent events. It causes significant queuing to occur even when the device utilization is only 50% busy.

  • Uniform: uniform distribution

  • Deterministic: deterministic: all I/O is evenly spread out using fixed inter arrival times.

  • Variable: changes the meaning of the iorate= parameter, defining a set of pairs, first an I/O rate, then the amount of seconds to use that I/O rate. This causes I/O to generate a variable I/O rate.

  • Spike: the I/O for the above mentioned variable I/O rates will be all started together at the beginning of each second instead of them being spread out using the requested exponential or uniform distribution.

  • 指数分布(Exponential):默认值。简单来说,指数到达率是实现大量I/O突发的良好分布。这是一种良好的方法,可以近似具有许多用户的大型应用程序。指数到达率是描述独立事件的一般到达分布的经典建模方法。即使设备利用率仅为50%忙碌,它也会导致出现显着的排队。

  • 均匀分布(Uniform):均匀分布

  • 确定性(Deterministic):所有I/O都使用固定的到达时间均匀分布。

  • 变量(Variable):改变了iorate=参数的含义,定义了一组配对值,首先是一个I/O速率,然后是使用该I/O速率的秒数。这会导致I/O生成可变的I/O速率。

  • 尖峰(Spike):上述可变I/O速率的I/O将在每秒开始时一次性全部启动,而不是根据请求的指数或均匀分布进行分布。

# Example: 
rd=rd1,…,iorate=(100,10,1000,5,50,10),dist=variable

Result: 100 iops for ten seconds, 1000 iops for five seconds, 50 iops for ten seconds and then again 100 iops. Make sure your elapsed time covers your requested amount of seconds.

The total amount of seconds specified may not be more than 3600 seconds.

结果:每秒100个IOPS持续十秒,每秒1000个IOPS持续五秒,每秒50个IOPS持续十秒,然后再次每秒100个IOPS。请确保您的经过时间包含您请求的秒数。

指定的总秒数不能超过3600秒。

11. 'pause=nn': Sleep 'nn' Seconds

When doing multiple runs, the 'pause=nn' parameter causes Vdbench to go to sleep for 'nn' seconds before it starts the next run. This parameter is ignored for the first run. 'pause=nn' can be used to allow a storage controller some time to catch its breath and complete things like emptying cache.

在进行多次运行时,'pause=nn' 参数会使 Vdbench 在开始下一次运行之前休眠 'nn' 秒。这个参数在第一次运行时不会生效。使用 'pause=nn' 可以让存储控制器有时间处理一些事情,比如清空缓存,让其喘息片刻。

12. Workload parameter specification in a Run Definition.

The original objective of all the forxxx parameters was to allow a user to override most of all Workload Definition (WD) parameters specified earlier to create complex, varying workloads, like forxfersize=(1k-1m,d).

Once I observed that some users were specifying here frequently just single parameters like forx=16k I realized that this started making the Workload Definition obsolete. Yes, you’ll always need multiple WDs to allow the running of different concurrent workloads, but for a workload without any forxxx variations WDs were not really needed anymore.

To make life easier for my users I then added the sd= parameter to a Run Definition, and from that point on indeed the WD became obsolete for this type of non-varying run.

The next step then was of course to not even ask you to specify forxfersize=, but just simply xfersize=. Internally of course Vdbench still treats it as a forxxx parameter, but as far as the parameter definition, you can now just specify xfersize=4k.

Previous:

sd=sd1,lun=/dev/xxx

wd=wd1,sd=*,rdpct=100,xfersize=4k rd=rd1,wd=wd1,iorate=max,elapsed=60,interval=1

New (And of course you can still code xfersize=(4k,8k):

sd=sd1,lun=/dev/xxx 

rd=rd1,sd=*,iorate=max,elapsed=60,interval=1,rdpct=100,xfersize=4k

最初所有的forxxx参数的目的是为了让用户能够覆盖之前指定的大多数工作负载定义(WD)参数,以创建复杂、多变的工作负载,比如forxfersize=(1k-1m,d)。

后来我发现一些用户经常在这里只指定单个参数,比如forx=16k,我意识到这开始使得工作负载定义变得不再必要。是的,你总是需要多个WD来允许不同并发的工作负载运行,但对于没有任何forxxx变化的工作负载,WD实际上并不再需要了。

为了让我的用户的生活更轻松,我随后将sd=参数添加到运行定义中,从那时起,对于这种非变化的运行,WD确实变得不再必要。

接下来的一步当然是甚至不要求你指定forxfersize=,而只需简单地指定xfersize=。在内部,当然Vdbench仍然将其视为forxxx参数,但就参数定义而言,你现在只需指定xfersize=4k即可。

12.1 ‘sd=xxx’ Specify SDs to use

If you did not specify a Workload Definition you may specify the SDs to be used here.

If you use both the sd= and wd= parameters, this will override the SDs specified in the Workload Definition.

Three little tricks: sd=single, sd=range and sd=setsofN.

  • sd=single: Let's say you have 10 devices you want to test. Just code an SD for each of them, sd1-sd10. Instead of having to specify one Run Definition for each, just code sd=single, and Vdbench will repeat the current RD once for each SD.
  • sd=range: To do a test for sd1, then sd1-sd2, then sd1-sd3 etc. code sd=range and Vdbench will take care of it.
  • sd=setsofN: Vdbench will create a Run Definition for each set of 'N' randomly selected SDs. If you have 512 drives, sd=single just is too slow. Example: sd=setsof4

如果您没有指定工作负载定义,可以在此处指定要使用的SD。

如果您同时使用sd=wd=参数,这将覆盖工作负载定义中指定的SD。

三个小技巧:sd=singlesd=rangesd=setsofN

  • sd=single:假设您有10个设备要测试。只需为每个设备编码一个SD,如sd1-sd10。而不是为每个设备指定一个运行定义,只需编码sd=single,Vdbench将为每个SD重复当前的RD一次。
  • sd=range:要测试sd1,然后sd1-sd2,然后sd1-sd3等,请编码sd=range,Vdbench会处理。
  • sd=setsofN:Vdbench将为每组随机选择的'N'个SD创建一个运行定义。如果您有512个驱动器,sd=single将会太慢。例如:sd=setsof4

12.2 '(for)xfersize=nn': Create for Loop Using Different Transfer Sizes

The forxfersize= parameter is an override for all workload specific xfersize parameters and allows multiple automatic executions of a workload with different data transfer sizes.

参数 说明
forxfersize=4k One run with 4k transfer size.
forxfersize=(4k,8k,12k,16k) One run each for 4k, 8k, etc.
forxfersize=(4k-32k,4k) One run each from 4k to 32k in increments of 4k.
forxfersize=(1k-128k,d) One run each from 1k to 128k, each time doubling thetransfer size. (1k,2k,4k,8k,etc).
forxfersize=(128k,1k,d) 'Reverse' double: (128k,64k,32k,etc)

See Order of Execution for information on the execution order of this parameter.

forxfersize=参数是对所有特定工作负载xfersize参数的覆盖,允许以不同的数据传输大小多次自动执行工作负载。

有关此参数执行顺序的信息,请参阅执行顺序

12.3 '(for)threads=nn': Create for Loop Using Different Thread Counts

The 'forthreads=' parameter is an override for all storage definition specific thread parameters and allows multiple automatic executions of a workload with different numbers of threads.

Note: the meaning of this parameter changes when using SD concatenation. During SD concatenation this parameter specified the total amount of threads that will be shared by all storage definitions.

参数 说明
forthreads=32 Do one run with 32 threads for each SD.
forthreads=(1,2,3,4) Do one run each with 1, 2, 3 and 4 threads.
forthreads=(1-5,1) Do one run each from 1 to 5 threads in increments of one.
forthreads=(1-64,d) Do one run each from 1 to 64 threads, each time doubling thethread count.
forthreads=(64-1,d) 'Reverse' double: (64,32,16,etc)

See Order of Execution for information on the execution order of this parameter.

forthreads=参数是对所有存储定义特定线程参数的覆盖,允许以不同数量的线程多次自动执行工作负载。

注意:当使用SD串联时,此参数的含义会发生变化。在SD串联中,此参数指定了将由所有存储定义共享的总线程数。

有关此参数执行顺序的信息,请参阅执行顺序

12.4 '(for)rdpct=nn': Create for Loop Using Different Read Percentages

The forrdpct= parameter is an override for all workload specific rdpct parameters, and allows multiple automatic executions of a workload with different read percentages.

参数 说明
forrdpct=50 Do one run with 50% reads
forrdpct=(10-100,10) Do one run each with read percentage values ranging from 10to 100 percent, incrementing the read percentage by 10 percent each time.

See Order of Execution for information on the execution order of this parameter.

'forrdpct='参数是对所有特定工作负载rdpct参数的覆盖,允许以不同的读取百分比多次自动执行工作负载。

有关此参数执行顺序的信息,请查看执行顺序

12.5 '(for)rhpct=nn': Create for Loop Using Different Read Hit Percentages

The forrhpct= parameter is an override for all workload specific rhpct parameters, and allows multiple automatic executions of a workload with different read hit percentages.

参数 说明
forrhpct=50 Do one run with 50% read hits
forrhpct=(10-100,10) Do one run each with read hit percentage values ranging from 10 to 100 percent, incrementing the read hit percentage by 10 percent each time.

See Order of Execution for information on the execution order of this parameter.

forrhpct=参数是对所有特定工作负载rhpct参数的覆盖,允许以不同的读命中百分比多次自动执行工作负载。

有关此参数执行顺序的信息,请参阅执行顺序

12.6 '(for)whpct=nn': Create for Loop Using Different Write Hit Percentages

The 'forwhpct=' parameter is an override for all workload specific whpct parameters, and allows multiple automatic executions of a workload with different write hit percentages.

参数 说明
forwhpct=50 Do one run with 50% write hits
forwhpct=(10-100,10) Do one run each with write hit percentage values ranging from 10 to 100 percent, incrementing the write hitpercentage by 10 percent each time.

See Order of Execution for information on the execution order of this parameter.

'forwhpct='参数是对所有特定工作负载whpct参数的覆盖,允许以不同的写入命中百分比多次自动执行工作负载。

有关此参数执行顺序的信息,请查看执行顺序

12.7 '(for)seekpct=nn': Create for Loop Using Different Seek Percentages

The 'forseekpct=' parameter is an override for all workload specific seekpct parameters, and allows multiple automatic executions of a workload with different seek percentages.

参数 说明
forseekpct=50 Do one run with 50% seek
forseekpct =(10-100,10) Do one run each with seek percentage values ranging from10 to 100 percent, incrementing the seek percentage by 10 percent each time.

See Order of Execution for information on the execution order of this parameter.

'forseekpct='参数是对所有特定工作负载seekpct参数的覆盖,允许以不同的寻道百分比多次自动执行工作负载。

有关此参数执行顺序的信息,请参阅执行顺序

12.8 '(for)hitarea=nn': Create for Loop Using Different Hit Area Sizes

The 'forhitarea=' parameter is an override for all Storage Definition hit area parameters, and allows multiple automatic executions of a workload with different hit area sizes:

参数 说明
forhitarea=4m Do one run with 4MB hit area
forhitarea =(10m-100m,10m) Do one run each with hit area values ranging from 10MB to 100 MB, incrementing the hit area by 10 MB each time.

See Order of Execution for information on the execution order of this parameter.

'forhitarea='参数是对所有存储定义命中区域参数的覆盖,允许以不同的命中区域大小多次自动执行工作负载。

有关此参数执行顺序的信息,请参阅执行顺序

12.9 '(for)compratio=nn': Create for Loop Using Different compression ratios.

The 'forcompratio=' parameter is an override for the compratio= parameter, and allows multiple automatic executions of a workload with different compression ratios.

'forcompratio='参数是对compratio=参数的覆盖,允许以不同的压缩比例多次自动执行工作负载。

12.10 Order of Execution Using forxxx Parameters

The order in which the forthreads=, forxfersize=, forrdpct=, forrhpct= , forwhpct=, forseekpct= and forhitarea= parameters are found in the input will determine the order in which the requested workloads will be executed.

Treat this as a sequence of embedded for loops. Using forthreads= and forxfersize as an example:

  • for (all threads) { for (all xfersizes) { for (all I/O rates) } } versus

  • for (all xfersizes) { for (all threads) { for (all I/O rates) } } depending on what parameter came first.

这些参数的顺序决定了请求的工作负载将如何执行,就像一系列嵌套的循环一样。