LINUX.ORG.RU

В процентах от чего?

  • Нагрузка может быть больше возможностей диска (более ста условных "процентов");
  • Дисков может быть больше одного и…
    • Они могут быть в RAID-0, что меняет логику вычисления нагрузки;
    • Они могут быть в RAID-1, что тоже меняет логику;
    • Они могут быть в RAID-5/6, что ещё хлеще меняет логику;
    • Они могут быть в любой комбинации перечисленных выше RAID;
  • Диск может быть сетевым, и его пропускная способность может быть неизвестна;
  • "Диск" может быть файлом на другом устройстве (даже не обязательно блочном) и не иметь свойств, необходимых для вычисления нагрузки на него;

Et cetera…

mord0d ★★★★★
()

Если ядро каждую секунду находится в ожидании io суммарно 0.5с, то нагрузка на диск составляет 50%.

Black_Shadow ★★★★★
()

/proc/diskstats

логику расчёта %util можно взять в коде sysstat

router ★★★★★
()
Последнее исправление: router (всего исправлений: 2)
Ответ на: комментарий от Black_Shadow

А если едро находится в poll/select завершения aio?

/sys/block//stat

Nastishka ★★★★★
()
Ответ на: комментарий от mord0d
В процентах от чего?

от максимально возможной пропускной способности. Хочу виджет сделать, который будет показывать % загруженности io

serg002 ★★★
() автор топика
Последнее исправление: serg002 (всего исправлений: 1)
Ответ на: комментарий от serg002

Просчёт нагрузки занимает время процессора, тормозя обработку данных (то самое I/O). ^_~

Причём насколько просчёт тормозит на момент просчёта неизвестно, для этого нужен дополнительный обработчик, который замеряет просчёт и корректирует данные с учётом внешних (для I/O) факторов.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

филигранная точность тут не особо важна, просто видеть примерно насколько io загружено

serg002 ★★★
() автор топика
Ответ на: комментарий от serg002

у меня ~201% в htop было вчера в виртуалке

anonymous
()
Ответ на: комментарий от serg002

учитывай, что диск может быть загружен доступом на 100% и от пропускной способности при этом будет использоваться 0.01%

anonymous
()
Ответ на: комментарий от serg002

Когда говорят про утилизацию диска, обычно имеют ввиду утилизацию по времени (time-based utilization). С максимальной пропускной способностью она не имеет ничего общего. Если диск загружен на 100%, это не значит, что диск не может делать больше. А утилизацию в процентах от возможностей диска посчитать практически невозможно - диск не отдаст такой информации.

bigbit ★★★★★
()
Последнее исправление: bigbit (всего исправлений: 1)

как взять значение io load диска в процентах?

device_name=/dev/sda
col_num=`iostat -xd | fgrep '%util' | sed -r 's/\s+/\n/g' | cat -n | fgrep '%util' | egrep -o '[0-9]+'`
LANG=C iostat -xd "$device_name" 1 2 | grep "^${device_name##*/}[[:space:]]" | tail -n 1 | awk '{print($'$col_num');}'
spirit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.