File io 如何解释此文件写入吞吐量性能?

File io 如何解释此文件写入吞吐量性能?,file-io,io,operating-system,File Io,Io,Operating System,在下图中,绘制了吞吐量(KB/秒)图,用于写入具有不同记录大小的不同大小的新文件。文件大小从64KB到4GB不等。记录大小从4KB到16MB不等。文件和记录大小是两个水平轴,吞吐量绘制在垂直轴上。 我需要了解以下两个观察结果的原因: (1) 为什么有两个平台:一个平台:文件大小从128KB到8MB,另一个平台从64MB到1GB (2) 为什么在文件大小256KB和2MB的范围内有两个峰值(最佳点) 系统有8GB内存。我相信需要很多其他参数来正确解释,但仍然可以从图中得出任何可能的推论吗 我对以下

在下图中,绘制了吞吐量(KB/秒)图,用于写入具有不同记录大小的不同大小的新文件。文件大小从64KB到4GB不等。记录大小从4KB到16MB不等。文件和记录大小是两个水平轴,吞吐量绘制在垂直轴上。 我需要了解以下两个观察结果的原因:

(1) 为什么有两个平台:一个平台:文件大小从128KB到8MB,另一个平台从64MB到1GB

(2) 为什么在文件大小256KB和2MB的范围内有两个峰值(最佳点)

系统有8GB内存。我相信需要很多其他参数来正确解释,但仍然可以从图中得出任何可能的推论吗


我对以下因素非常怀疑:

  • 其他进程干扰

  • 吞吐量结果不稳定。这是我首先怀疑的。你的测量方法是什么

  • 如果我要进行这样的测量,我会尝试以下方法:

    • 多次测量每个场景的吞吐量,或者在其间重新启动系统,或者运行一些“清理”过程,以确保一个测试运行不会干扰另一个测试运行

    • 尝试以随机模式选择场景

    • 对于每个场景都有多个结果,去掉两端(或慢端)的异常值,并取其余结果的平均值(或中值)


      • 我对以下因素非常怀疑:

      • 其他进程干扰

      • 吞吐量结果不稳定。这是我首先怀疑的。你的测量方法是什么

      • 如果我要进行这样的测量,我会尝试以下方法:

        • 多次测量每个场景的吞吐量,或者在其间重新启动系统,或者运行一些“清理”过程,以确保一个测试运行不会干扰另一个测试运行

        • 尝试以随机模式选择场景

        • 对于每个场景都有多个结果,去掉两端(或慢端)的异常值,并取其余结果的平均值(或中值)


        当然,你是对的。但无论如何,这不是我做过的。相反,我使用了一个名为IOZone的基准测试工具。无论如何,我看到了一个明确的模式,例如:注意大小大于1GB的文件的吞吐量突然下降。这可能是因为直接写入磁盘。当然,你是对的。但无论如何,这不是我做过的。相反,我使用了一个名为IOZone的基准测试工具。无论如何,我看到了一个明确的模式,例如:注意大小大于1GB的文件的吞吐量突然下降。这可能是由于直接写入磁盘造成的。