Reperele sunt clare: Unități în stare solidă încetiniți în timp ce le umpleți. Umpleți unitatea SSD până la capacitate redusă, iar performanța la scriere va scădea dramatic. Motivul pentru care rezidă în modul în care funcționează SSD-urile și stocarea NAND Flash.
Umplerea unității la capacitate este una dintre lucruri pe care nu trebuie să le faceți niciodată cu o unitate solid-state . O unitate SSD aproape completă va avea operațiuni de scriere mult mai lente, încetinind computerul.
Blocuri goale și blocuri parțial umplute
Când scrieți un fișier pe unitatea SSD, acesta caută blocuri goale și le umple. Scrierea într-un bloc gol este cea mai rapidă operație de scriere posibilă. De aceea, noile sisteme de operare (Windows 7 și versiuni ulterioare) acceptă funcția TRIM, care șterge automat datele unui fișier de pe unitatea SSD imediat ce ștergeți fișierul din sistemul dvs. de operare. Acest lucru funcționează diferit de discurile magnetice, unde bucăți de fișiere șterse stau pe hard disk .
Nu stau pe o unitate solid-state - TRIM se asigură că blocul este golit, astfel încât SSD să poată scrie rapid date noi în blocul gol în viitor. Scrierea pe un sector deja scris este la fel de rapidă ca scrierea pe un sector gol pe un hard disk tehnic, dar o unitate solid-state trebuie să șteargă un bloc înainte de a scrie pe acesta.
Memoria Flash NAND scrie date în pagini de 4 KB în blocuri de 256 KB. Pentru a adăuga pagini suplimentare la un bloc parțial umplut, unitatea în stare solidă trebuie să șteargă întregul bloc înainte de a scrie înapoi datele acestuia.
Pe măsură ce unitatea dvs. în stare solidă se umple, sunt disponibile din ce în ce mai puține blocuri goale. În locul lor sunt blocuri parțial umplute. Unitatea în stare solidă nu poate scrie doar noile date în aceste blocuri parțial umplute - ceea ce ar șterge datele existente. În loc de o operație de scriere simplă, unitatea SSD trebuie să citească valoarea blocului în memoria cache, să modifice valoarea cu noile date și apoi să o scrie înapoi. Rețineți că scrierea unui fișier va implica probabil scrierea în mai multe blocuri, astfel încât acest lucru poate introduce o cantitate semnificativă de întârziere suplimentară.
TRIM nu consolidează blocurile umplute parțial
Dacă umpleți o unitate până la capacitate sau aproape de capacitate, este probabil că veți ajunge cu multe blocuri parțial umplute după ștergerea fișierelor. Comanda TRIM direcționează doar o unitate solid-state pentru a elimina datele fișierului atunci când fișierul este șters. Nu forțează unitatea să efectueze nicio operație de curățare.
Cu alte cuvinte, umpleți o unitate SSD până la capacitate înainte de a șterge fișiere și veți ajunge probabil la multe blocuri parțial umplute. Unitatea nu va ieși din drum pentru a consolida aceste blocuri parțial umplute în blocuri complete, eliberând blocuri goale. Unitatea va fi încă plină de blocuri parțial umplute și performanța la scriere va fi degradată.
Supraprovizionarea și colectarea gunoiului
Pentru a împiedica consumatorii să-și umple unitățile SSD și să se finalizeze cu performanțe grav degradate, producătorii de SSD fac tot posibilul să contracareze acest lucru.
Unitățile de stare solidă pentru consumatori alocă adesea aproximativ 7% din spațiul lor total de stocare flash și o fac indisponibilă utilizatorului. Acest lucru este cunoscut sub numele de „supraprovizionare” - hardware suplimentar de stocare este adăugat pe unitate, dar nu este vizibil pentru computer, deoarece spațiul de stocare disponibil pe care îl poate folosi. Zona de rezervă asigură faptul că unitatea nu poate deveni niciodată complet plină - va exista întotdeauna o anumită capacitate de rezervă pentru a ajuta la menținerea performanței la scriere stabile.
Fiecare controler de unitate SSD are un algoritm de colectare a gunoiului pentru a încerca să atenueze această problemă. Când unitatea devine plină, va căuta blocuri parțial umplute și va începe să le consolideze, eliberând cât mai multe blocuri goale posibil. Diferite unități în stare solidă execută aceste operațiuni la momente și praguri diferite - asta depinde de controlerul unității.
Dovezi de referință
Anandtech a realizat o varietate de repere cu diferite unități pentru a elimina relația dintre aria liberă a unității în stare solidă și consistența performanței operației sale de scriere. La umplerea unei unități goale, au descoperit o performanță ridicată la scriere foarte devreme în proces și o scădere semnificativă pe măsură ce operațiunile de scriere au continuat să umple unitatea.
Punerea deoparte a mai multor spații libere pe unități a ajutat performanța să rămână consecventă, deoarece a asigurat că unitatea ar trebui să aibă întotdeauna suficient blocuri goale.
Au descoperit că „performanța minimă se îmbunătățește substanțial după ce atingeți 25% din suprafața de rezervă pentru aceste unități [consumer]”. Recomandarea lor finală a fost că ar trebui să „planificați să utilizați doar aproximativ 75% din capacitatea [your drive’s] dacă doriți un echilibru bun între consistența performanței și capacitatea”.
Dacă aveți o unitate SSD, ar trebui să încercați să evitați utilizarea a mai mult de 75% din capacitatea sa. Cumpărați o unitate mai mare cu mai mult spațiu de stocare decât aveți nevoie și vă veți asigura că aveți întotdeauna o performanță de scriere constantă. Din fericire, SSD-urile devin treptat mult mai ieftine, deci acest lucru nu este la fel de scump ca pe vremuri.
Credit de imagine: Music Sorter la Wikimedia Commons , Simon Wüllhorst pe Flickr