SSD e carichi di lavoro, analisi delle prestazioni

Abbiamo avviato diversi carichi di lavoro sugli SSD di Intel e Samsung per vedere come cambiano le prestazioni nel tempo.

Introduzione

Con una serie di test sugli ultimi SSD di Intel e Samsung, per vedere come le prestazioni cambiano nel tempo, abbiamo scoperto che ci sono alcuni importanti problemi di prestazioni, ma anche alcune soluzioni che dovreste conoscere.

La qualità delle prestazioni degli SSD sono motivo di discussione in tutto il web. Malgrado le prestazioni di picco degli ultimi prodotti siano solitamente più che impressionanti (con livelli di throughput di quasi 250 MB/s e diverse centinaia di operazioni di I/O al secondo), le prestazioni nella "vita reale" potrebbero essere molto differenti. Infatti, nel tempo le prestazioni possono scendere, fino a livelli in cui gli hard disk tradizionali sono più veloci, per via delle loro prestazioni costanti.

Croce e delizia di questi supporti è la tecnologia flash; se si tralasciano, però, i prodotti meno prestanti, quelli di alto livello fanno capire che, a conti fatti ci sono più vantaggi che problemi.

Da cosa derivano le prestazioni

Rispetto agli SSD, la valutazione delle prestazioni degli hard disk è piuttosto semplice, perché si ricercano throughput, in megabyte al secondo, e tempo d'accesso in millisecondi, sia per le proposte desktop sia per quelle notebook. A queste misure si aggiungono quelle delle prestazioni I/O, importanti solo per prodotti server o workstation. Sono questi i parametri importanti, anche se l'efficienza energetica ha un ruolo sempre più rilevante.

Il formato del disco (3.5"/2.5"), la tecnologia di registrazione, la densità dei dati e la rotazione dei piatti sono parametri chiave, che storicamente hanno l'influenza maggiore sulle prestazioni. I rimanenti fattori, come la dimensione della cache o il bandwidth dell'interfaccia, sono secondari.

Gli SSD sono differenti

Essenzialmente gli hard disk sono migliori nel leggere o scrivere i dati sequenzialmente, mentre per affrontare operazioni casuali rallentano, tanto in termini di throughput quanto di operazioni di I/O al secondo.

Questo è l'aspetto dove gli SSD primeggiano: hanno un tempo accesso estremamente basso, perché devono solamente scegliere la posizione all'interno dell'insieme di memoria, anziché muovere componenti fisici. Inoltre, gli ultimi prodotti sono capaci di fornire circa il doppio del throughput massimo di un convenzionale hard disk, disponendo la memoria flash in canali multipli simili alle configurazioni dual/triple channel della RAM o alla tecnologia RAID. Le analisi sulle prestazioni di I/O rivelano il grado di intelligenza del controller flash usato nel disco SSD, perché massimizzano la prestazione mentre forniscono wear-leveling per le celle flash.

La scatola magica

Gli SSD sono diventati più complessi, nel tempo: la posizione fisica e la strategia per l'archiviazione dei dati non è così semplice come negli hard disk, dove è piuttosto facile immaginare dove sono immagazzinati i dati. Osservando il tipo di memoria NAND flash, potete stimare se un SSD sarà buono per letture sequenziali o se può fornire prestazioni elevate di I/O e in scrittura. La memoria flash di tipo SLC è più veloce, perché immagazzina un frammento d'informazione per segmento. Tuttavia la memoria SLC è costosa - spesso troppo persino per i prodotti di fascia media. La flash MLC è l'alternativa più popolare: immagazzina più informazioni per segmento flash usando diversi livelli di tensione, fornendo capacità più elevate, ma ha prestazini peggiori della SLC.

La combinazione di controller intelligenti e flash a più canali porta ad un uso errato delle risorse disponibili, quindi un flusso di dati sequenziale non è mai realmente scritto sequenzialmente. I file, di conseguenza, possono essere ovunque, e i dati sono tipicamente scritti, letti, cancellati e scritti ancora aggiungendo un ulteriore strato, che può avere un impatto sostanziale sulle prestazioni degli SSD.

Il "difetto", se così lo si può chiamare, diventa ancora più evidente quando usate l'intera capacità dell'SSD, lasciando meno opzioni al controller flash per ottimizzare le prestazioni. Fortunatamente, ci sono precauzioni che potete prendere e aggiornamenti di firmware disponibili. Questi aggiornamenti continuano a migliorare i controller flash per ridurre le fluttuazioni delle prestazioni, permettendo ai sistemi operativi futuri di accelerare e lavorare con nuovi file system pensati per le caratteristiche dei sistemi di archiviazione.