Se si va a controllare lo stato del proprio SSD, attraverso l'utility CrystalMark Info, noterete senz'altro che il valore “Total NAND Writes” è notevolmente superiore al “Total Host Writes”. Cosa significa questo, e perché è così?
Partendo dall'ultima domanda, va detto che i più recenti S.O. Windows scrivono continuamente sulle NAND Flash, anche con le funzioni di TRIM, Garbage Collector ed NCQ attivate. Ad esempio, se non si abilita, o non è disponibile (alcuni SSD non la supportano), la funzionalità di “Deep Sleep”, il servizio EventLog (lastalive0.dat e lastalive1.dat) di Windows continuerà a scrivere GB su GB nelle NAND Flash (al ritmo di circa 2-3 GB al giorno). Il valore di Host Writes non verrà invece toccato dall'EventLog. Anche l'aprire un programma, come ad esempio Photoshop, farà crescere molto più velocemente il valore relativo alle scritture delle NAND che quello dell'Host. Vediamo il perché.
Il CTRL NAND degli SSD ha una funzione specifica molto importante, ed è per questo che nell'introduzione abbiamo scritto che la breve vita operativa dei primi SSD fu determinata da questo, più che dalle stesse NAND Flash. Su queste ultime, contrariamente a quanto accade con i dischi degli HDD tradizionali, non possono venire scritti direttamente i dati. Prima di far ciò, il CTRL NAND gestisce il flusso di dati dell'Host e, attraverso una mappatura dei blocchi/celle (composti da più settori), decide dove è più conveniente scrivere questi dati, cancellando i dati vecchi non più utilizzabili nella precedente cella, così che torni di nuovo utilizzabile, ed al contempo aggiornando la mappa dei blocchi/celle. Nell'utilizzo reale capita così che il CTRL debba “riprogrammare” un intero Blocco per scrivere un dato di dimensioni minori del blocco stesso, magari grande solo qualche settore. Per questo motivo, solitamente, il numero di scritture sulle NAND è tra le 2 e le 4 volte superiore a quello dell'Host.
Queste celle, però, possono essere “riprogrammate” un numero finito di volte, e nel caso delle NAND Flash MLC questo è pari ad una cifra tra 3.000 e 5.000. Sfortunatamente questo valore è raggiungibile molto più velocemente rispetto a quello garantito per le scritture dell'Host.
È nato così il Write amplification factor (WAF), un valore determinato da questa divisione: NAND Flash Writes / Host Writes.
Un valore pari o inferiore ad “1” è consigliabile, in una situazione normale, perché questo significa che il CTRL NAND sta facendo un ottimo lavoro di gestione dei dati, minimizzando le scritture sulle NAND, attraverso i propri algoritmi di compressione e una migliore gestione delle celle/blocchi ma, oltre ad essere una situazione impossibile da realizzare nell'uso reale, questo significa anche stressare molto di più il CTRL NAND (non è un caso che Intel, per i propri SSD, non garantisca sui GB minimi che è possibile scrivere sulle NAND, ma sulle scritture dell'Host, ed anche per il Vector 150 è così: "Endurance: Rated for 50GB/day of host writes for 5 years under typical client workloads"). Suddivideremo il test in due fasi.
Fino al quarto giorno mostreremo quanto un WAF pari a 0.5 (tipico dell'utilizzo Enterprise) può mettere sotto stress le NAND Flash, mentre il l quinto giorno, come abbiamo scritto in precedenza, utilizzeremo un'impostazione tipicamente Consumer, con un WAF pari a 1.2, tutto sommato un buon compromesso per allungare la vita delle NAND Flash.
Per come abbiamo settato noi IOMeter, il CTRL NAND del Vector 150 prima subirà in principio una situazione di pesante stress, anche a costo di "bruciare" prima le celle delle memorie NAND, in quanto dovrà "riprogrammare" e scrivere quest'ultime nel minor tempo possibile. Questo significa che i dati scritti dall'Host saranno circa doppi a quelli scritti sulle NAND Flash, in quanto stiamo sforzando il CTRL NAND a fare ciò. In un utilizzo normale, invece, l'usura dovrebbe essere un terzo di quanto noi stiamo affligendo al Vector, in quanto si utilizzano dati continui di grandi dimensioni. Questo significa che, per rapportare il nostro test ad un utilizzo classico, bisognerà moltiplicare il nostro valore di Total NAND Writes x 3. Questo sarà possibile osservarlo confrontando il nostro test con quello realizzato dai ragazzi di Ocaholic, i quali hanno utilizzato delle impostazioni molto più consevative in IOMeter, o il comportamento del nostro SSD dopo il quinto giorno di test. Avere un WAF basso non è importante quanto a prima vista può sembrare. Su Techreport, utilizzando un altro esempio, hanno utilizzato l'Anvil's Storage Utilities per testare la durata di diversi SSD, e questa suite non ci comunica le NAND Writes, ma le Host Writes.
OCZ garantisce il Vector 150 per oltre 90TB di Host Writes: come si comporterà questo SSD, con il suo CTRL NAND spinto all'estremo per i primi quattro giorni? Quanto durerà alla fine l'SSD?