La memoria Intel Optane può compensare meno RAM?


76

Al momento ho un laptop che ha circa due anni e ha 8 GB di RAM. Uso il mio laptop per la navigazione in Internet, le applicazioni di produttività e la programmazione, compresa la scienza dei dati all'interno di Spyder o RStudio. Sto eseguendo Windows 10.

Di solito mi siedo intorno al 65% di utilizzo della memoria, o circa 5 GB.

Di recente ho acquistato, ma non ho ancora ricevuto, un laptop con 4 GB di RAM standard e 16 GB di memoria Intel Optane. Il laptop è stato commercializzato con 20 GB di memoria, ma dopo aver letto di più sulla memoria Optane, sembra che funzioni più come cache a bassa latenza che come RAM.

Allo scopo di eseguire contemporaneamente diversi programmi ad alta intensità di memoria (ad es. Browser con molte schede, IDE di data science) che utilizzano in media 5 GB di RAM, diminuiranno la RAM da 8 GB a 4 GB ma l'aggiunta di 16 GB di memoria Optane causa un rallentamento delle prestazioni ?

Ecco un'istantanea del mio profilo di memoria attuale se è utile:

profilo mem

Aggiornamento : se sei curioso, sono stato in grado di annullare l'ordine senza problemi. Le risposte mi hanno aiutato a capire che il nuovo acquisto sarebbe stato molto più lento del mio attuale laptop.


Che tipo di hard disk hanno i tuoi laptop, SSD? Optane fa miracoli per le unità più vecchie, ma molto meno per i sistemi SSD.
Albero

@Mast, il laptop ha un HDD.
N4v,

Risposte:


106

La "memoria" Intel Optane è un termine improprio. È solo una scheda di memoria cache che può trasformare un semplice disco rigido in un disco ibrido, aggiungendo una cache RAM che può funzionare alla velocità di un disco SSD.

La memoria Optane non è una memoria per computer ad accesso casuale o RAM. Invece, è pensato per funzionare come un bridge di memoria cache tra RAM e memoria, consentendo un trasferimento più veloce dei dati tra memoria, memoria e processore. Di conseguenza, è molto più veloce di un disco rigido rotante e può funzionare alla velocità di un SSD economico. E come SSD, non si cancella da solo quando spento.

Conclusione: hai commesso un errore innamorandoti di un clamore commerciale. Inoltre, 4 GB di RAM sono ridicolmente bassi nel nostro attuale stato di hardware e software. Consiglierei di annullare l'ordine per questo laptop, se è ancora possibile.


7
Buona risposta. +1. Inoltre, vorrei suggerire questo articolo , che confronta le velocità di accesso alla scala di riferimento umana, da 1 ciclo di clock -> 1 secondo, RAM -> 4 minuti e Optane -> 7 ore. Questo mostra davvero quanta differenza di scala c'è tra ad esempio la cache L1 e la velocità di accesso al disco ...
agtoever

9
In realtà non è un termine improprio, poiché esiste una versione che utilizza l'interfaccia DDR4 e sostituisce la RAM effettiva arstechnica.com/gadgets/2018/05/…
phuclv

5
4 GiB di RAM non sono ridicolmente bassi, ma sono piuttosto in ritardo rispetto alla media.
iBug

7
@iBug Lo è. Per un nuovo dispositivo, ecco di cosa tratta questa domanda. Soprattutto se, come in questo caso, il laptop più vecchio avesse il doppio della RAM.
Kakturus il

42
Pubblicizzare quel laptop con 20 GB di RAM non è un "clamore commerciale", è una palese menzogna.
venerdì

30

Le altre risposte coprono l'essenza della situazione, ma vorrei aggiungere un po 'di contesto.

