Intereting Posts
awk: Извлечение фиксированного числа строк, в котором последнее число строк может изменяться Как сортировать файлы по части имени файла? Генератор паролей случайных CLI-файлов Bash Linux и `<` Как заставить команду «mail» работать с помощью SSH? Почему GNU Parallel замедляется? Как запустить FreeBSD в режиме консоли Gnome: см. Основные команды emacs в фоновом изображении Где ядро ​​поддерживает конфигурацию последовательного порта? Ошибка или функция? Grep принимает файлы как флаги Как установить диск `D: \` Windows в linux mint? Как я могу изменить яркость экрана в debian wheezy, установленном на ноутбуке? Linux считается XSI-совместимым или в значительной степени таковым? Создание временного файла vs подстановка процесса и расширение переменной? Файловый менеджер общих диалогов, таких как Open или Save Разделить одну и ту же конфигурацию виртуального хоста для нескольких файлов

Задержка ввода-вывода измерительного блока с использованием proc FS

Я пытаюсь измерить задержку ввода-вывода из-за доступа к диску. Для этого я использую delayacct_blkio_ticks из /proc/[pid]/stat response. То, что я получаю, это константа 0, независимо от того, сколько IO сделано в моем приложении.

Прокач говорит:

 42) delayacct_blkio_ticks %llu (since Linux 2.6.18) Aggregated block I/O delays, measured in clock ticks (centiseconds). 

Я использую версию ядра 3.0.101.

Но … если я использую top , я получаю постоянное ненулевое значение “% wa”.

 top - 00:49:36 up 186 days, 15:06, 3 users, load average: 4.54, 5.80, 5.53 Tasks: 270 total, 1 running, 269 sleeping, 0 stopped, 0 zombie Cpu(s): 0.1%us, 0.0%sy, 0.0%ni, 97.0%id, 3.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 387581M total, 261149M used, 126432M free, 295M buffers Swap: 12266M total, 193M used, 12073M free, 82346M cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 4290 build 20 0 512g 169g 25m S 8 44.9 241:27.65 java 7614 build 20 0 9056 1268 828 R 0 0.0 0:01.28 top 1 root 20 0 10540 560 536 S 0 0.0 0:46.33 init 

Я читаю неправильные данные для этого измерения? Почему top сообщает это правильно? Значение WA выше 0 только тогда, когда я выполняю определенные операции в своем приложении, поэтому я уверен, что это не из другого процесса.

Это правда, я не вижу состояние процесса Java как D Является ли delayacct_blkio_ticks только сообщающим время в этом состоянии?