HPC & AILo scorso 16 maggio, HPE (Hewlett Packard Enterprise) ha fatto un annuncio che potrebbe, senza esagerazioni, cambiare tra pochi anni, forse già entro il decennio, la storia dell’informatica. Si tratta del primo computer memory-driven, completo e operante su larga scala, la cui presentazione è il punto d’arrivo del più grande programma di ricerca e sviluppo che la società abbia intrapreso nella sua lunga storia: The Machine Project.

L’architettura del memory driven computer di HPE
Si tratta di un programma il cui obiettivo era (ed è, trattandosi di un progetto open source il cui sviluppo è in proseguimento) ridisegnare l’architettura che Von Neumann concepì negli anni ’40 e sulla quale si basano tuttora quasi tutti i computer, facendo della memoria e non più della Cpu l’elemento nodale del sistema. Avviato tre anni fa, il progetto ha segnato una prima tappa importante con la dimostrazione pratica del funzionamento dell’architettura e il testing delle sue prestazioni. Poi, in occasione dell’HPE Discover di Londra del novembre scorso, è stata annunciata la realizzazione di una scheda hardware completa e funzionante, sia pure in scala ridotta. Oggi, in anticipo rispetto alle previsioni date dalla stessa HPE all’evento di Londra, è stato presentato un prototipo le cui caratteristiche sono tali (vedi box) da dimostrare largamente l’enorme potenziale della nuova architettura se applicata in un contesto produttivo.
Indice degli argomenti
Storage e Ram, una cosa sola

Kirk Bresniker, Chief Architect of Hewlett Packard Labs System Research
Ma come è fatto e come funziona un computer memory-driven? Abbiamo avuto occasione di parlarne con Kirk Bresniker, Chief Architect degli HP Labs per la ricerca sui sistemi.
ZeroUno: Ci sembra di capire che l’innovazione dell’architettura presentata da HPE stia nella unificazione di storage e Ram…
Bresniker: Sì, in un computer single-memory-driven (cioè dove ogni cella di memoria ha un indirizzo univoco – ndr) non c’è più differenza tra lo storage, che contiene i dati, e la Ram, dove sono processati. C’è una memoria unica condivisa da tutte le unità di calcolo, che vi accedono per tutte le operazioni.
ZeroUno: L’architettura prevede un rapporto fisso tra capacità di memoria e numero di nodi di calcolo? Com’è gestito l’accesso alla memoria dal parte del sistema operativo?
Bresniker: Oggi il prototipo ha 160 Tb di memoria e 40 nodi, e se i Tb fossero 320 i nodi sarebbero 80. Ma è un problema tecnologico: l’architettura di per sé non pone limiti e il rapporto può variare con più o meno memoria per nodo a seconda che il sistema sia pensato per applicazioni data intensive o processing intensive. Ciò significa anche che i nodi non sono clusterizzati ma possono accedere alla memoria in modo indipendente.
ZeroUno: Significa anche, però, che le applicazioni andranno completamente riscritte non solo per la gestione della memoria ma anche in termini di parallelizzazione dei processi. Fornirete dei tool o meglio dei compilatori per facilitare questo compito?
Bresniker: Ci stiamo lavorando e abbiamo già dei tool adatti allo scopo. In questo compito, fondamentale, contiamo molto anche sui nostri partner e sulla comunità open source.