【发布时间】:2009-11-23 15:47:40
【问题描述】:
我有一个学校项目,我必须找出文件系统在重负载和轻负载以及多处理器机器上会有多少缓存未命中。在和我的教授讨论后,我想出了一个基本的执行计划:
- 创建一个程序,该程序将阻塞文件系统并填满缓冲区缓存。
- 使用系统基准测试工具记录缓存未命中次数。
- 冲洗并在新条件下重复。
但是作为操作系统设计的新手,我不确定如何进行。所以这里有一些地方我需要一些help:
- 理想的程序会执行哪些操作来填满缓冲区缓存?目前,我编写的程序读取和写入几个不同的文件,x 次。
- 有哪些工具可以记录缓存未命中的次数?我研究了 oprofile 但我认为它不会监视文件系统的缓冲区缓存。但我发现这个list 看起来很有希望。
- 其他正在运行的进程会影响这些基准吗?
感谢您的帮助!
【问题讨论】:
-
您正在开发什么操作系统?不同的操作系统会使用不同的工具。
-
我正在使用 Ubuntu 9.10 (ext4) 开始,但我还想测试 ext2、ext3 和 zfs。 ext2 和 ext3,我将在旧版本的 Ubuntu 上进行测试,我将使用 OpenSolaris for ZFS。
标签: linux filesystems profiling benchmarking