LINUX.ORG.RU

Увеличится ли ресурс SSD, если использовать128 Гб из 256 Гб

 , , , ,


3

3

Добрый день.

Увеличится ли ресурс SSD, если использовать/разметить только 128 Гб из 256 Гб. То есть допустим SSD, имеет ресурс TWM 150 Тб, если поделить его ресурс в терабайтах на объем, то получается 585.9 циклов перезаписи на ячейку. Но если используемый объем будет 128 Гб, то циклов перезаписи на ячейку будет уже 1171.8. Соответственно меня интересует, если использовать только 128 Гб из 256 Гб, то будут ли механизмы выравнивания износа ячеек самого SSD диска использовать неразмеченные области диска. Увеличит ли это суммарный ресурс как я думаю?

Увеличится ли ресурс SSD, если использовать…

Не факт, что с предложенными квотами (серединка на половинку) будет какое-то отличие от того, если просто оставить несколько неразмечеченных гигабайт.

Сама технология SSD подразумевает, что использование конкретных ячеек не сильно зависит от разметки, разве не так?

vvn_black ★★★★★
()
Ответ на: комментарий от papin-aziat

Ну тут я не согласен. Уже 2 kingston сдохла, один при этом стал жутко сыпаться перед смертью. И 1 samsung evo 860 запорол много файлов (но еще живой), а в его SMART уже ячеек 200-300 переназначено. При этом я не могу сказать что они прям активно использовались, по сути было обычное пользовательское использование.

Timur1992
() автор топика
Ответ на: комментарий от Timur1992

Мне внезапной смерти одного кингстона хватило, чтобы всё понять про SSD. Юзай как попало, но место свободное оставляй. Важные файлы в регулярные бекапы, а систему клонируй, всё. Остальное пустая болтовня, ибо неизвестно что там и когда сломается, а сломается – пофиг, за минуты поставлю в строй компутер.

papin-aziat ★★★★★
()
Ответ на: комментарий от Timur1992

Я тоже вижу ситуацию именно так! Но чтобы в этом убедиться и собрать разные мнения по этой теме я создал эту тему.

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

vaddd ★☆
()

Ты занимаешь ерундой. Используй весь диск.

Но если упорствуешь в своей ереси, то trim сделать не забудь. А то контроллер диска не будет знать где у тебя неиспользуемое пространство. Вот будет умора, если будешь использовать только половину, а контроллер не узнает об этом и диск всё равно сдохнет как обычно.

На самом деле, если ты купил не откровенный хлам, то не нужно ничего делать кроме настройки опций монтирования. А если снищебродил, то диск умрёт в любом случае и очень быстро.

ox55ff ★★★★★
()
Ответ на: комментарий от ox55ff

Я не занимаюсь ерундой, а пытаюсь оптимизировать затраты с сохранение надежности. Диски которые мы покупали вместо kingston и samsung, использовали тип памяти MLC. C MLC проблем по отказу flash не было, 100 дисков за 5 лет - полет нормальный. Но из-за изменение курса рубля и доминирования на рынки памяти TLC, часть моделей с MLC памятью сняли с производства, а остальные подскочили в цене. Вот я и ищу альтернативные конфигураций.

Timur1992
() автор топика
Ответ на: комментарий от papin-aziat

Это когда система твоя и доступна тебе. А во встраиваемом оборудований все немного по-другому. Ты его отдал/продал и оно больше не твое. Диски с MLC память при нашей эксплуатаций показали себя как вечные!!!

Timur1992
() автор топика
Ответ на: комментарий от t184256

В смысле маленькие? Для регистраторов данных самое то объем.

Меня волнует ресурс SSD так как у нас есть гарантия на оборудование, а SSD часть поставляемого оборудования. И мне не хочется через несколько лет заниматься заменой дисков в приборах и писать акты/отчетов по каждому случаю(бюрократия!!!). Поэтому хочу взять SSD с немного избыточной надежностью и закрыть эту тему для себя.

Timur1992
() автор топика
Ответ на: комментарий от papin-aziat

Контроллер сдохнет раньше, чем ресурс, забей и юзай весь диск.

Если разбить диск на 4 раздела по 64гб и потом использовать их поочерёдно, то ресурса должно хватить лет на 50.

По моему норм тема.

utanho ★★★★★
()

На самом деле Вы хотите overprovision не только с точки зрения endurance, но и performance тоже. Погуглите доки от Самсунга - там чуть ли не 50% ускорения обещают (по сравнению с полностью заполненным SSD) если 20% зарезервировано (циферки - на память, не ловите на этом). Ну, и понятно откуда ножки растут: если вкратце - WAF.

bugfixer ★★★★★
()

