gpt4 book ai didi

linux - 确定各种文件系统的缓存未命中

转载 作者:IT王子 更新时间:2023-10-29 00:37:53 25 4
gpt4 key购买 nike

我有一个学校项目,我必须找出文件系统在重载和轻载以及多处理器机器上会有多少缓存未命中。与我的教授讨论后,我想出了一个基本的执行计划:

  1. 创建一个程序,使文件系统陷入困境并填满缓冲区缓存。
  2. 使用系统基准测试工具记录缓存未命中数。
  3. 冲洗并在新条件下重复。

但作为操作系统设计的新手,我不确定如何进行。所以这里有一些我需要的点 help :

  1. 理想的程序会执行什么操作来填充缓冲区高速缓存?目前,我编写的程序读取和写入几个不同的文件,x 次。
  2. 有哪些工具可以记录缓存未命中数?我查看了 oprofile,但我认为它不监视文件系统的缓冲区缓存。但是我找到了这个 list这看起来很有希望。
  3. 其他正在运行的进程会影响这些基准吗?

感谢您的帮助!

最佳答案

1) 如果您正在尝试测试您的文件系统性能,请在您的 I/O 线程中加入几个处理大量文件元数据的线程。此外,在多个并行线程中执行 I/O 时,混合执行大型传输的线程和执行小型传输的线程。许多文件系统会将小的 I/O 操作合并为物理驱动器可以以更高效的方式处理的更大的请求,并且混合各种大小的 I/O 可能有助于更快地填充缓存(因为它必须缓冲合并的输入/输出)。

2) 请小心使用该工具列表,许多工具看起来像是设计用于在原始设备上运行而不是通过文件系统层运行(因此您获得的结果可能并不代表您认为它们所做的)。如果您正在寻找一种工具来对特定文件系统进行基准测试,最好的办法可能是咨询该文件系统的开发团队。他们很可能会向您指出他们在开发期间用来对 FS 进行基准测试的工具,即使它是内部开发的自定义工具。

3) 是的,任何其他正在运行并可能访问被测文件系统的东西都可能会影响您的结果。您可能希望创建一个单独的文件系统以仅用于此测试,并关闭在您运行测试时可能尝试访问它的任何后台扫描。

关于linux - 确定各种文件系统的缓存未命中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1783991/

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