![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1
|
|
![]() Администратор ![]() ![]() ![]() ![]() ![]() Группа: Главные администраторы Сообщений: 14349 Регистрация: 12.10.2007 Из: Twilight Zone Пользователь №: 1 ![]() |
Дошли руки разобраться, почему домашная файловая помойка тормозит, когда общается с новым винтом: периодический бэкап вызывает DoS всех файловых сервисов. Бился над включением AHCI+NCQ, а рано по утру заглянул в SMART к своему диску и обнаружил вот такое:
$ sudo smartctl -a /dev/sda | grep Load_Cycle_Count 193 Load_Cycle_Count 0x0032 158 158 000 Old_age Always - 127583 Раньше думал, что это счётчик интервалов активности винта. Зевая, полез в википедию: Count of load/unload cycles into head landing zone position. The typical lifetime rating for laptop (2.5-in) hard drives is 300,000 to 600,000 load cycles. Some laptop drives are programmed to unload the heads whenever there has not been any activity for about five seconds. Many Linux installations write to the file system a few times a minute in the background. As a result, there may be 100 or more load cycles per hour, and the load cycle rating may be exceeded in less than a year. Чего?! У меня 127 тысяч раз произошла парковка головок? Зевота прекратилась. Кто виноват? Быстрый гуглёж нашёл, что товарищи из WD в серию WD Caviar Green включили супермегаопцию Intelli-Park, которая паркует головки после 8 секунд неактивности. Linux, понятно, откладывает запись буферов на диск на куда большее время: $ cat /proc/sys/vm/dirty_writeback_centisecs 1000 … и получается откровенно гадкая ситуация: t+0 сек. Приложение пишет на диск, ядро кладёт всё в буфер. t+8 сек. Винт: ой, активности нет, головки в landing zone t+10 сек. Ядро: так, пора писать. t+10+ сек. Винт: головки на исходную! Пишем. t+16 сек. Винт: всё, расслабились, головки в landing zone t+20 сек. Ядро: так, опять пора писать. t+20+ сек. Винт: что, уже поспали? Головки в готовность, пишем. .... Тут-то мне и вспомнился щёлкающий шум во время работы, который я списывал на рекалибровку. Луч ненависти инженерам комании WD, луч ненависти маркетологам WD. Что делать? Слухи утверждают, что существует полу-секретная утилита от WD, которая меняет дефолтовый интервал на какой угодно. Называется это чудо WDIDLE3.EXE, работает оно исключительно под DOS, и по разным сведениям, не работает для некоторых WD'шных винтов.
После этих операций Load_Cycle_Count расти перестал. Original source: habrahabr.ru (comments). Читать дальше -------------------- |
|
|
![]() ![]() |
Текстовая версия | Сейчас: 21.4.2025, 14:22 | |
|