Если R (RUNCEUE) больше B (Waitqueue) в VMSTAT, это связано с I / O?

Хорошо, поэтому спустя (долгое) время я понял проблему:

В grub , изменение конфигурации, включающее GRUB_GFXPAYLOAD_LINUX = keep и GRUB_GFXMODE = 1920X1080 , похоже, решил мою проблему

Я предполагаю, что GRUB_GFXPAYLOAD_LINUX = keep - вот что действительно имеет значение, так как установка его на любое другое значение, кроме keep (например, разрешение вроде 1920x1080 ) даст мне резервный текстовый экран загрузки.

4
14.10.2018, 10:57
2 ответа

Большее число в b, чем в r, означает, что процессоры часто простаивают, так что вы правы, запутавшись. В документе должно было быть написано «означает, что у вас узкое место ввода-вывода».

Учтите, что на странице написано, что rникогда не должно превышать число ЦП, а r=16 в системе с 12 ЦП является серьезной проблемой. Это сильно преувеличено. Это просто означает, что процессоры полностью используются, а некоторые потоки ожидают. Обычно ничего страшного.

Наконец, не путайте потоки и процессы, как это иногда делает связанный документ. Столбцы rи bпоказывают количество потоков, а не процессов. Не все процессы являются однопоточными.

4
27.01.2020, 20:54

Я думаю, что это предложение совершенно запутано.

Когда r > num_cpus, имеет смысл думать о системе в целом как о процессоре -, связанном (в этот точный момент ).

Однако я не думаю, что r > bимеет какое-то особое значение.

Другой источник предполагает, что «если в столбце [b] постоянно присутствует не -нулевое число, вы можете продолжить расследование с помощью iostat». Вероятно, имеет больше смысла рассматривать это состояние как предполагающее систему, связанную с вводом-выводом -, если только вы не знаете, что используете несколько очередей ввода-вывода.

iostatвключает столбец %utilдля каждого дискового устройства. т.е. если %utilравно 100, это означает, что на этом устройстве всегда есть хотя бы один ожидающий процесс. avgqu-szпокажет, сколько разных запросов ожидает одновременно.

Программы, использующие AIO, могут отправлять более одного запроса одновременно. Это в основном используется базами данных, например MySQL InnoDB. Большинство программ не используют Linux AIO, потому что он не поддерживает кэширование.

0
27.01.2020, 20:54

Теги

Похожие вопросы