Per evitare scenari in cui la memoria di un SSD viene saturata con file non validi, la garbage collection del controller SSD utilizza l'over-provisioning (OP) come passaggio intermedio. In quest'area di lavoro temporanea, si effettua il merge delle pagine valide, mentre i blocchi riempiti con pagine non valide (o eliminate) vengono rigenerati.
Tutti i file/blocchi rigenerati vengono quindi aggiunti alla memoria di over-provisioning per consentire le operazioni di scrittura dal controller SSD e massimizzare le performance durante i picchi di carico. In caso contrario le operazioni di lettura, cancellazione, modifica e scrittura dei blocchi pieni di pagine non valide potrebbero avere un ripercuotersi sulle performance.
La garbage collection opera in maniera indipendente rispetto al sistema operativo e viene attivata automaticamente durante i periodi di attività ridotta. Ciò viene fatto a intervalli regolari o attivando il corrispondente comando ATA Data Set Management TRIM per programmare l'attività di garbage collection.
La disponibilità costante di blocchi vuoti con capacità di over-provisioning supporta in maniera efficace il processo di livellamento dell'usura della memoria NAND flash, in quanto il controller SSD distribuisce in modo intelligente e uniforme le operazioni di scrittura tra le celle della memoria NAND flash, senza influenzare le performance generali del disco SSD, anche in caso di picchi di carico.
Inoltre, il comando ATA Data Set Management TRIM può rendere disponibile una maggiore quantità di spazio per il disco SSD, eliminando le pagine non valide e liberando la capacità storage non utilizzata.
Per comprendere meglio il funzionamento dell'OP, osserveremo più da vicino i Kingston Enterprise SSD, in particolare il DC400 SSD. Questi SSD possono arrivare a una capacità di 1,8 TB e gli utenti possono personalizzare la funzionalità di over-provisioning con Kingston SSD Manager. Regolando le dimensioni dell'OP, gli effetti sulle performance e sulla durata si raggiungono quando si imposta un valore di OP pari o superiore al 7%.
| Capacità del disco formattato | Dimensioni over-provisioning (OP) | Larghezza di banda per letture/scritture sequenziali (MB/s) | IOPS casuali in lettura/scrittura costanti a 4K | TBW (JEDEC Enterprise [1]) | DWPD[2] |
| 400 GB | 28% OP | 555/535 | 85K / 35K | 422 TB | 0,57 |
| 480 GB | 7% OP | 555/535 | 85K / 11K | 257 TB | 0,30 |
| 800 GB | 28% OP | 555/530 | 78K / 32K | 860 TB | 0,58 |
| 960 GB | 7% OP | 555/520 | 78K / 11K | 564 TB | 0,32 |
| 1600 GB | 28% OP | 555/510 | 78K / 32K | 1678 TB | 0,57 |
| 1800 GB | 14% OP (intenso)* | 555/500 | 67K / 18K | 1432 TB | 0,43 |
Tabella. 1 – over-provisioning in base alla capacità storage e alla classe di utilizzo
Nella figura 1 vengono confrontate le singole capacità di storage del DC400 (400/480 GB, 800/960 GB, 1600/1800 GB) con diversi livelli di OP.
Quando si confrontano tutte le capacità di storage, si può notare quanto segue:
Riferimenti