SSD PCIe già vecchi, arrivano quelli MCS su banco memoria DIMM

SSD PCIe già vecchi, arrivano quelli MCS su banco memoria DIMM

Si fa strada una nuova tendenza nel mondo dei server, che potrebbe però avere sbocchi in futuro anche nel settore mainstream casalingo: gli SSD per come li conosciamo ora potrebbero migrare sui banchi memoria, riducendo di molto le latenze e aumentando di gran lunga la prestazioni

di pubblicato il nel canale Scienza e tecnologia
 

SSD PCIe, i limiti nascosti

Il settore dello storage sta vivendo da tempo una vera rivoluzione, grazie alle alternative offerte dalle soluzioni Solid State Drive nelle varie incarnazioni. La nascita di soluzioni "Solid State" in senso ampio avviene negli anni '50 del secolo scorso, con applicazioni pratiche all'interno dei server a partire dagli anni '70, sebbene in ambiti molto di nicchia e mirati a causa dei prezzi proibitivi e della tecnologia ancora grossolana e poco ottimizzata per i grandi volumi. Una premessa doverosa, per capire che il "fenomeno SSD" non è recente a livello concettuale.

Nel corso degli ultimi anni però sono cambiate molte cose, i processi produttivi hanno permesso di realizzare chip NAND Flash sempre più performanti, capienti ed economici, aprendo quindi scenari di mercato impensabili in precedenza. Se guardiamo al mondo consumer, per esempio, possiamo trovare ottimi SSD da 240-256GB a poco più di 100 Euro, ma tutto questo è frutto di evoluzione, affinamento dei processi produttivi e ottimizzazione delle economie di scala, con evidenti benefici anche per l'utenza casalinga.

In ambito server siamo un passo avanti: in questo settore il budget non è limitato come può esserlo quello consumer, così come le esigenze in termini di performance salgono enormemente. Appare quindi normale che nel settore server-enterprise si giochi una partita importante, mettendo sul campo le tecnologie più raffinate e le soluzioni che meglio si adattano al conseguimento degli obiettivi, soprattutto in termini prestazionali e di affidabilità. Qualche tempo fa, in una news (SanDisk ULLtraDIMM, SSD su banchi memoria per ridurre le latenze), avevamo accennato ad un nuovo modo di integrare gli SSD nei server: SanDisk aveva infatti anticipato quella che in casa propria chiama ULLtraDIMM SSD, tecnologia che prevede l'adozione di SSD sui banchi memoria.

Sempre nella news abbiamo citato anche IBM, che offre la stessa cosa ma con nome diverso (eXFlash DIMM) nelle serie System x3850 e x3950 X6. In questi giorni emergono alcuni dettagli in più, che permettono di chiarire meglio quello che potrebbe essere un trend dai grandi sviluppi futuri. Dietro a SanDisk, IBM e anche Supermicro, che offre la stessa su cosa su alcune linee, c'è infatti un'altra azienda, Diablo Techonologies, ideatrice della tecnologia MCS, acronimo di Memory Channel Storage. Vediamo con maggiore precisione di cosa si tratta.

Diablo Technologies, in un PDF consultabile a questo indirizzo, cerca di portare l'attenzione su un problema abbastanza ignorato anche nel settore enterprise, ovvero l'analisi dettagliata delle problematiche che possono insorgere in contesti di grande carico sugli SSD. Molte aziende che commercializzano soluzioni SSD PCIe mettono in grande evidenza i valori elevati di transfer rate e il numero massimo di IOPS raggiungibile; un fatto oggettivamente innegabile, consultando i siti dei principali nomi del settore.

Gli SSD PCIe però sono minati alla base da alcune problematiche che impediscono di superare colli di bottiglia, oltre ad essere affetti da un problema di scalabilità delle prestazioni al crescere del carico in termini di IOPS da gestire. Il problema non è solo di interfaccia ma anche di architettura. Cerchiamo di spiegarci meglio.

Molti degli SSD PCIe sfruttano chip di memoria MLC, che costano meno degli SLC e permettono di raggiungere prestazioni comunque elevate. Per ottimizzare le prestazioni,però, i chip MLC vanno continuamente gestiti istante per istante: Wear Leveling, Garbage Collection e Error Correction sono operazioni che gravano sul controller in ogni momento e al crescere del carico il controller stesso va in crisi, impedendo una crescita proporzionale delle prestazioni e "murando" oltre un certo limite. Ecco cosa intende Diablo Technologies per "problema di architettura": un grosso ASIC (il controller), per quanto potente e ottimizzato, fa quel che può per gestire un grande numero di chip memoria in situazioni di forte carico, e tutto ciò non emerge certo nelle specifiche fornite dalle aziende, impegnate a dirci quanto vanno forte gli SSD PCIe in termini di MB o anche GB al secondo.

Con gli SSD PCIe SLC le cose vanno un po' meglio, poiché questi chip richiedono molta meno gestione degli MLC. La conseguenza diretta, alla luce del discorso appena fatto, è che il controller (lo stesso) ha più margine per raggiungere prestazioni superiori, soprattutto in termini di latenza.

Lo si vede ad esempio in questo grafico: le latenze di un SSD PCIe MLC si impennano già a 100000 IOPS, mentre lo stesso SSD ma con chip SLC e identico controller (non vengono indicati i modelli pecisi) va in crisi a 170000 IOPS. Una bella differenza, nell'ordine del 70%, che va ricercata esclusivamente nel minor lavoro che deve fare il controller. Ad accomunare queste soluzioni, però, è l'enorme carico sul controller in situazioni di grandi volumi di dati da gestire, uno scenario comunissimo in ambito server. Usare SSD PCIe SLC migliora la situazione, ma il problema rimane.

 
^