gpt4 book ai didi

linux - 估计或测量创建文件的 iops 数量

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:13:02 26 4
gpt4 key购买 nike

我想知道创建一个空文件需要多少次 I/O 操作 (iops)。我对 linux 和 GFS 文件系统很感兴趣,但是也非常欢迎其他文件系统信息。

也非常欢迎提出如何准确衡量这一点的建议。

真实场景(答案要求):

  1. Linux
  2. GFS 文件系统(如果你能估计另一个 - 请做)
  3. 在现有目录中创建一个新文件,该文件不存在,使用以下代码
  4. 假设目录在缓存中且目录深度为D

代码:

int fd = open("/my_dir/1/2/3/new_file", O_CREAT | S_IRWXU);
// assuming fd is valid
fsync(fd);

最佳答案

对于人工测量:

  1. 在自己的 block 设备上创建一个空白文件系统(例如 vmware scsi 等)
  2. 安装它,调用 sync(),然后记录该 block dev 上存在的 IOPS 数。
  3. 针对文件系统运行您的测试程序,并且不做进一步的操作(甚至不做“ls”)。
  4. 等到所有未刷新的 block 都已刷新 - 大约 1 分钟左右
  5. 再次快照 iops 计数

当然这是非常不现实的,因为如果您创建了两个文件而不是一个文件,您可能会发现文件的数量还不到原来的两倍。

同时创建空文件或空白文件是不现实的 - 因为它们不会做任何有用的事情。

目录结构(目录有多深,有多少条目)可能有影响,但也有碎片化程度和其他任意因素。

关于linux - 估计或测量创建文件的 iops 数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/874486/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com