在大内存系统上对磁盘性能进行基准testing

我需要为我们的虚拟主机环境产生一些比较的文件系统性能指标。 具体来说,我需要看看NFS和iSCSI之间的区别,以及将networkingMTU从1500更改为9000的性能影响。这是我第一次进入文件系统性能指标…这里有大量的信息(和这么多工具!),我不知道从哪里开始。

复杂的事情是,这些系统每个都有48个内核和256 GB的内存,我不确定这可能会如何影响我的性能测量工具的设置。 例如, iozone文档build议将最大文件大小设置为大于系统的本地内存……但是这表明最大文件大小至less为512GB。

我希望有人能够提供一些build议(或指向某些文档),以便(a)build立一些合理的testing,(b)解释结果。

谢谢!

您需要考虑您正在进行基准testing的常见使用情况。 你似乎在做基准testing,而不是决定一个驱动器是否比另一个驱动器更好,而是决定,你应该使用什么技术和设置。 我的意思是,当你希望你的结果能够帮助你select最适合你的用例的时候,你应该尽可能地复制生产环境。

那么,你是否有很多可用于caching和caching的内存? 如果是这样,那么在基准testing中也要保持空闲内存的预期数量。 如果没有,尽量使之尽可能接近。

您可以使用mem= kernel参数限制Linux可用的内存量 – 例如。 传递mem=2G会使linux只使用2GB的内存。

另一种方式(获得真实世界的结果更好)是编写一个简单的应用程序,它将分配内存并填充内容。

最好的办法就是把它设置成生产时的样子,使用正常和最好的内存,做你想做的事情(如果你能做到的话,不会导致IO)。

有了这样的服务器设置,你可以运行iozone,fio或其他基准来获得一些数字。

以下博客多次讨论磁盘基准testing。 search其档案。 作者是我的朋友,相信他写的东西。

http://scalability.org/