我使用iozone版本3.373来testingNFSv4和NBD,但结果iozone ! 它表示,输出是以千字节/秒为单位,但我得到的数值如3,411,938随机读取。 我正在使用10/100以太网networking,使用netperf最大吞吐量大约为96Mbps。 我正在执行以下命令。
iozone -i 0 -i 1 -i 2 -i 8 -a -Rb nbd.xls -g 10M -q 1M
这些高值来自缓冲区caching。 NFS主页build议使用-U选项来避免这种情况。 另一个很好的select是-I 。 我发现这篇文章对于在NFS挂载上运行IOzone非常有用。
答案很简单:caching。
如果您的数据大小比可用RAM小,那么在初始写入之后,其中的一部分或全部可能会被caching。 这是非常快的,这就是为什么你的吞吐量高。 如果对可用内存的上下文件进行-i 0 -i 1testing,则可以真正看到这种效果。
另一种方法是使用-I标志,告诉iozone使用DIRECTIO进行I / O操作。 那些不被caching。