Оптимизация Windows для использования SSD диска: мифы и реальностьИсточник: habrahabr alan008
Когда весь интернет пестрит холиварами на тему "SSD ненадежны" и "SSD настолько быстрые, что я больше никогда не буду работать с HDD", думаю самое время внести немного ясности в то море противоречевой информации о самих SSD и о настройке Windows для работы с ними. Кто заинтересовался, прошу под кат.
С этого момента можно было просто начать пользоваться супер быстрым диском и радоваться жизни, но меня не покидало параноидальное чувство, что мой SSD быстро сломается из-за частых перезаписей. Действительно, ограниченное количество циклов перезаписи SSD - это пока еще не миф. Но все уже знают, что даже ресурс в 10000 перезаписей - это очень и очень много при объеме диска в 120 Gb. В зависимости от контроллера SSD также может применять различные внутренние технологии выравнивания износа, релокации данных из одного места в другое, сжатия записываемых данных (актуально для контроллеров SandForce) - диск старается изо всех сил, чтобы работать быстро и долго :) Как либо повлиять на эту внутреннюю логику практически невозможно (разве что обновлением прошивки), поэтому при выборе SSD под какие-то особые задачи нужно искать информацию по логике работы его контроллера. Для тех, кто особо заботится о диске и бережет его, в интернете имеется масса советов, как снизить нагрузку на диск по записи со стороны операционной системы. Эти советы можно разделить на полезные, вредные и спорные.
1) Перенос каталога для временных файлов на обычный (HDD) дискПути к каталогам TEMP находятся тут: Компьютер - Свойства - Дополнительные параметры системы - вкладка Дополнительно - Переменные среды - TMP и TEMP (для текущего пользователя и общие). Кто-то советует переносить Temp на RAMDisk, но это скорее вредный совет. Связано это с тем, что некоторые программы (в т.ч. апдейты) пишут данные во временный каталог, затем отправляют компьютер в ребут, а затем ожидают, что данные никуда не делись за это время. А RAMDisk по умолчанию очищается при перезагрузке. Но даже если ваш RAMDisk поддерживает сохранение данных в образ и восстановление после перезагрузки, это тоже не панацея, т.к. возможна ситуация, при которой служба RAMDisk'а просто не успеет запуститься и проинициализироваться к тому моменту, как программы начнут обращаться к временному каталогу.
2) Отключение гибернацииЭто довольно странный совет. С одной стороны, отключение гибернации позволяет избавиться от файла hiberfil.sys, размер которого равен объему оперативной памяти, а место на SSD нам особенно дорого. Также при каждой гибернации на SSD пишется относительно большой объем данных, что "ведет к износу и бла-бла-бла-бла"… Апологеты данного совета пишут мол "зачем вам гибернация, ведь с SSD система и так стартует за несколько секунд". Но лично мне гибернация нужна не ради быстрого старта, а чтобы не закрывать (и не открывать потом заново) чертову кучу приложений, которыми я постоянно пользуюсь, так что целесообразность отключения гибернации находится под большим вопросом. Я с радостью переместил бы файл hiberfil.sys на другой диск (на HDD), но в силу системных ограничений сделать это невозможно.
3) Отключение защиты системы.Компьютер - Свойства - Защита системы - вкладка Защита системы - Настроить - Отключить защиту системы. Сделать это можно, если вы пользуетесь хоть какими-то другими средствами резервного копирования системы. В противном случае есть большой риск получить нерабочую систему в случае каких-то сбоев.
4) Отключение файла подкачки.Этот совет вызывает самые бурные споры и даже от Microsoft не удалось добиться внятных разъяснений. Я считаю данный совет вредным и рекомендую переносить файл подкачки на обычный (HDD) диск (но ни в коем случае не на RAMDisk :), почему, даже пояснять не буду - эту информацию легко найти в сети). Полностью отключать файл подкачки вредно со следующей точки зрения. Некоторые "шибко умные" программы (например, MS SQL Server) резервируют себе виртуальное адресное пространство в очень больших количествах (про запас). Зарезервированная память не показывается в диспетчере задач, ее можно увидеть например в Process Explorer, включив отображение колонки "Process Memory - Virtual Size". При наличии файла подкачки система резервирует память в нем (т.е. некий диапазон объявляется недоступным для использования другими приложениями). При отсутствии файла подкачки резервирование происходит непосредственно в оперативной памяти. Если кто-то сможет прояснить в комментариях (со ссылками на достоверные источники), как именно это влияет на работу других программ и производительность, буду очень благодарен.
5) Отключение Prefetch, ReadyBoot, и Superfetch.5.1. Prefetch - это технология ускорения загрузки системы и приложений за счет упреждающего чтения данных с диска. Она актуальна только для медленных носителей. Поскольку с Random reads у SSD все в порядке, Prefetch можно безболезненно отключать. Служебные данные Prefetcher хранит в C:\Windows\Prefetch. Для отключения Prefetch нужно изменить на 0 значение параметра Enable Prefetcher в ключе реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters. 5.2 ReadyBoot (не путать с ReadyBoost) - это дополнение к Prefetch, которое логгирует процесс загрузки для определения порядка и состава требуемых при загрузке данных и на основе этих логов подготавливает требуемые данные для ускорения процесса загрузки. 5.3 Superfetch - это технология предзагрузки часто исполняемых программ в оперативную память. Отключать его не имеет смысла, т.к. Superfetch не приводит к записи на диск.
6) Отключение индексацииВ свойствах диска можно убрать галку "Разрешить индексировать содержимое файлов на этом диске в дополнение к свойствам файлов". Это может снизить размер индексов, которые строит индексатор Windows, т.е. снизить нагрузку по записи на SSD. Сами индексы лежат в C:\ProgramData\Microsoft\Search Также можно полноcтью отключить индексатор, отключив службу Windows Search.
7) Перенос кэшей приложений на RAMDisk.Под приложениями здесь имеются в виду в основном браузеры, т.к. именно они активно используют кэш посещенных страниц. Переносить этот кэш на HDD было бы довольно глупо, т.к. нам же нужно ускорение! А поэтому вполне хорошим решением является вынесение этих кэшей на небольшой (например, 1 Гб) RAMDisk (лично я использую AMD Radeon RAMDisk, правда несмотря на громкое название это продукт фирмы Dataram). У каждого браузера свой способ указания местоположения кэша, эту информацию легко найти в сети.
8) Отключение usn журнала файловой системы NTFS.Один из спорных и противоречивых советов. С одной стороны, у меня не получилось отключить usn журнал для системного раздела. Также usn журнал используется некоторыми программами (напр., Everything) для отслеживания измененных файлов. Если кто-то может прокомментировать ситуацию насчет полезности отключения usn, буду очень благодарен.
UPD 9) Отключение дефрагментации дискаWindows 7 должна сама отключать дефрагментацию для SSD-дисков, поэтому ничего настраивать руками не нужно. Выводы: Другие идеи и советы крайне приветствуются! Надеюсь, вместе мы сможет разграничить их на полезные и вредные :) |