Вы можете попробовать утилиту cachestat из пакета perf-tools .
Автор также перечисляет некоторые (возможно, более грубые) альтернативы, которые используют люди:
A) Изучите частоту ошибок кэширования страниц с помощью iostat(1) для мониторинга чтения с диска и предположите, что это ошибки кэша, а не, например, O_DIRECT. В любом случае частота промахов, как правило, является более важным показателем, чем соотношение, так как промахы пропорциональны боли при применении. Также используйте free(1), чтобы увидеть размеры кэша.
Б) Удалить кэш страницы (echo 1> /proc /sys /vm /drop_caches) и измерить, насколько ухудшается производительность! Мне нравится использование отрицательного эксперимента, но это, конечно, болезненный способ пролить свет на использование кеша.
C) Используйте sar (1) и изучите мелкие и серьезные неисправности. Я не думаю, что это работает (например, обычный ввод / вывод).
D) Используйте скрипт SystemTap cache-hit-rate.stp, который является вторым в интернет-поиске коэффициента попадания в кеш страниц Linux. Он обеспечивает доступ к кэшу, находящемуся высоко в стеке, в интерфейсе VFS, так что можно увидеть чтение в любой файловой системе или устройстве хранения. Промахи кэша измеряются через их дисковый ввод-вывод. При этом также пропускаются некоторые типы рабочей нагрузки (некоторые упоминаются в "Уроках" на этой странице) и соотношения вызовов "тарифы".