banner
Centro notizie
Le nostre offerte sono apprezzate sia a livello nazionale che internazionale.

Offload trasparente della memoria: più memoria a una frazione del costo e della potenza

Apr 08, 2024

Stiamo assistendo a una crescita massiccia delle esigenze di memoria delle applicazioni emergenti, come l’apprendimento automatico, insieme al rallentamento della scalabilità dei dispositivi DRAM e alle ampie fluttuazioni del costo delle DRAM. Ciò ha reso la DRAM proibitivamente costosa come unica soluzione di capacità di memoria su scala Meta.

Ma le tecnologie alternative come le unità a stato solido (SSD) connesse a NVMe offrono una capacità maggiore rispetto alla DRAM a una frazione del costo e della potenza. Scaricare in modo trasparente la memoria più fredda su tecnologie di memoria più economiche tramite tecniche kernel o hypervisor offre un approccio promettente per frenare l'appetito per la DRAM. La sfida principale, tuttavia, riguarda lo sviluppo di una soluzione solida su scala data center. Una soluzione di questo tipo deve essere in grado di gestire carichi di lavoro diversi e l'ampia variazione di prestazioni dei diversi dispositivi di offload, come memoria compressa, SSD e NVM.

Transparent Memory Offloading (TMO) è la soluzione Meta per ambienti data center eterogenei. Introduce un nuovo meccanismo del kernel Linux che misura il lavoro perso a causa della carenza di risorse su CPU, memoria e I/O in tempo reale. Guidato da queste informazioni e senza alcuna conoscenza preliminare dell'applicazione, TMO regola automaticamente la quantità di memoria da scaricare su un dispositivo eterogeneo, come una memoria compressa o un SSD. Lo fa in base alle caratteristiche prestazionali del dispositivo e alla sensibilità dell'applicazione agli accessi più lenti alla memoria. TMO identifica in modo olistico le opportunità di offload non solo dai contenitori delle applicazioni ma anche dai contenitori sidecar che forniscono funzioni a livello di infrastruttura.

TMO è in produzione da più di un anno e ha risparmiato dal 20% al 32% della memoria totale su milioni di server nel nostro ampio parco di data center. Abbiamo eseguito con successo l'upstream dei componenti del sistema operativo di TMO nel kernel Linux.

Negli ultimi anni, numerose tecnologie di memoria non DRAM più economiche, come gli SSD NVMe, sono state implementate con successo nei nostri data center o sono in arrivo. Inoltre, le tecnologie emergenti di bus di memoria non DDR come Compute Express Link (CXL) forniscono una semantica di accesso simile alla memoria e prestazioni prossime a quelle DDR. La gerarchia di archiviazione della memoria mostrata nella Figura 1 illustra il modo in cui le varie tecnologie si sovrappongono tra loro. La confluenza di queste tendenze offre nuove opportunità per la suddivisione della memoria in livelli che in passato erano impossibili.

Con il tiering della memoria, i dati a cui si accede meno frequentemente vengono migrati in una memoria più lenta. L'applicazione stessa, una libreria dello spazio utente, il kernel o l'hypervisor possono guidare il processo di migrazione. Il nostro lavoro TMO si concentra sulla migrazione guidata dal kernel o sullo scambio. Perché? Perché può essere applicato in modo trasparente a molte applicazioni senza richiedere la modifica dell'applicazione. Nonostante la sua semplicità concettuale, lo scambio basato sul kernel per applicazioni data center sensibili alla latenza rappresenta una sfida su vasta scala. Abbiamo creato TMO, una soluzione trasparente di offload della memoria per ambienti containerizzati.

TMO è costituito dai seguenti componenti:

Il crescente costo della DRAM come frazione del costo del server ha motivato il nostro lavoro su TMO. La Figura 2 mostra il costo relativo di DRAM, memoria compressa e storage SSD. Stimiamo il costo della DRAM compressa sulla base di un rapporto di compressione 3x rappresentativo della media dei nostri carichi di lavoro di produzione. Prevediamo che il costo della DRAM aumenterà, raggiungendo il 33% della nostra spesa per le infrastrutture. Sebbene non mostrato di seguito, il consumo energetico della DRAM segue una tendenza simile, che prevediamo raggiunga il 38% della potenza della nostra infrastruttura server. Ciò rende la DRAM compressa una buona scelta per l'offload della memoria.

Oltre alla DRAM compressa, dotiamo tutti i nostri server di produzione anche di SSD NVMe molto capaci. A livello di sistema, gli SSD NVMe contribuiscono a meno del 3% del costo del server (circa 3 volte inferiore rispetto alla memoria compressa della nostra attuale generazione di server). Inoltre, la Figura 2 mostra che, isocapacità rispetto alla DRAM, l'SSD rimane inferiore all'1% del costo del server attraverso le generazioni: circa 10 volte inferiore rispetto alla memoria compressa in termini di costo per byte! Queste tendenze rendono gli SSD NVMe molto più convenienti rispetto alla memoria compressa.