Диск ничего не знает о разделах и использует все блоки. В теории, чем больше свободного места тем равномернее будет износ. Но никто исходников прошивок не видел, насколько там хорошие алогоритмы выравнивания износа не изучал (в открытом доступе). Если регистратор пишет одним потоком и большими блоками, ИМХО, таким резервированием особо ничего не выиграть, хватит и 10% под резерв, гарантирующий неполное использование объёма. Хотя, может резервирование средствами ФС будет лучше.

С ssd вобще вечная засада, что через месяц-год производитель может внезапно выкатить новую прошивку, которую обязательно нужно накатить, иначе плохо будет. Ставить их в опечатанное устройство та ещё лотерея. Такое и с НЖМД было, но гораздо реже.

mky ★★★★★
()
Ответ на: комментарий от Timur1992

И 1 samsung evo 860 запорол много файлов (но еще живой),

Привет тебе, человек из криокамеры. Срочно обновляй прошивку. Вот прямо сегодня, а не как обычно

https://www.samsung.com/semiconductor/minisite/ssd/download/tools/

apt-get install grub-imageboot
sudo mkdir /boot/images
sudo mv ~/Downloads/Samsung*.iso /boot/images/
sudo update-grub2

перезагружаешься, обновляешь

Уже 2 kingston сдохла

Ничего не скажу, не пользовался. Но прошивку все же проверь

общие рекомендации по ssd/nvme

  • проверить наличие новой прошивки. желательно ещё и загуглить, нет ли проблем для твоей модели
  • включить discard (trim, unmap) на всём пути от ФС до диска (fs, lvm, cryptsetup, libvirt. для рейда тоже что-то было)
  • оставить хоть какое-то разумное место (ну пусть 10 GiB. больше лучше) неразмеченным
router ★★★★★
()
Последнее исправление: router (всего исправлений: 2)
Ответ на: комментарий от mky

Диск ничего не знает о разделах и использует все блоки.

То есть, с точки зрения диска, он ничего не знает о разметке, следовательно варианты оставлять неразмеченные области бесполезны, да?

Как я понял, желательно просто не забивать диск целиком, но оставлять процентов 10-20, а варианты с неразмеченными областями для тех, кто не хочет или не может следить за использованием места на диске (защита от дурака).

Однако возникает вопрос, даже два.

Если диск разбит скажем на EFI, корень и свап, и один из разделов забит под завязку или очень активно используется, то есть – то забит, то очищается, тогда изнашиваются одни и те же ячейки или всё равно контроллер диска как-то всё это распределяет?

И ещё про команду trim. Она ведь работает только со смонтированными разделами и, например, один из разделов забит, но на других места дофига, что тогда происходит, диск использует это место для своих нужд?

papin-aziat ★★★★★
()
Ответ на: комментарий от papin-aziat

То есть, с точки зрения диска, он ничего не знает о разметке, следовательно варианты оставлять неразмеченные области бесполезны, да?

Варианты оставления неразмеченными области не имеют смысла по любому. «However, keep in mind that an SSD functions differently than an HDD, so you will want to create partitions that make sense for how you plan to use the SSD. Partitioning an SSD does not have any negative impact on the SSD, also it won’t give it better performance. If you are using your SSD as your main drive, we recommend creating a single partition to maximize performance. If you are using your SSD for storage only, you may want to create multiple partitions so that you can organize your data more efficiently. Due to the fact that SSDs use memory in order to store data and don’t contain any moving mechanical components. SSDs have nearly the same transfer rate across different memory chips. Unlike conventional hard drives, SSDs will not confine data to a specific area of the drive. So, you do not need to partition an SSD if you simply wish to enhance its performance.»

Как я понял, желательно просто не забивать диск целиком, но оставлять процентов 10-20

В первую очередь имеет значение количество перезаписей. И, судя по статистике и по здравому смыслу, чем будет этого пустого места больше - тем количество перезаписей меньше. В конце концов, не меньшее значение имеет логика работы системы с дисковым пространством.

Из майкрософтовского исследования:

«Figure 12 shows the AFRs as a function of the space that is utilized (written) on the SSD and HDD on a daily basis. In general, higher SSD space correlates with an increase in SSD AFR. This is expected, as higher space utilization typ- ically indicates more valid data written to the SSDs. Apart from P/E wear issues due to high write traffic, higher uti- lization translates to lower free space, leading to higher in- duced writes, garbage collection, wear leveling and their cor- responding P/E wear.»

Не очень понятно, как они исключают влияние перезаписанного объема и исключают ли вообще. Но, судя по графику, существенный рост AFR начинается примерно от 40% загрузки диска. К сожалению, на графике нет данных для большей загрузки. Интересно, существует ли на больших ДЦ какое-то ограничение по объему заполнения SSD? И если да, то какое?

Кроме того, большая загрузка объема SSD ведет к ухудшению других эксплуатационных параметров:

