Прежде всего, давайте начнем с понимания того, что именно приводит к снижению производительности. Не зная этого, многие люди предложат неадекватные решения (как я уже вижу, что происходит). Суть всего этого затруднительного положения в основном сводится к следующему факту, цитируемому из Википедии. Помните это, это важно:
При использовании флэш-памяти NAND операции чтения и программирования должны выполняться постранично, а разблокировка и стирание должны выполняться блочно.
Твердотельные накопители состоят из NAND-вспышки, а флэш-память состоит из "блоков". Каждый блок содержит много "страниц". Для простоты давайте представим, что мы только что приобрели новый блестящий SSD, который содержит колоссальный блок памяти, и этот блок состоит из 4 пустых страниц.
Для ясности я различаю пустые страницы, используемые страницы и удаленные страницы с помощью ∅, 1 и X. Главное, что между ними есть разница с точки зрения контроллеров! Это не так просто, как 1 и 0. Итак, для начала, страницы на нашем новом диске выглядят так:
∅, ∅, ∅, ∅ (все пусто)
Теперь мы переходим к записи некоторых данных на диск, и в итоге они сохраняются на этой первой странице, таким образом:
1, ∅, ∅, ∅
Затем мы записываем немного больше данных, только на этот раз достаточно, чтобы для этого потребовалось две страницы, и в итоге они были сохранены на 2-й и 3-й странице:
1, 1, 1, ∅
У нас заканчивается пространство! Мы решили, что нам не нужны начальные данные, которые мы написали, поэтому давайте удалим их, чтобы освободить место.
X, 1, 1, ∅
Наконец, у нас есть еще один большой набор данных, который нам нужно сохранить, который будет занимать оставшиеся две страницы. ЭТО ГДЕ ЭФФЕКТИВНОСТЬ ХИТ ПРОИСХОДИТ В ПРИВОДАХ БЕЗ ТРИМА !! Переходя от нашего последнего состояния к этому:
1, 1, 1, 1
... требует больше работы, чем большинство людей понимают. Опять же, это связано с тем, что флэш-память может стираться только блочным способом, а не постраничным, что в точности и требует последний переход, описанный выше. Отличающим TRIM и не-TRIM на основе SSD - х, когда выполняется следующая работа!
Поскольку нам нужно использовать пустую страницу и удаленную страницу, SSD должен сначала прочитать содержимое всего блока в некоторое внешнее хранилище / память, стереть исходный блок, изменить содержимое, а затем записать это содержимое обратно в блок. Это не так просто, как "запись", вместо этого он теперь стал «читать-стирать-писать». Это большое изменение, и для того, чтобы это произошло, когда мы пишем много данных, вероятно, самое неподходящее время для этого. Этого можно было бы избежать, если бы эта "удаленная" страница была восстановлена заблаговременно, что и предназначено для TRIM. С TRIM SSD либо восстанавливает наши удаленные страницы сразу после удаления, либо в другое удобное время, которое алгоритмы TRIM сочтут целесообразным. Важной частью является то, что с TRIM этого не происходит, когда мы находимся в середине записи!
Без TRIM мы, в конечном счете, не сможем избежать описанного выше сценария, так как заполняем наши диски данными. К счастью, некоторые новые твердотельные накопители выходят за рамки просто TRIM и фактически делают то же самое, что и TRIM в фоновом режиме на аппаратном уровне без необходимых команд ATA (некоторые называют это сборкой мусора). Но для тех из нас, кому не повезло, что их тоже нет, важно знать, что записи нулей на весь диск недостаточно для восстановления первоначальной производительности !!!!! Запись всех нулей на диск не указывает контроллеру, что страница во флэш-памяти свободна для записи. Единственный способ сделать это на диске, который не поддерживает TRIM, - это вызвать на диске команду безопасного стирания ATA с помощью такого инструмента, как HDDErase (через Wayback Machine).
Я полагаю, что были некоторые ранние SSD, которые поддерживали TRIM только после удаления разделов или при таких вещах, как "очистка диска в Windows 7", а не при удалении отдельных файлов. Это может быть причиной того, что старый диск восстанавливал производительность при выполнении этой команды. Это кажется мне немного туманным ...
Большая часть моих знаний о твердотельных накопителях и аппаратном обеспечении / гаджетах в целом исходит от anandtech.com. Я думал, что у него была отличная рецензия, объясняющая все это, но я не могу ее найти!