Работает ли SSD TRIM со сценарием «Boot from VHD»?

9

Недавно я приобрел твердотельный накопитель Intel X-25 G2 (160 ГБ) в качестве дополнительного накопителя для моего ноутбука.

Я создал виртуальный диск фиксированного размера (40 ГБ) и установил Windows Server 2008 R2 на этот виртуальный жесткий диск. Теперь я «загружаюсь на VHD».

(Я хочу несколько сред разработки, поэтому для меня лучше использовать отдельные виртуальные жесткие диски.)

Это работает отлично и быстро. Нет претензий.

Просто ноющее чувство. Как работает TRIM в этом сценарии? Могу ли я использовать мой SSD таким образом?

Я не смог найти однозначных ответов через Google. Я запустил «fsutil поведенческий запрос disabledeletenotify», и он вернул «0». Однако это, очевидно, не является окончательным.

Я запустил программу дефрагментации, и кажется, что SSD-накопитель доступен для этой задачи.

Есть:

1) Как я могу определить, работает ли TRIM? 2) Если нет, как включить?


источник
Поскольку я задавал этот вопрос почти 3 года назад, я подумал, что добавлю постскриптум. По сути, мой SSD по-прежнему крепко работает после 2 лет довольно активного использования VHD.

Ответы:

3

В незавершенном документе на сайте Microsoft отмечены новые возможности платформы 8. Они не указывают, работает ли это только на сервере или клиенте:

http://msdn.microsoft.com/en-us/library/hh848053%28v=vs.85%29.aspx

Они также говорят немного о новом формате VHDX, который должен поддерживать TRIM,

http://technet.microsoft.com/en-us/library/hh831446.aspx

Я не могу убедиться, что это работает, потому что сейчас у меня работает w8cp в стандартном формате VHD, поэтому я попытаюсь выполнить чистую переустановку в новом формате VHDX. Если вы не терпеливы, вы можете сделать это самостоятельно и посмотреть удаление файла с помощью procmon (вы должны увидеть несколько определенных вызовов API, см. Подробности ниже)

«Извините, но в качестве механизма предотвращения спама новые пользователи могут публиковать не более двух гиперссылок»: ocztechnologyforum.com/forum/showthread.php?66696-New-FW-Flashing


источник
2

Насколько мне известно, никакие решения для виртуализации пока не поддерживают сообщение ОС в виртуальной машине о том, что она на самом деле находится на SSD (виртуальный диск и контроллер будут выглядеть одинаково для гостевой ОС, будь то диск на основе вращающегося металла, SSD или даже полностью основанный на ОЗУ привод) и перевод команд TRIM из гостевой ОС для исправления команд TRIM относительно главного диска.

В этом отношении вам повезет больше, если использовать виртуальные диски переменного размера (поскольку при их уменьшении пространство, выделенное из файла, будет освобождено кодом файловой системы и будет запрашивать соответствующие команды TRIM), но использование растущих виртуальных дисков имеет производительность сам по себе, так что вам придется провести некоторое исследование, чтобы увидеть, использует ли он больше, чем отсутствие поддержки TRIM для пространства, используемого виртуальным диском фиксированного размера (моя интуиция говорит, что диск фиксированного размера - это способ идти, но я бы сделал несколько тестов производительности, чтобы проверить это).

Дэвид Спиллетт
источник
1

Виртуальная машина имеет виртуальное оборудование и ничего не знает о реальном жестком диске. Это также не должно знать это, поскольку операционная система хоста заботится обо всем. Хотя теоретически это нормально, для SSD это не так.

Файл VHD всегда используется полностью в глазах хоста без свободных мест. Поэтому хост никогда не будет применять TRIM к VHD. Нет технологии, которая позволяла бы гостю и хосту общаться, так как это было бы серьезным нарушением безопасности.

Таким образом, ответ положительный: Вы являетесь пожирание SSD.

Рассматривать:

  1. Поместить VHD на диск без SSD,
  2. Удаление VHD рано или поздно с диска SSD (затем будет применен TRIM),
  3. Использование VHD переменного размера (я сомневаюсь, что это даже отложит проблему, будучи столь же расточительным, что и в отношении TRIM),
  4. Разделение SSD на два раздела и использование программного обеспечения для создания образов дисков для обмена виртуальными машинами во второй раздел или из него (для этого может потребоваться искусное использование продукта для очистки - возможно, использование операционной системы для удаления и повторного создания второго раздела сделает обмануть).
harrymc
источник
2
Спасибо за ваш подробный ответ. Просто чтобы прояснить, я не запускаю виртуальную машину, а фактически загружаю свою физическую машину из файла VHD. В этом случае я считаю, что только управление дисками виртуализировано. Это, вероятно, означает, что ваш совет остается верным, но не могли бы вы подтвердить?