https://www.anandtech.com/show/14962/the-toshiba-kioxia-bg4-1tb-ssd-review/4

что в свою очередь не может не приводить к повышенному износу.

vaddd ★☆
()
Ответ на: комментарий от papin-aziat

То есть, с точки зрения диска, он ничего не знает о разметке, следовательно варианты оставлять неразмеченные области бесполезны, да?

Какой-то неправильный вывод. Если контроллер знает, что те или иные области диска (группы ячеек) не задействованы (т.е. по ним прошлись trim, blkdiscard или secure erase и после этого туда ничего не писали), то неважно, на размеченной области диска или нет, эти ячейки можно использовать для выравнивания износа, сборки мусора и прочих нужных контроллеру операций.

Неразмеченная область имеет преимущество в том, что её не так просто забить данными (в сравнении со свободным местом в файловой системе).

greenman ★★★★★
()
Последнее исправление: greenman (всего исправлений: 1)
Ответ на: комментарий от vaddd

Варианты оставления неразмеченными области не имеют смысла по любому.

И далее «в подтверждение» длинная цитата, которая относится только к разбиению диска на разделы, и ни слова про неразмеченную область.

greenman ★★★★★
()
Последнее исправление: greenman (всего исправлений: 1)
Ответ на: комментарий от greenman

и ни слова про неразмеченную область.

Это и есть фраза о том, что для контроллера не существует понятия «неразмеченная область». Он работает по своей логике, человек ему не указ и запретить ему использовать какие-то области не может.

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

vaddd ★☆
()
Ответ на: комментарий от papin-aziat

варианты оставлять неразмеченные области бесполезны

Почему же, это гарантия, что не забьёшь диск данными под завязку. И есть мнение (по-моему, подтверждённое тестами), что при заполнении диска данными по размеру близко к номинальному начинается существенная просадка по скоростям.

vvn_black ★★★★★
()
Последнее исправление: vvn_black (всего исправлений: 1)
Ответ на: комментарий от greenman

Я пытаюсь понять почему вы думаете, что существует разница между размеченной и неразмеченной областью - вот из-за этого:

И далее «в подтверждение» длинная цитата, которая относится только к разбиению диска на разделы, и ни слова про неразмеченную область.

Контроллеру (и массиву ячеек памяти) безразлично - разметили ли вы область или нет. Разбили ли вы диск на разделы или нет, оставили ли «свободное место» вне разделов или нет, он будет использовать всю память более-менее равномерно. Видимо вы имеете в виду «защиту от дурака», принудительно спасающую диск от полного забивания данными.

vaddd ★☆
()
Ответ на: комментарий от vaddd

Ок, спасибо. Всё же хочется ясности по разметке и забитому пространству на размеченной области. Ещё раз сформулирую. Вот у тебя разбит диск на три части, где одна fat32, другая ext4 и третья swap.

На ext4 всегда полно свободного места. На область с fat32, допустим, постоянно под завязку набиваются данные, они статичные, но одно удаляется – другое кладётся, где-то раз в неделю. В swap более динамичная ситуация, туда вообще может постоянно что-то писаться и очищаться, то есть при активной работе через него могут прогоняться, допустим, .5-3 гигабайта данных в сутки.

Трим по умолчанию срабатывает один раз в неделю (впрочем, после манипуляций с крупными данными всегда можно скомандовать вручную).

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

papin-aziat ★★★★★
()
Ответ на: комментарий от greenman

Если контроллер знает, что те или иные области диска (группы ячеек) не задействованы (т.е. по ним прошлись trim, blkdiscard или secure erase и после этого туда ничего не писали), то неважно, на размеченной области диска или нет, эти ячейки можно использовать для выравнивания износа, сборки мусора и прочих нужных контроллеру операций.

Ага, значит (вопрос постом выше) в случае очень активного свопинга диску скоро придёт конец? Или размер swap раздела – это абстракция и через его скажем пару гигабайт можно целыми днями гонять десятки гигабайт, при условии, что на других разделах полно свободного места?

papin-aziat ★★★★★
()
Ответ на: комментарий от papin-aziat

Будут изнашиваться одни и те же ячейки памяти на диске из-за скажем неудачной разметки

нет

или всё-таки эти файловые системы и их размеры для диска чистая абстракция, а он тупо работает со всем своим объёмом в целом и использует любые доступные

да

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

vaddd ★☆
()
Ответ на: комментарий от vaddd

нет

Интересно. То есть я скажем выделил 500 мегов на своп раздел, гонял целый день компиляния и прогнал через своп 10 гигов. При этом ни разу не сработала команда trim. На самом деле диск гонял эти данные равномерно по всему диску?

То есть это для ОС у меня маленький своп, а, с учётом текучки данных, на самом деле почти целый диск получается?

