我是IOzone的新用户,当我使用以下命令运行IOzone时:./iozone -i 0 -i 1 -t 2 -T
,它生成以下结果(部分):
Children see throughput for 2 initial writers = 650943.69 KB/sec
Parent sees throughput for 2 initial writers = 13090.24 KB/sec
Min throughput per thread = 275299.72 KB/sec
Max throughput per thread = 375643.97 KB/sec
Avg throughput per thread = 325471.84 KB/sec
Min xfer = 356.00 KB
Children see throughput for 2 rewriters = 1375881.50 KB/sec
Parent sees throughput for 2 rewriters = 10523.74 KB/sec
Min throughput per thread = 1375881.50 KB/sec
Max throughput per thread = 1375881.50 KB/sec
Avg throughput per thread = 687940.75 KB/sec
Min xfer = 512.00 KB
Children see throughput for 2 readers = 2169601.25 KB/sec
Parent sees throughput for 2 readers = 27753.94 KB/sec
Min throughput per thread = 2169601.25 KB/sec
Max throughput per thread = 2169601.25 KB/sec
Avg throughput per thread = 1084800.62 KB/sec
Min xfer = 512.00 KB
Children see throughput for 2 re-readers = 2572435.25 KB/sec
Parent sees throughput for 2 re-readers = 26311.78 KB/sec
Min throughput per thread = 2572435.25 KB/sec
Max throughput per thread = 2572435.25 KB/sec
Avg throughput per thread = 1286217.62 KB/sec
Min xfer = 512.00 KB
iozone test complete.
我对“吞吐量”和“最小xfer”的含义感到困惑,有人可以帮助我吗?
顺便说一句,为什么从 child 和 parent 那里看到的吞吐量不同?谢谢!
最佳答案
Min xfer是指一次写入的最小数据量。 “每个线程在4 KB记录中写入512 KB文件”
因此,如果Min xfer为512.00 KB,它将立即将整个实际文件写入磁盘(将所有4 KB记录分组在一起)。
子代和父代吞吐量因操作系统I/O缓冲而不同。 iozone不会通过吞吐量测试强制进行直接(非缓冲)读取或写入操作。您真正要测试的是系统的缓冲区高速缓存+磁盘高速缓存+磁盘速度组合。