Какое время ожидания записи виртуальной машины должно быть установлено для ноутбука?

Я использую powertop проверить, что моя машина настроена таким образом, чтобы дать мне хорошее время автономной работы. После установки laptop-mode-tools во всех разделах "Tunables" отображается "Good", кроме времени ожидания обратной записи виртуальной машины. На powertop страница, кажется, предполагает, что 1500 (то есть 15 секунд) является хорошим значением. проверка cat /proc/sys/vm/dirty_writeback_centisecs показывает, что мое текущее значение составляет 60000 (т.е. 600 секунд или 10 минут). Я считаю, что большее значение означает более длительное ожидание между записями (что означает менее частое вращение диска). Мне действительно нужно установить время ожидания более десяти минут?

4 ответа

Чем больше значение грязной обратной записи, тем дольше грязные страницы сохраняются в памяти, а затем записываются на диск. Недостатком является то, что это увеличивает возможность потери данных, если вы теряете энергию, так как, вероятно, в памяти будет больше грязных страниц, которые не будут удалены.

На самом деле вам не нужно устанавливать для параметра dirty_writeback timeout более 6000 сантисек, а скорее - меньше. По крайней мере, для Powertop улыбаться: Кажется, Powertop проверяет vm.dirty_writeback = an *exact* value of 1500 csec (15 sec), Вы можете проверить, установив его на это значение, и оглянуться назад на экран powertop. Кроме этого, @Colin Иан Кинг ясно дал понять, что окно с потерей данных становится все более быстрым.

Я просто хочу добавить кое-что к этому на случай, если кто-нибудь столкнется с этим. Несмотря на то, что это немного старше, нам никогда не придется трогать этот параметр, независимо от того, что говорит powertop. Ядро автоматически вносит коррективы для достижения наилучшей производительности, начиная с версии ядра 3.5 с функцией, называемой динамическим регулированием обратной записи. Это позволяет ядру автоматически настраивать параметр vm.dirty_writeback_centisecs в зависимости от доступной системной памяти и типа используемого устройства хранения. Если эта функция включена, ядро ​​попытается сохранить баланс между минимизацией количества грязных данных в памяти и минимизацией количества операций записи на устройство хранения.

Я полагаю, что большее значение означает более длительное ожидание между записями (что означает менее частое вращение диска)

Нет, вы просто откладываете операции записи на диск на 10 минут. Это ничего не даст вам с точки зрения времени автономной работы или уменьшения количества записей SSD.

Можно подумать об этом значении: "Какое самое длинное время (даже время 2), когда я бы хотел, чтобы выполнялась партия дисковых операций".

Если у вас есть приложение, которое на самом деле занимает 10 минут (абсурдно высокое значение для обычных пользователей) записи на диск, например, было бы полезно задержать ввод-вывод, например. множественные записи в один и тот же файл выполняются за одну запись, тогда вы устанавливаете очень большое значение времени ожидания.

tldr; Для 99,9% пользователей рекомендуемое по умолчанию powertop более чем достаточно.

Если вы действительно хотите уменьшить количество записей в SSD, подумайте о том, чтобы поместить части вашей файловой системы в tmpfs. Но это совсем другая тема.

Другие вопросы по тегам