Проблема в неуёмном размере writeback-кеша. Система набивает кеш так
быстро, как может, а потом медленно скидывает его на устройство. Как оно
влияет на другие программы - надо смотреть. Либо они не могут добраться
до дискового устройства, либо управление памятью всё тормозит.
Возможно, если поставить sysctl vm.dirty_background_bytes=33554432 (или
другое разумное число), то станет легче. Эта переменная контролирует как
много можно положить в writeback до того, как начинать запись на устройство.
Цитата из доков:
dirty_background_bytes
Contains the amount of dirty memory at which the background kernel
flusher threads will start writeback.
Note: dirty_background_bytes is the counterpart of dirty_background_ratio. Only
one of them may be specified at a time. When one sysctl is written it is
immediately taken into account to evaluate the dirty memory limits and the
other appears as 0 when read.
On 11/07/18 15:15, Евгений Золотов wrote:
Друзья, есть глупая проблема. На одной машине два Дебиана: 32-
(ставил лет пять назад) и 64-битный (ставил весной). Во время записи
длинных файлов на USB-флэшку в 64-битном все приложения начинают
тормозить, даже курсор рывками перемещается. В 32-битном такой
проблемы нет. Куда посмотреть?
Скорость записи на флэшку там и там одинакова. В dmesg ничего
криминального не вижу. Переменной
/proc/sys/kernel/sched_granularity_ns нет.
Смутно вспоминаю, что когда-то решал это переключением scheduler с
режима server в режим desktop при компиляции ядра. Но сейчас
перекомпилировать бы не хотелось..
Буду рад любым идеям. Спасибо!
С уважением, Евгений.