Я использую Debian 8.0 x64 с 72 ГБ ОЗУ и 4 дисками, настроенными как программный RAID 0.
Linux s1 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1 (2015-05-24) x86_64 GNU/Linux
Я пробовал установить грязные страницы на 2 ГБ кэша перед фактической записью. Я также пробовал установить настройки "dirty_ratio" и "dirty_background_ratio" на использование 50% ОЗУ, но это тоже не сработало. Демон pdflush должен запускаться каждую минуту, а время истечения для грязных страниц было установлено на 10 минут.
Я проверил дисковый ввод-вывод с помощью "iotop", и он показал высокую активность записи на диск. Также "cat /proc/meminfo" показал, что значение "Dirty" становится меньше (вероятно, из-за записи). Перед проверкой я запустил "sync" и "drop_caches". Я протестировал с помощью команды "dd", записав файл нулей размером 1 ГБ.
- Вот настройки:
эхо 0 > /proc/sys/vm/dirty_background_ratio
эхо 2147483648 > /proc/sys/vm/dirty_background_bytes
эхо 0 > /proc/sys/vm/dirty_ratio
эхо 2147483648 > /proc/sys/vm/dirty_bytes
эхо 6000 > /proc/sys/vm/dirty_writeback_centisecs
эхо 30000 > /proc/sys/vm/dirty_expire_centisecs
- Варианты крепления:
/dev/md0 на /test тип ext4 (rw,noatime,nodiratime,nobarrier,stripe=512)
Предложения?
решение1
Попробуйте увеличить md/stripe_cache_size здесь, файл, который вам нужно создать
#/etc/udev/rules.d/83-md-stripe-cache.rules
KERNEL=="md*", ACTION=="add", TEST=="md/stripe_cache_size", ATTR{md/stripe_cache_size}="8192"
У меня это сработало на Raid-6
И я предлагаю вам уменьшить грязный коэффициент, потому что это вызвало у меня проблемы на системе x64. Я использую эти настройки.
добавить в /etc/sysctl.conf
vm.dirty_bytes = 16777216 #16Mb
vm.dirty_background_bytes = 835584 #mb
решение2
Не используйте dd
для этого тестирования. Используйте другие команды, например, cp
и вы увидите, что ваш кэш записи работает нормально.