Per molto tempo, la RAM è stata spesso chiamata "memoria" nei laptop destinati al laico. Di solito è utile e non ha causato problemi fino a poco tempo fa. Le stesse aziende che hanno iniziato questa pratica stanno ora raggruppando la cache e la RAM Optane con lo stesso nome "memoria" con l'intenzione di indurti a pensare che il laptop abbia più RAM di quanto non abbia in realtà. La tecnologia Optane è ancora relativamente nuova e sconosciuta, quindi questo inganno è molto facile cadere. Guardare più in profondità in un elenco di prodotti di solito rivela la verità.

La cache Optane non sostituisce la RAM, e non è stata pensata per essa. Entrambi aiutano a velocizzare un computer, ma funzionano in modo diverso e in situazioni diverse. Avere Optane non allevia il pesante rallentamento di avere solo 4 GB di RAM quando l'uso normale richiede almeno 5 GB.

Sei caduto vittima di un marketing intenzionalmente ingannevole. Ti consiglio di acquistare un altro laptop (con almeno 8 GB di RAM) per soddisfare il tuo caso d'uso. Forse uno di un produttore più all'avanguardia.


9

Solo 4 GB? Odio dirtelo, ma per quanto ne sappia (che non è molto) Intel Optane non è come la memoria nota come RAM; è come un SSD che prende le applicazioni che usi di più e le mette su un'unità più veloce in modo che si carichi più velocemente.

Quindi un'unità Intel Optane potrebbe eliminare la necessità di un SSD (non esitate a correggermi su questo). Il produttore probabilmente ha inserito un'unità Optane nel tuo laptop e l'ha commercializzata come RAM perché 20 GB di Intel Optane sono più economici di 20 GB di RAM *, ma forse puoi cambiare manualmente la RAM in 8 GB per circa $ 80.

* 24 GB di RAM per laptop $ 182
24 GB di RAM per laptop

4 GB di RAM per laptop e 16 GB di memoria Intel Optane $ 87
RAM per laptop
Memoria Intel Optane


8

In questo contesto (attrezzatura per i consumatori a basso costo), Optane si riferisce chiaramente a un SSD piccolo / veloce connesso a NVMe che utilizza la memoria XPoint 3D (anziché il flash NAND), conferendogli una resistenza di scrittura molto elevata. (Quindi non si usurerà se usato come spazio di scambio).

Ciò continuerà a fare schifo per molti carichi di lavoro, perché ci vuole ancora un errore di pagina e molti microsecondi per accedere, contro ~ 70 nanosecondi per un accesso DRAM (cache miss) ; non è direttamente mappato in memoria sul bus di memoria della CPU. Inoltre, l'esecuzione fuori ordine / prefetch HW / altro parallelismo della memoria può mantenere ~ 10 errori cache in volo per core fisico, ma un errore di pagina sta serializzando . Nessun lavoro utile può accadere (in questo thread) mentre il sistema operativo sta riparando un errore di pagina, quindi non c'è alcuna opportunità per il dirigente di OoO di nascondere quella latenza di errore di pagina dura. (Ma anche 70ns è troppo lungo per nascondersi completamente. Comunque, avere più missioni in volo su linee diverse fa molta strada per mitigarlo per alcuni carichi di lavoro.)


L'uso di una quantità di RAM ridicolmente piccola e in base a un SSD veloce per lo spazio di scambio / file di paging non è l'unico caso d'uso per questo tipo di Optane. (E probabilmente nemmeno un buon caso d'uso). Come https://www.tweaktown.com/articles/8119/intel-optane-memory-matters/index.html descrive, il suo caso d'uso principale è come una cache trasparente per un disco rigido magnetico. Penso che Intel fornisca i driver di Windows per farlo accadere. È possibile acquistare dischi rigidi SATA con memoria magnetica rotazionale con alcuni flash integrati come buffer / cache per le parti del disco a cui si accede frequentemente. I driver Optane HW + possono farlo per qualsiasi disco.

