У меня есть куча коробок centos 5 с дисками Intel X-25 (x25-m в dev, x25-e в prod, я думаю). Мы наблюдаем серьезное снижение производительности диска на одном из наших модулей для разработчиков (который легко выполняет 5+ ГБ записи каждый день, то есть мы записываем данные всего диска несколько раз в месяц).
Рассматриваемая коробка:
В Википедии упоминается, что более новые версии hdparm (которые не включает centos5) могут массово ОБРЕЗАТЬ свободные блоки. Эта утилита также кажется потенциально полезной: http://blog.patshead.com/2009/12/a-quick-and-dirty-wipersh-fix-for-intel-x25-m.html
Производительность записи на диск упала до <1 МБ / сек при копировании каталога размером 300 мегабайт в этой системе примерно месяц назад - раньше она могла выполнять ту же операцию копирования как минимум в 5 раз быстрее.
Что я могу сделать, чтобы восстановить производительность этой системы?
Запуск виртуальной машины с высокой скоростью записи на SSD и особенно на виртуальный диск кажется мне удивительной проблемой (это эвфемизм для чего-то менее комплиментарного).
Основные вещи, которые могли пойти не так:
Использование разреженного «растущего» виртуального диска.
Использование журнальной файловой системы (плохие новости для SSD).
Крайняя фрагментация файловой системы.
Высокая скорость обновления метаданных (например, отсутствие noatime).
Выравнивание файловой системы (больше, чем выравнивание разделов) как для реальной файловой системы, так и для виртуальной файловой системы.
Слишком маленький буферный кеш и слишком частое использование «синхронизации» приложением.
Небольшие записи (менее 256 КБ).
Кстати, большинство SSD моделировать 4 КиБ записывает, но размер физической записи (фактического стирания) обычно составляет от 256 КБ до 1 МБ.
Если предположить, что приложение так много записывает на диск, оно обновляет множество мелких записей на нем, и вся настройка системы и дизайн приложения для этого не подходят.
Правильно ли выровнены ваши перегородки? Большинство твердотельных накопителей используют блоки размером 4 КБ, что может отрицательно сказаться на производительности, если разделы начинаются с границы по умолчанию 31,5 КБ (63 блока).