Я хочу посчитать количество обращений к диску во время полного запуска моего скрипта. Мой bash-скрипт запускает 2 других исполняемых файла локально и 2 других исполняемых файла удаленно. Примерно так (эти исполняемые файлы могут обращаться к другим инструментам сами):
#!/bin/bash
./executable1 DATA1 &
./executable2 DATA2 &
ssh remote_host './executable3 DATA3' &
ssh remote_host './executable4 DATA4' &
wait;
Теперь я запускаю свой bash-скрипт с perf
так:
perf stat -e page-faults,page-faults:u ./myBashScript.sh
но результаты всегда одинаковы, независимо от того, изменяю ли я файлы DATA *, порядок, количество команд, ... Примерно так:
128,470 page-faults
127,641 page-faults:u
Теперь мой вопрос: «Как я могу подсчитать количество обращений к диску для всего сценария?"
пс:
- Как вы знаете, Linux пытается уменьшить количество обращений к диску, используя свободное место оперативной памяти в качестве кеш-диска, а здесь, "подсчитывая количество обращений к диску", я точно имею в виду, сколько раз ОС должна переносить данные с жесткого диска в основную память (= RAM ударил / пропустил)
- Мне просто нужно посчитать количество обращений к диску на локальном компьютере, а не на удаленном.
- Извините за слабый английский.