papin-aziat ★★★★★
()
Ответ на: комментарий от papin-aziat

Контроллер ничего не знает про разделы. У него есть массив страниц памяти и таблица трансляции.

Если в массиве есть свободные страницы, то при изменении он записывает изменённую страницу в новое место, а старую ставит в очередь на стирание.

Если от ОС прилетает информации, что вот такие-то блоки освободились, то контроллер смотрит в таблицу трансляции и ставит блоки в очередь на стирание.

Если swap часто используется, то он будет так и так равномерно изнашивать весь диск за счёт алгоритма записи. Ну и swap обычно пишется большими кусками, так что усиление записи сильно влиять не будет при этом.

Radjah ★★★★★
()
Ответ на: комментарий от papin-aziat

На самом деле диск гонял эти данные равномерно по всему диску?

Скорее всего да. Во всяком случае все изготовители дружно так утверждают, технология wear leveling сейчас должна быть у всех

https://en.wikipedia.org/wiki/Wear_leveling

Но как именно она работает и когда - неизвестно ) Вполне может быть, что ваши 10 гигов ее даже почесаться не заставили за несерьезностью объема

vaddd ★☆
()
Ответ на: комментарий от papin-aziat

при условии, что на других разделах полно свободного мест

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

При работе SSD контроллер постоянно перегруппировывает уже записанные данные, чтобы образовались пустые блоки, которые можно стереть. И фактический объём записи на флеш становится больше, чем переданный по интерфейсу от компа, избыточная запись получается.

А если количество активно записываемых секторов станет равно количеству свободных блоков записи, то каждый сектор можно писать в свой блок, как заполнился — стирать. И избыточной записи нет. Хотя на самом деле есть, так как контроллер стремится выровнять изос, то есть сделать всем блокам одинаковое количество стираний.

Ну и отдельная тема это MLC флеш в режиме SLC (кеша), там каждая прошивка имеет свои алгоритмы, но вполне возможно, когда много свободных блоков, что будет меньше перезаписи на преобразовании SLC кеш -> MLC. Здесь под MLC я подразумеваю всё, что не SLC. Сраная терминология, нет, чтобы флеш с двумя битами на ячейку назвать DLC (double) или ещё как, называли его Multi...

Не знаю, акцентировалось в этом треде на этом внимание, но обсуждая резервирование места за счёт создания раздела размером меньше, чем объём накопителя, подразумевается, что неразмеченное место свободно для накопителя. То есть либо сначала secure erase, а потом создавать раздел, либо создать два раздела, потом на второй сделать blkdiscard, а потом его удалить. А то может быть, что сначала забьют мусором весь SSD для теста, а потом изменят размер раздела. В таком случае в неразмеченой области SSD так и будет хранить мусор и никакой пользы не будет.

mky ★★★★★
()
Ответ на: комментарий от papin-aziat

если оставлять процентов 10 свободного места.

Недавно видел статью - какие-то умельцы вскрыли немалое количество разных моделей от разных производителей и сравнили физическую память (по чипам) с доступной юзеру. Получилось (точных цифр не помню) от 15 до 30%. То есть вроде как у контроллера уже есть этот самый резерв, да еще немаленький.

Помимо этого производители прямым текстом рекомендуют оставлять свободное место. Получается в сумме уже около 50%. На таком пространстве контроллеру есть где развернуться и без вашего участия )

vaddd ★☆
()
Ответ на: комментарий от mky

Не знаю, акцентировалось в этом треде на этом внимание, но обсуждая резервирование места за счёт создания раздела размером меньше, чем объём накопителя, подразумевается, что неразмеченное место свободно для накопителя. То есть либо сначала secure erase, а потом создавать раздел, либо создать два раздела, потом на второй сделать blkdiscard, а потом его удалить. А то может быть, что сначала забьют мусором весь SSD для теста, а потом изменят размер раздела. В таком случае в неразмеченой области SSD так и будет хранить мусор и никакой пользы не будет.

Да, акцентировалось. Но имеет ли смысл, кроме защиты от дурака? Вроде есть согласие, что нет.

blkdiscard

Я теперь стараюсь не забывать делать эту команду, когда разворачиваю клон диска на диск. Наверное этого хватит.

А то может быть, что сначала забьют мусором весь SSD для теста, а потом изменят размер раздела. В таком случае в неразмеченой области SSD так и будет хранить мусор и никакой пользы не будет.

То есть простые передвижения разделов с помощью gparted не очень хорошо? Так ведь потом все равно тримом пройдусь, разве не достаточно?

papin-aziat ★★★★★
()
Ответ на: комментарий от mky

В таком случае в неразмеченой области SSD так и будет хранить мусор и никакой пользы не будет.

Не совсем понятно - почему контроллер не может перемещать данные, а должен хранить их на одном месте?

vaddd ★☆
()