小编Yuf*_*Yuf的帖子

Linux fread() 上的预读效果

我对大型二进制文件的预读性能有问题。

我的策略是

  • 使用 fread() 从大型二进制文件中读取固定大小的块。(例如 10MB)
  • 使用 usleep() 休眠 n 毫秒,仅用于预读性能测量。

  • 重复此操作,直到读取整个文件。

然后,我对上述测量预读性能的策略进行了实验。环境是

  • CentOS 7
  • 4GB 二进制文件
  • 块大小为每 2MB 2 ~ 300MB
  • 我测试的睡眠时间是 5、10、50、100、300 毫秒,没有睡眠

结果: 在此处输入图片说明

在结果中可以看到,当块大小较小且休眠时间足够长以进行预读时,读取时间较短。块大小越大或睡眠时间越短,读取时间越接近约 20 秒。

然后,我想对该图进行回归分析。我应该使用什么功能?我的策略的复杂程度如何?

c linux fread disk-io

5
推荐指数
0
解决办法
186
查看次数

标签 统计

c ×1

disk-io ×1

fread ×1

linux ×1