Optane NVMe sembra avere ottime prestazioni di lettura casuale a bassa profondità di coda (attendere che una lettura termini prima di avviarne un'altra, cosa che sfortunatamente accade quando un programma deve leggere un blocco prima che possa capire cosa fare dopo, e il prefetching del software non è sta aiutando). Quindi dovrebbe essere ottimo per accelerare gli orari di avvio del programma e l'avvio.

Non particolarmente sorprendente per grandi scritture contigue di file di grandi dimensioni; si spera che il software del driver sappia bypassare la cache di Optane e passare direttamente al disco magnetico sottostante. La pagina Optane principale di Intel si collega a https://www.intel.ca/content/www/ca/en/products/memory-storage/optane-memory/optane-16gb-m-2-80mm.html che mostra i loro 16GB M .2 Optane ha una lettura sequenziale di 900 MB / s, ma solo una scrittura sequenziale di 145 MB / s. La versione da 32 GB è più veloce, a 1350 MB / s in lettura, 290 MB / s in scrittura. Ma ancora una volta, quelli non sono i migliori Optane. I suoi IOPS sequenziali e casuali sono entrambi IOPS 240k, con latenza di lettura di 7 µs.


Intel ha qualcosa chiamato IMDT (Intel Memory Drive Technology)che è un hypervisor che crea l'illusione di uno spazio di indirizzi di memoria principale più grande per il sistema operativo. Alcune pagine verranno associate alla memoria principale DRAM effettiva, mentre altre verranno associate alla memoria SSD. Quando si accede a una pagina mappata all'SSD, si verifica un errore di pagina rilevato da IMDT, che causerà il trasferimento della pagina dall'SSD alla memoria principale (eliminando potenzialmente una pagina dalla memoria all'SSD). IMDT tenterà di precaricare le pagine nella DRAM per alleviare la larghezza di banda e la latenza inferiori dell'SSD. Cercherà anche di mantenere le pagine più calde nella memoria principale in modo che sia possibile accedervi con una penalità minima (l'unica penalità potrebbe provenire dai livelli di paginazione aggiuntivi a causa della virtualizzazione). Il sistema operativo è per lo più ignaro di questa mappatura e funziona normalmente. Questo tipo di sistema di memoria è chiamato memoria definita dal software (SDM). Il belloun documento intitolato "Valutazione delle prestazioni della tecnologia Intel Memory Drive per applicazioni scientifiche" fornisce una valutazione delle prestazioni di IMDT e la confronta con un sistema che ha la stessa quantità di memoria principale DRAM. Non ho letto attentamente il documento, ma sembra che IMDT possa migrare le pagine tra i nodi NUMA per avvicinarli al nodo in cui sono maggiormente necessari.

Detto questo, IMDT è supportato solo su processori Intel di livello server. Ha lo scopo di creare server economici ed efficienti dal punto di vista energetico con un impatto potenzialmente ridotto sulle prestazioni.

http://www.lmdb.tech/bench/optanessd/imdt.html ha alcuni benchmark con un SSD Optane DC P4800X. (La versione di data center di fascia alta, non roba di consumo. Capacità di scrittura sostenuta molto più alta.)

Non ho esaminato questo, quindi non sono sicuro se sia rilevante per il modo in cui Windows potrebbe trarre vantaggio da un SSD Optane di consumo.


