Pagina principala » HOWTO » De ce dispozitivele de tip solid-state scad în timp ce le umpleți

    De ce dispozitivele de tip solid-state scad în timp ce le umpleți

    Indicatoarele de referință sunt clare: drive-urile de stare solidă încetinesc în timp ce le umpleți. Umpleți unitatea solid-state la o capacitate de aproape și performanța de scriere va scădea dramatic. Motivul pentru care se află în modul în care funcționează SSD-urile și spațiul de stocare Flash NAND.

    Completarea unității la capacitate este unul dintre lucrurile pe care nu trebuie să le faceți niciodată cu o unitate SSD. O unitate solidă aproape complet plină va avea operațiuni de scriere mult mai lent, încetinind computerul.

    Blocuri goale și blocuri parțial umplut

    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ă caracteristica TRIM, care șterge automat datele unui fișier din unitatea SSD de îndată ce ștergeți fișierul din sistemul dvs. de operare. Acest lucru funcționează diferit de hard disk-urile magnetice, unde biți de fișiere șterse stau pe hard disk.

    Ei nu stau pe un drive solid - TRIM asigură că blocul este golit, astfel încât SSD poate scrie rapid date noi în blocul gol în viitor. Scrierea pe un sector deja scris este la fel de rapidă ca scrierea într-un sector gol pe o unitate hard disk mechnical, dar o unitate solid-state trebuie să ștergă un bloc înainte de a scrie la el.

    Memoria flash NAND scrie date în 4 pagini KB în interiorul blocurilor de 256 KB. Pentru a adăuga pagini suplimentare la un bloc parțial umplut, unitatea SSD trebuie să ștergă întregul bloc înainte de a scrie date înapoi la acesta.

    Pe măsură ce unitatea SSD se umple, sunt disponibile mai puține și mai puține blocuri goale. În locul lor sunt blocuri parțial umplute. Unitatea solid-state nu poate scrie doar datele noi pe aceste blocuri parțial umplut - ceea ce ar șterge datele existente. În loc de o operație de scriere simplă, unitatea solid-state 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 aceasta poate introduce o cantitate semnificativă de întârziere suplimentară.

    TRIM nu consolidează blocurile parțial pline

    Dacă ați umplut o unitate la capacitate sau aproape de capacitate, probabil că veți termina cu multe blocuri parțial umplut după ștergerea fișierelor. Comanda TRIM direcționează doar o unitate SSD pentru a elimina datele fișierului atunci când fișierul este șters. Nu forțează unitatea să facă orice fel de operațiune de curățare.

    Cu alte cuvinte, umpleți o unitate SSD la capacitate înainte de a șterge fișierele și probabil veți termina cu multe blocuri parțial umplute. Unitatea nu va ieși din calea sa de a consolida aceste blocuri parțial umplut în blocuri complete, eliberând blocuri goale. Unitatea va fi încă plină de blocuri parțial umplute, iar performanța de scriere va fi degradată.

    Supravegherea și colectarea gunoiului

    Pentru a împiedica consumatorii să-și umple drive-urile de solid-state și să se încheie cu performanțe severe degradate, producătorii de SSD nu reușesc să facă acest lucru.

    Dispozitivele de tip solid-state de la consumatori deseori au pus deoparte aproximativ 7% din memoria flash totală și le fac indisponibile utilizatorului. Acest lucru este cunoscut sub numele de "overprovisioning" - hardware-ul de stocare suplimentar este adăugat la unitate, dar nu este vizibil pentru calculator ca spațiu de stocare disponibil pe care îl poate utiliza. Zona de rezervă asigură că unitatea nu poate deveni complet plină - va exista întotdeauna o anumită capacitate de rezervă pentru a vă menține performanța de scriere stabilă.

    Fiecare controler al unității 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 umplut și începe să le consolideze, eliberând cât mai multe blocuri goale posibil. Diferitele unități SSD execută aceste operații la momente și praguri diferite - depinde de controlerul unității.

    Dovezi de referință

    Anandtech a efectuat o varietate de repere cu diferite unități pentru a distruge relația dintre zona de rezervă a unității SSD și consecvența performanței operației de scriere. Atunci când se încarcă o unitate goală, au descoperit performanțe ridicate de scriere foarte devreme în proces și o scădere semnificativă pe măsură ce operațiile de scriere continuă să umple unitatea.

    Lăsând la o parte mai multă zonă de rezervă pe unități a ajutat performanța să rămână consecventă, deoarece a asigurat că unitatea ar trebui să aibă mereu destule blocuri goale pregătite.

    Ei au descoperit că "performanța minimă se îmbunătățește substanțial odată ce ați lovit 25% din suprafața de rezervă pentru aceste unități [consumatoare]". Recomandarea lor finală a fost că ar trebui să "planificați să utilizați doar aproximativ 75% din capacitatea [unității dvs.] dacă doriți un echilibru bun între consistența și capacitatea de performanță. "


    Dacă aveți o unitate SSD, ar trebui să încercați să evitați să utilizați 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 veți asigura că aveți întotdeauna performanță consistentă de scriere. Din fericire, SSD-urile devin treptat mult mai ieftine, deci nu este atât de scump cum a fost odată.

    Credit de imagine: Sortare muzică la Wikimedia Commons, Simon Wüllhorst pe Flickr