Оценка производительности дисков командой vmstat
Команда iostat позволяет проверить, действительно ли низкая производительность системы связана с неэффективным выполнением операций дискового ввода-вывода.
Проанализировав столбец wa команды vmstat, можно прийти к аналогичному выводу (более подробная информация приведена в разделе Команда vmstat. Ниже перечислены другие источники полезной информации о дисковом вводе-выводе:
- Столбец disk xfer в выводе команды
vmstat Для просмотра статистической информации о логических дисках (до 4 дисков) введите следующую команду:
# vmstat hdisk0 hdisk1 1 8 kthr memory page faults cpu disk xfer ---- ---------- ----------------------- ------------ ----------- ------ r b avm fre re pi po fr sr cy in sy cs us sy id wa 1 2 3 4 0 0 3456 27743 0 0 0 0 0 0 131 149 28 0 1 99 0 0 0 0 0 3456 27743 0 0 0 0 0 0 131 77 30 0 1 99 0 0 0 1 0 3498 27152 0 0 0 0 0 0 153 1088 35 1 10 87 2 0 11 0 1 3499 26543 0 0 0 0 0 0 199 1530 38 1 19 0 80 0 59 0 1 3499 25406 0 0 0 0 0 0 187 2472 38 2 26 0 72 0 53 0 0 3456 24329 0 0 0 0 0 0 178 1301 37 2 12 20 66 0 42 0 0 3456 24329 0 0 0 0 0 0 124 58 19 0 0 99 0 0 0 0 0 3456 24329 0 0 0 0 0 0 123 58 23 0 0 99 0 0 0В столбцах disk xfer указывается число операций передачи данных для указанных физических томов за интервал измерения. В отчете команды могут быть указаны имена от одного до четырех физических томов. Число операций выводится для каждого из заданных устройств в порядке их перечисления. Это значение отражает число запросов к физическому устройству. Оно не связано напрямую с объемом считанных или записанных данных. Несколько логических запросов могут объединяться в один физический запрос.
- Столбец in вывода команды vmstat
В этом столбце показана частота аппаратных прерываний (единиц в секунду) за интервал измерения. Прерывания отправляются при возникновении таких событий, как завершение выполнения запроса диском или истечение очередных 10 миллисекунд, измеряемых таймером. Последнее прерывание отправляется 100 раз в секунду, поэтому значение в поле in всегда больше 100. Команда vmstat позволяет получить более подробную информацию о прерываниях.
- Вывод команды vmstat -i Команда с опцией -i позволяет узнать число прерываний, полученных каждым устройствам с момента запуска системы. Если в команде указан интервал сбора информации и, при необходимости, число отчетов, то статистика с момента запуска системы будет выведена только в первом разделе; в остальных разделах вывода будет приведена статистика за очередной интервал.
# vmstat -i 1 2 приоритет уровень тип число модуль(обработчик) 0 0 аппаратный 0 i_misc_pwr(a868c) 0 1 аппаратный 0 i_scu(a8680) 0 2 аппаратный 0 i_epow(954e0) 0 2 аппаратный 0 /etc/drivers/ascsiddpin(189acd4) 1 2 аппаратный 194 /etc/drivers/rsdd(1941354) 3 10 аппаратный 10589024 /etc/drivers/mpsdd(1977a88) 3 14 аппаратный 101947 /etc/drivers/ascsiddpin(189ab8c) 5 62 аппаратный 61336129 clock(952c4) 10 63 аппаратный 13769 i_softoff(9527c) приоритет уровень тип число модуль(обработчик) 0 0 аппаратный 0 i_misc_pwr(a868c) 0 1 аппаратный 0 i_scu(a8680) 0 2 аппаратный 0 i_epow(954e0) 0 2 аппаратный 0 /etc/drivers/ascsiddpin(189acd4) 1 2 аппаратный 0 /etc/drivers/rsdd(1941354) 3 10 аппаратный 25 /etc/drivers/mpsdd(1977a88) 3 14 аппаратный 0 /etc/drivers/ascsiddpin(189ab8c) 5 62 аппаратный 105 clock(952c4) 10 63 аппаратный 0 i_softoff(9527c)Прим.: Вывод этой команды зависит от системы, ее аппаратной и программной конфигурации (например, прерывания от таймера могут быть не показаны в выводе команды vmstat -i, хотя они и учитываются в столбце in вывода команды vmstat). Обратите внимание на большие значения в столбце count; постарайтесь выяснить причину, по которой соответствующему модулю пришлось отправить большое число прерываний.