如果是btt结果,我最熟悉
我需要帮助比较由FIO和Btt工具报告的延迟。在FIO结果中有
我确实读过几篇关于FIO结果的文章,但它对我来说还不太清楚: slat,clat和lat意味着什么?
如果磁盘延迟较高或请求队列延迟较高,FIO结果能提供洞察吗?
是FIO中报告的"Slat“、"Clat”或"lat“,直接可与Q2D、C2D或Q2C ?媲美。
可能这两种工具不是直接可比的,在这种情况下,你能解释一下为什么吗?
谢谢
发布于 2017-10-28 06:40:53
这在很大程度上取决于正在使用的ioengine,以及是否使用direct=1提交I/O。假设--ioengine=libaio --direct=1
您需要一个异步ioengine,因为同步I引擎在I/O完成之前会阻塞提交(请参阅doc.html#interpreting-the-output的slat部分),而异步ioengine可以与接收I/O已完成的通知分开提交。您需要direct=1,因为没有它,您的I/O将只进入Linux页面缓存,甚至可能不是异步的(尽管ioengine是异步的!)-有关详细信息,请参阅doc.html#cmdoption-arg-ioengine的libaio部分。
另外,请记住,在fio提交后,您不知道块层将对I/O做什么。在某些情况下,它可以选择将I/O合并在一起(例如I/O是连续的,并且到达足够近的位置),或者将它们分开(例如,如果它们太大而设备太大),破坏fio值和btt值之间的任何一对一的对应。
fio的数量可能比btt的要大,因为fio是在一个更高的级别(用户空间)运行的,因此数据需要进一步传输。
https://stackoverflow.com/questions/42661073
复制相似问题