Тести чіткі: Твердотільні накопичувачі сповільнюйте, коли ви їх заповнюєте. Наповніть твердотільний накопичувач майже до ємності, і його ефективність запису різко зменшиться. Причина в тому, як працюють твердотільні накопичувачі та накопичувач NAND Flash.
Заповнення накопичувача ємністю речі, яких ви ніколи не повинні робити з твердотільним накопичувачем . Майже повний твердотільний накопичувач матиме набагато повільніші операції запису, уповільнюючи роботу комп'ютера.
Порожні блоки та частково заповнені блоки
Коли ви пишете файл на твердотільний накопичувач, він шукає порожні блоки та заповнює їх. Запис у порожній блок - це найшвидша операція запису. Ось чому нові операційні системи (Windows 7 та новіші версії) підтримують функцію TRIM, яка автоматично видаляє дані файлу з твердотільного накопичувача, як тільки ви видаляєте файл у своїй операційній системі. Це працює інакше, ніж магнітні жорсткі диски, де біти видалених файлів сидять на жорсткому диску .
Вони не сидять на твердотільному накопичувачі - TRIM забезпечує спорожнення блоку, щоб SSD міг швидко записувати нові дані в порожній блок у майбутньому. Запис над уже записаним сектором відбувається так само швидко, як запис у порожній сектор на механічному жорсткому диску, але твердотільний накопичувач повинен стерти блок перед записом на нього.
Флеш-пам’ять NAND записує дані на сторінки розміром 4 КБ усередині блоків по 256 Кб. Щоб додати додаткові сторінки до частково заповненого блоку, твердотільний накопичувач повинен стерти весь блок, перш ніж записувати назад дані до нього.
У міру заповнення твердотільного накопичувача доступно все менше порожніх блоків. На їх місці частково заповнені блоки. Твердотільний накопичувач не може просто записати нові дані в ці частково заповнені блоки - це призведе до стирання наявних даних. Замість простої операції запису твердотільний накопичувач повинен зчитувати значення блоку в кеш-пам’яті, модифікувати значення за допомогою нових даних, а потім записати його назад. Майте на увазі, що написання файлу, швидше за все, передбачає запис у багато блоків, тому це може спричинити значну додаткову затримку.
TRIM не консолідує частково заповнені блоки
Якщо ви заповнили накопичувач до ємності або майже до ємності, швидше за все, після видалення файлів у вас з’явиться багато частково заповнених блоків. Команда TRIM просто спрямовує твердотільний накопичувач на видалення даних файлу при видаленні файлу. Це не змушує привід виконувати будь-які операції очищення.
Іншими словами, заповніть твердотільний накопичувач перед тим, як видаляти файли, і, ймовірно, у вас вийде багато частково заповнених блоків. Привід не змусить себе консолідувати ці частково заповнені блоки в повні блоки, звільняючи порожні блоки. Привід все ще буде заповнений частково заповненими блоками, а продуктивність запису буде погіршена.
Надмірне забезпечення та вивезення сміття
Щоб запобігти заповненню споживачами твердотільних накопичувачів і закінченню серйозно погіршуючи продуктивність, виробники твердотільних накопичувачів намагаються протистояти цьому.
Твердотільні накопичувачі споживчого класу часто виділяють близько 7% загальної флеш-пам’яті та роблять її недоступною для користувача. Це називається "надмірним забезпеченням" - додаткове обладнання для зберігання додається до накопичувача, але не відображається комп'ютеру як доступне сховище, яке він може використовувати. Запасна площа гарантує, що накопичувач ніколи не може бути повністю заповненим - завжди буде деяка запасна ємність, яка допоможе підтримувати стабільність продуктивності запису.
Кожен контролер твердотільного накопичувача має алгоритм збору сміття, який намагається пом’якшити цю проблему. Коли накопичувач заповниться, він буде шукати частково заповнені блоки і почне їх консолідувати, звільняючи якомога більше порожніх блоків. Різні твердотільні накопичувачі виконують ці операції в різний час і пороги - це залежить від контролера приводу.
Порівняльні докази
Anandtech виконала різноманітні еталони з різними накопичувачами, щоб встановити взаємозв'язок між запасною площею твердотільного накопичувача та стабільністю продуктивності операції запису. Заправляючи порожній диск, вони виявили високу продуктивність запису дуже рано в процесі і значне падіння, оскільки операції запису продовжували заповнювати диск.
Виділення більше вільної площі на накопичувачах допомогло зберегти стабільність продуктивності, оскільки забезпечувало, щоб накопичувач завжди мав достатньо готових порожніх блоків.
Вони виявили, що "мінімальна продуктивність значно покращується, коли ви досягнете 25% запасної площі для цих [consumer] дисків". Їх останньою рекомендацією було “планувати використовувати лише близько 75% потужності [your drive’s], якщо ви хочете отримати хороший баланс між стабільністю продуктивності та потужністю”.
Якщо у вас твердотільний накопичувач, вам слід намагатись уникати використання більше 75% його ємності. Придбайте більший диск із більшим обсягом пам’яті, ніж вам потрібно, і ви гарантуєте, що у вас завжди буде стабільна продуктивність запису. На щастя, твердотільні накопичувачі поступово стають набагато дешевшими, тому це не так дорого, як колись.
Кредит зображення: Сортувальник музики на Wikimedia Commons , Саймон Вюлхорст на Flickr