Il marchio Optane è (un po 'confuso) anche usato per una cosa esotica molto più interessante:

DIMM non volatili 3D XPoint , alias "Optane DC Persistent Memory". https://www.anandtech.com/show/12828/intel-launches-optane-dimms-up-to-512gb-apache-pass-is-here . Apache Pass è il nome di Optane DC PM di prima generazione. Fare riferimento a questo per informazioni sulle generazioni future.

Intel ha una propria pagina di marketing principalmente per questo qui , con alcuni collegamenti ai dettagli tecnici. Il "DC" sta per Data-Centric, a quanto pare.

Questa è memoria non volatile che si collega a uno slot DIMM DDR4 e appare come memoria fisica effettiva. Apparentemente è supportato completamente solo dagli Xeon di prossima generazione (non dall'attuale serie Skylake-X aka Skylake Scalable Processor Processor).

Esistono altri tipi di NVDIMM, ad esempio DRAM normale con batteria (facoltativamente con flash per scaricare i dati per lo spegnimento a lungo termine, quindi hanno solo bisogno di un supercondensatore invece di una batteria chimica). https://en.wikipedia.org/wiki/NVDIMM ha alcuni dettagli.

https://www.electronicdesign.com/industrial-automation/why-are-nvdimms-suddenly-hot ha alcune informazioni più generali sugli NVDIMM (e sulla loro standardizzazione JEDEC e su come le applicazioni OS + possono collaborare per consentire alle applicazioni di comunicare direttamente con una regione di memoria mappata memoria NV, garantendo l'ordinamento del commit e così via). Il punto principale è che in realtà sfocano il confine tra RAM e memoria (in un senso di architettura del computer, non nel senso strettamente commerciale dell'annuncio ingannevole del laptop che hai visto che sosteneva 4 + 16 GB.)


Il sistema operativo può consentire a un processo di mappare questa memoria fisica non volatile nel proprio spazio di indirizzi virtuale in modo da poter accedere all'archiviazione direttamente con carichi di spazio utente e archiviare su indirizzi di memoria, senza alcuna chiamata di sistema, lasciando che l'hardware della CPU continui a rimanere fuori dal- esecuzione dell'ordine mentre ci sono letture / scritture in sospeso . (Esistono librerie di software che consentono agli sviluppatori di trarne vantaggio, inclusa la possibilità di flush()assicurarsi che i dati vengano effettivamente scritti in archivi permanenti.

Questa mappatura può anche essere memorizzata nella cache di write-back , quindi l'utilizzo dei dati beneficia completamente della cache L3 / L2 / L1d fino al momento di riscriverla (se modificata). Per i dati prevalentemente a lettura, questo tipo di Optane potrebbe davvero essere chiamato 4 + 16 GB di RAM. (Naturalmente, l'attuale caso d'uso del data center per gli NVDIMM Optane userebbe DIMM molto più grandi, come 512 GB.)

(Non è come un mmapfile ed su un normale disco in cui è sufficiente mappare la cache della pagina del sistema operativo per il file e il sistema operativo si occupa di eseguire l'I / O in background per sincronizzare le pagine RAM sporche con il dispositivo di archiviazione.)

È essenziale assicurarsi che alcuni dati abbiano effettivamente raggiunto l'archiviazione NV prima di altri (per consentire il ripristino di crash come un filesystem o un journal del database) è essenziale. Con le chiamate di sistema, è qui che utilizzeresti POSIX fsynco fdatasync. Ma poiché l'applicazione ha l'archiviazione realmente mappata in memoria, è qui che arrivano le chiamate alle funzioni di libreria.

In x86 asm, accediamo all'archiviazione con carichi / archivi normali, ma ci preoccupiamo quando i dati vengono effettivamente riscritti su NVDIMM (dove sono al sicuro dalla perdita di energia), non quando sono visibili ad altri core o al DMA coerente con la cache (non appena passa dal buffer del negozio alla cache L1d), quindi le normali regole di ordinamento della memoria di x86 non si occupano completamente di tutto. Abbiamo bisogno di istruzioni speciali per svuotare le linee di cache selezionate dalla cache della CPU. (Per l'utilizzo da parte delle librerie di archiviazione NV.)

L' clflushistruzione asm esiste da un po ', ma lo storage NV è uno dei motivi principali per cui Intel ha aggiunto clflushoptSkylake (anche se ha anche altri casi d'uso) e sta aggiungendo clwbin Ice Lake (riscrittura senza sfratto).

Dan Luu ha scritto un articolo interessante qualche tempo fa sui vantaggi di rimuovere il sistema operativo dall'accesso allo storage, descrivendo in dettaglio i piani di Intel a quel punto per clflush/ clwbe la loro semantica di ordinamento della memoria. È stato scritto mentre Intel stava ancora pianificando di richiedere un'istruzione chiamata pcommit(commit persistente) come parte di questo processo, ma Intel ha successivamente deciso di rimuovere tale istruzione: Deprecare l'istruzione PCOMMIT ha alcune informazioni interessanti sul perché e su come funzionano le cose .

(Questo è andato fuori tema nei dettagli di basso livello dello storage x86 NV. Dovrei trovare altrove per pubblicare la maggior parte di questa sezione, ma penso che)


Esistono anche SSD DC Optane , come una scheda PCIe x4 o 2,5 " . La versione da 750 GB esegue fino a 2500 MB / s in lettura sequenziale, 2200 MB / s in scrittura sequenziale e 550000 IOPS in lettura o scrittura casuale. Leggere la latenza è leggermente peggiore di M.2 NVMe, a 10 µs.

Questo è ciò che desideri se utilizzi un server di database o qualcosa del genere (se non puoi utilizzare NVDIMM), ma non renderebbe il tuo laptop da 4 GB molto più veloce (per i casi d'uso più comuni) rispetto all'Opane da 16 GB con cui lo vendono. Il blocco dello spazio di swap spesso produce molte letture dipendenti poiché una pagina deve essere paginata e acceduta prima che il codice su cui si è verificata la pagina possa continuare su qualunque cosa stesse per fare in seguito. Se la memoria è davvero ridotta, il sistema operativo non ha pagine di riserva in cui eseguire il prefetch aggressivo, quindi ti aspetteresti basse profondità di coda per le quali il consumatore Optane è ottimizzato. (Bassa latenza.)


L'SSD Intel Optane offre un buon compromesso tra prestazioni e potenza. Gli SSD sostanzialmente non consumano energia quando non sono accessibili. Al contrario, il consumo di energia statica (principalmente dovuto all'aggiornamento) nei chip DRAM è significativo. Quindi la quantità di DRAM in un sistema dovrebbe corrispondere idealmente all'insieme di lavoro del carico di lavoro tipico. Il sistema acquistato è stato progettato per un carico di lavoro tipico che richiede circa 4 GB di memoria principale o meno. In questo caso, se invece il sistema avesse 8 GB di memoria principale, consumerebbe più energia, il che ridurrebbe la durata della batteria. Tuttavia, l'SSD Optane consente di eseguire occasionalmente carichi di lavoro che richiedono un po 'più di memoria principale con un degrado minimo delle prestazioni (rispetto agli SSD o agli HDD basati su NAND).

La memoria DRAM attualmente costa circa $ 4,5 $ per 1 GB, mentre l'SSD Intel Optane costa circa $ 2 $ per 1 GB. Quindi un SSD Optane da 16 GB è più costoso di un modulo DRAM da 4 GB, ma più economico di un modulo DRAM da 8 GB. Quindi, se si estrae l'SSD Optane e si aggiunge 4 GB di memoria in più, si otterrà un sistema più economico, che è anche più veloce in media per carichi di lavoro tipici con set di lavoro più grandi di 4 GB. Ma la gestione degli errori di pagina, il prefetch e lo scambio di pagine sarebbero più lenti dall'HDD. Ecco perché il sistema da 8 GB sarà probabilmente più lento del sistema DRAM Optane da 4 GB DRAM + 16 GB Optane se il carico di lavoro tipico richiede meno di (o circa) 4 GB di memoria.

Il tuo laptop è eccezionale se lo utilizzerai solo per la navigazione in Internet o la modifica del testo. Optane SSD aiuta con l'avvio, fornisce un accesso rapido ai file a cui si accede più frequentemente e può essere utilizzato come memoria secondaria aggiuntiva. Quindi, anche se stai pagando più SSD Optane da 16 GB rispetto a 4 GB di DRAM, stai ottenendo determinati vantaggi unici per questo. Ma alcune delle altre applicazioni che hai citato, come RStudio, richiedono un minimo di 4 GB di memoria. Se in genere utilizzerai un browser e RStudio contemporaneamente (e forse altre app), dovresti ottenere un sistema con almeno 8 GB di memoria. Optane SSD è fino a buon punto però.


3

Altri hanno affrontato molti aspetti di questo molto bene e penso che tu sappia già che Intel Optane non è in alcun modo paragonabile alla RAM.

In un'architettura Von Neumann, "RAM" si riferisce alla memoria principale in un computer, a cui si accede direttamente dal processore. Un'unità Intel Optane appartiene alla categoria di "memoria secondaria" perché è più simile a un disco piuttosto che alla RAM.

A rigor di termini, nei moderni computer la RAM è l'unica memoria principale perché è l'unica cosa che è collegata direttamente al processore. Classifichiamo i dischi Intel Optane perché non è collegato direttamente al processore, ma a un bus I / O (o al controller del disco). Ciò limita fortemente il potenziale di un'unità Optane e alla fine lo squalifica dall'essere paragonabile alla RAM.

Se hai un disco Optane, meglio raccoglierlo e venderlo, acquista un vero SSD NVMe che di solito è più veloce. Sono in esecuzione su un HP EX920 e tutte le sue specifiche I / O (sequenziali / 4K) sono superiori rispetto all'unità Optane.


Il vantaggio principale di Optane sono gli IOPS a lettura casuale a bassa coda. Questo è un carico di lavoro molto comune per i desktop all'avvio di un programma, ad esempio. Questo è ciò per cui Optane è. tweaktown.com/articles/8119/intel-optane-memory-matters/… ha un grafico (ma non mostrano con quali SSD SATA o NVMe stanno confrontando.) Di solito le scritture possono essere bufferizzate, ma i programmi spesso devono attendere letture. (E a volte la lettura successiva non avviene fino al termine della prima lettura, ad esempio il caricamento di un nuovo codice che non può essere eseguito fino a quando non viene caricato, o semplicemente la mancanza di parallelismo I / O nel software.)
Peter Cordes

@PeterCordes Il mio EX920 (1TB) può funzionare fino a 16k IOPS per 4 KiB Q1T1 in lettura e 40k IOPS per 4 KiB Q1T1 in scrittura, leggermente inferiore alla metà dei risultati che ho trovato online (40k in lettura). Ma sono ancora un fermo sostenitore dei veri SSD (970 EVO è il mio preferito, ma non potevo permettermi quando sono andato per questo EX920).
iBug

2

Di recente ho acquistato, ma non ho ancora ricevuto, un laptop con 4 GB di RAM standard e 16 GB di memoria Intel Optane. Il portatile è stato commercializzato con 20 GB di memoria

Se questo è vero, dovresti chiedere indietro i tuoi soldi, sei stato truffato.

Optane è la parola di marketing di Intel per una combinazione di un'unità a stato solido con memoria XPoint 3D (che è poco più del doppio della NAND, ma anche molto più costosa) e alcune combinazioni driver / strumenti più o meno invadenti che interferiscono con il funzionamento normale modalità di funzionamento del sistema - proprio come le cose molto simili che Samsung ha distribuito per anni con i suoi dischi Evo (disponibile come installazione opzionale tramite Samsung Magician).

Non è in alcun modo un sostituto della RAM, non solo perché la memoria stessa è molto più lenta, ma anche perché quando viene utilizzata per la memoria virtuale, si ha la latenza di interruzione e il costo di elaborazione degli errori di pagina (che utilizza i cicli effettivi del processore). Inoltre, i dati devono passare su un bus che, sebbene piuttosto veloce, è ancora significativamente più lento con una latenza significativamente più elevata rispetto alla RAM normale, oltre a condividere la larghezza di banda con altri trasferimenti sul bus.

Quindi ... se si dispone di un disco rigido scadente, Optane (o qualsiasi SSD del caso) potrebbe essere una strategia praticabile per la memorizzazione nella cache dei dati. Ma come sostituzione o estensione drop-in per RAM reale, in nessun modo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.