fio:选择基于size与基于time的测试,还是即基于size又基于time?其中关键的测试方向参数:-time_based\-runtime VS -size
默认是基于size的(当指定-filename时,如果该文件或裸设备存在,则fio默认使用其文件或设备的size大小; 如果不存在,fio会报错并提示你)。
此时,如果你【未指定】-runtime,如果-filename的文件或裸设备以及io完了,测试即结束。
如果你指定了-runtime,如果-filename的文件或裸设备以及io完,还未到达runtime指定的测试时间,测试会立即结束;如果完全io万需要超过指定的runtime时间,也会立即结束!
一句话:-runtime限制了fio测试的总执行时间。
整体测试时间取其最小者: min(处理io完filename的时间,runtime)
#########################################################################################
通过-time_based开启基于time的测试
当指定-time_based后,如果【未指定】-runtime,则-time_based等于无效,白指定。fio会整个的io完filename,然后结束。
此时,配置我们指定的-runtime,fio会坚定不移的执行指定的runtime时长,而不在乎filename的size——无论你是否指定size!!
一句话:-time_based会使得-size无效,但是,你得确保-filename存在!