我需要根据最大(峰值)磁盘使用率对工具进行基准测试。我们观察到该工具会在磁盘上创建临时文件。 因此,我想弄清楚它在执行期间使用多少峰值磁盘空间(写入的字节数)来存储临时文件。
最佳答案
写入的字节数不一定是磁盘使用的峰值。
有很多方法可以做到这一点。
1) df
或 du
会给你当时的磁盘使用情况。如果您每秒执行一次 df
,这可能会为您提供足够的信息。这是假设该过程运行的时间足够长以获取多个样本。如果这对您有用,这可能是最简单的方法。
2) 如果您知道使用或创建了哪些目录或文件,您可以通过结合 inotifywait< 来增强以前使用
而不是休眠一个固定的时间间隔:df
或 du
的方式
while inotifywait -q -e modify filename >/dev/null; do
df >> df-log-file
done
有关更多选项,请参阅 man inotify
。
3) 如果您在 VirtualBox 中运行该程序,请创建一个动态分配的虚拟磁盘。该 VDI 的实际文件将在需要空间时增长。因此 VDI 的大小应该是起始大小加上临时文件的峰值大小。我不知道结果会有多准确。
应该有更多的方法来做到这一点。
关于linux - 在 Linux 中计算磁盘峰值大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44657445/