Независимо от того, идет ли речь о UEFI, телефонах или твердотельных накопителях, Samsung, очевидно, не особенно хорош в реализации стандартов. К сожалению, несколько лет назад я купил твердотельный накопитель Samsung SSD 840 PRO Series для своего ноутбука, которым я пользуюсь с тех пор (это было до того, как была обнародована вся информация об их нестандартных реализациях). Это действительно хороший SSD, за исключением асинхронного триммера, который не работает должным образом, то есть он удаляет данные, которые он не должен удалять. Из-за этого Linux не использует Trim на нем, чтобы данные людей не терялись (что произошло до того, как они отключили Trim на некоторых моделях Samsung SSD).

Потому что я довольно часто использовал этот SSD: насколько сильно отключенная Trim влияет на способность SSD выравнивать износ?

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

Эта статья в Википедии гласит:

Каждый производитель дисков определяет набор атрибутов и устанавливает пороговые значения, превышающие которые атрибуты не должны проходить при нормальной работе. Каждый атрибут имеет необработанное значение, значение которого целиком зависит от производителя привода (но часто соответствует количеству или физической единице, например градусам Цельсия или секундам), нормализованное значение, которое варьируется от 1 до 253 (где 1 представляет наихудший случай и 253, представляющий лучшее) и наихудшее значение, которое представляет самое низкое зарегистрированное нормализованное значение. Начальное значение атрибутов по умолчанию - 100, но оно может варьироваться в зависимости от производителя.

Прежде всего: насколько уместно это, учитывая, что его заголовок "Известные атрибуты SMART ATA"? Это относится к твердотельным накопителям, которые подключены через SATA?

Почему значения варьируются от 1 до 253? Что с 0, 254 и 255? Используются ли значения выше 100?

SMART-данные моего SSD выглядят так (согласно gnome-disks):

Нет значений больше 100.

У меня много внешних жестких дисков, но только один SSD (который является внутренним), поэтому я не могу сравнить его SMART-данные с данными других SSD, для которых я знаю, что их использование отключено. Но я предполагаю, что необработанное значение уровня износа моего SSD, равное 245, означает, что ячейки памяти SSD были записаны в среднем в 245 раз. Скажите, пожалуйста, правильно ли это, число считываний тоже, просто ли оно в 245 раз превышает указанное пространство (256 ГБ) или указанное пространство + зарезервированное пространство (для замены неисправных частей).

Означает ли нормализованный уровень износа моего SSD, равный 93, срок службы его почти на две трети ({1, ..., 253}) или что он довольно неплохой ({1, ..., 100})?

И последний вопрос: почему Linux отключает Trim вместе с этими твердотельными накопителями, если только асинхронное Trim вызывает потерю данных?

Вывод $ sudo smartctl /dev/sda -a: http://pastebin.com/Prf7NzwN

Связанный вопрос, созданный мной в ответ на обсуждение в комментариях: https://unix.stackexchange.com/questions/333635/enabling-synchronous-trim-only

1 ответ1

0

Чтобы ответить на основной вопрос, да, но ваш диск страдает от неоптимальной производительности. (Я разместил данные SMART в GitHub Gist.)

Ваша статистика SMART показывает, что вы записали 21,5 ТиБ на диск (всего записано 46248065971 LBA, по 512 байт каждый). Это составляет 86 записей на полный диск для записи на хост (при 256 ГБ необработанного NAND). Однако вы упомянули, что базовый NAND диска был записан более 245 раз. Другими словами, диск записал почти в три раза больше данных, которые вы фактически отправили на диск. Это называется усилением записи.

Чтобы объяснить, что происходит, я собираюсь обобщить часть содержания в другом ответе, который я написал. Флеш-память NAND состоит из серии блоков, каждый из которых содержит несколько страниц. Данные могут быть записаны на отдельные страницы, но должны быть стерты целыми блоками, а страницы, содержащие данные, не могут быть переписаны до тех пор, пока не будут стерты. Чтобы избежать ненужного стирания блоков и перезаписи данных, твердотельные накопители распределяют записи по разным блокам и помечают старые данные как недействительные; накопитель пытается избежать стирания блоков, пока все страницы в каждом блоке не будут помечены как недействительные. Это ломается без достаточного количества свободных страниц, и в этом случае привод вынужден стирать блоки, содержащие действительные данные, и перезаписывать эти данные в другом месте, чтобы освободить место для новых данных. Поскольку это означает, что одни и те же данные записываются в базовую NAND более одного раза, это нежелательное поведение называется усилением записи.

Отсутствие TRIM означает, что диск будет обрабатывать удаленные данные как действительные, уменьшая объем свободного пространства, доступного для диска. Диск в конечном итоге ведет себя так, как будто он полностью заполнен, даже если это не так.

Чтобы ответить на ваш вопрос в том виде, в котором он написан, накопитель должен продолжать правильно изнашиваться, распределяя записи по NAND в максимально возможной степени. Зная Samsung, я был бы очень удивлен, если бы их алгоритмы не делали это правильно на полном приводе. Тем не менее, он постоянно переписывает уже записанные данные, что снижает производительность и снижает выносливость. Учитывая, что TRIM недоступен, вам лучше всего предусмотреть избыточное резервирование диска или выделить менее полной (256 ГБ) емкости для разделов (например, 200 ГБ). Тем не менее, вам нужно будет безопасно стереть диск, чтобы это работало, а это значит, что сначала нужно будет выполнить резервное копирование всего, а потом восстановить. Учитывая ограниченную емкость накопителя, я также не уверен, сможете ли вы хоть сколько-нибудь значительно уменьшить размер раздела, не исчерпав себя.


Что касается вашей интерпретации данных SMART:

  • Да, на Samsung и многих других твердотельных накопителях необработанное значение для счетчика выравнивания износа представляет собой среднее число операций записи по всему NAND на диске. Это означает, что NAND-диск вашего диска видел в среднем 245 полных циклов записи. См. Samsung SSD "Wear_Leveling_Count" значение.
    • Это основано на сырой емкости NAND, включая любое свободное место.
    • Чтения не засчитываются в это число (если только SSD не должен перезаписывать данные из-за нарушения чтения).
  • Точный диапазон для нормализованных значений зависит от производителя привода, но на большинстве приводов счетчик уровня износа находится в диапазоне от 0 до 100. По оценкам, ваш накопитель имеет около 93% оставшегося ресурса при записи. Большинство других нормализованных значений на этом диске также находятся в диапазоне от 0 до 100. (NAND на 840 PRO подходит для 3500 циклов записи, а 245 циклов составляют 7% от этой цифры.)
  • Нормализованные значения атрибутов 254 и 255 считаются зарезервированными и не должны появляться ни на одном диске.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .