U IT svijetu postoji stalna borba za pronalazak novih rješenja za memoriju. Jedan od prioriteta je postići memoriju koja kombinira najbolje iz oba svijeta: RAM-a i SSD-a. To jest, memoriju brzu kao primarna memorija, ali s kapacitetom i nehlapljivom prirodom sekundarne memorije. I u tom smjeru stvari idu. SCM koje vam danas predstavljamo…
Trenutna hijerarhija memorije
Podsjetimo se da memorija u trenutnoj računalnoj arhitekturi ima hijerarhija memorije u obliku piramide, od najbržeg, najskupljeg i najnižeg kapaciteta na vrhu, do najjeftinijeg, najsporijeg i najvećeg kapaciteta u podnožju:
- Razina 0Na vrhu imamo najbrže od svih, a to su ploče CPU-a, iako ima i najmanji kapacitet. Registri se obično kreću u veličini od 32-bitnih do 64-bitnih ili više. Međutim, unatoč malom kapacitetu, izgrađeni su od vrlo brzih flip-flopova i može im se pristupiti za manje od 0.5 ns.
- Razina 1Neposredno ispod registara nalazi se predmemorija, od L0 ili L1 do LLC (Last Level Cache). Ovdje se mogu uključiti i neki međuspremnici, poput TLB-a, koji je također vrsta predmemorije. To jest, često možemo pronaći L1, L2 i L3, uz nekoliko iznimaka. Ova memorija obično ima veće kapacitete od registara, u rasponu od nekoliko KB do nekoliko MB. Međutim, ćelije u ovoj memoriji su SRAM. To ih čini vrlo brzim, iako ne tako brzim kao registri, ali bržim od razina ispod njih. Ovdje govorimo o vremenima pristupa koja su obično od 1 ns do nekoliko desetaka nanosekundi, ovisno o razini, ili drugim riječima, od oko 4 ciklusa takta CPU-a do 50 ili 70 ciklusa na višim razinama. Na primjer, L1 može imati tipično vrijeme pristupa od 1 ns, dok L2 može biti oko 3.3 ns, L3 između 12.8 ns, a L4 na 42.4 ns… Također treba dodati da se i Razina 0 i Razina 1 u trenutnim slučajevima nalaze unutar samog CPU-a.
- Razina 2To je ono što je poznato kao primarna memorija ili glavna memorija. To jest, RAM (virtualna memorija bi se ovdje mogla uključiti, iako imajte na umu da je to dio smješten u razini 3). Ova memorija ima veći kapacitet od predmemorije, nekoliko GB, ali je također istina da su vremena pristupa sporija, oko 10 ns. To može varirati ovisno o vrsti memorije, budući da latencija i frekvencija takta nisu iste u svima njima, ali samo da vam dam referencu. To je zato što je to memorija sastavljena od DRAM ćelija, sporija od SRAM-a, ali jeftinija, što omogućuje ovaj veći kapacitet po umjerenoj cijeni. Razina 0, razina 1 i razina 2 su memorija kojoj CPU može izravno pristupiti. Usput, kao što znate, GPU također ima vlastitu glavnu memoriju ili VRAM, i to je općenito DRAM, a u nekim slučajevima i HBM. HBM se također može koristiti za CPU, iako je to egzotičnije.
- Razina 3Ovdje se može uključiti nehlapljiva memorija (NVM), budući da su sve prethodne razine bile hlapljive, što znači da se sadržaj memorijskih ćelija gubi kada se napajanje prekine. Ova vrsta memorije zadržava sve pohranjene informacije čak i kada se napajanje prekine. Također je važno napomenuti da CPU ne može izravno pristupiti ovoj vrsti memorije i u mnogim slučajevima zahtijeva pomoć operativnog sustava. Ova se razina općenito naziva sekundarnom memorijom, baš kao što se razina 1 naziva primarnom memorijom. Razina 3 uključuje HDD i SSD tvrde diskove. Prvi su magnetski i imaju vrijeme pristupa od oko 3 ms, dok su drugi puno brže flash memorijske jedinice, s vremenom pristupa koje može biti oko 0.1 ms. Kao što vidite, ovdje prelazimo s nanosekundi na milisekunde, ali također treba reći da je to memorija koja je znatno jeftinija za proizvodnju, pa se može implementirati u kapacitetima od stotina ili tisuća GB ili TB.
- Razina 4U ovom slučaju, vremena pristupa su dulja od prethodnih i u nekim slučajevima mogu biti veća od 10 ms. To može uključivati izmjenjive medije, optičku memoriju (CD/DVD/BD), magnetske vrpce i drugu I/O memoriju.
U redu, dakle, nakon što shvatimo ovu piramidu ili hijerarhiju pamćenja, sljedeći korak je početi istraživati što je SCM...
U potrazi za univerzalnim pamćenjem
Kako bi pokušali poboljšati ovu hijerarhiju pamćenja, istraživači neprestano razvijaju nove tehnologije i traže ono što se naziva „univerzalna memorija“Ovaj se pojam odnosi na uređaj za pohranu koji može kombinirati cjenovne prednosti DRAM-a, brzinu SRAM-a i nehlapljivu prirodu flash memorije, a istovremeno ima beskonačnu i dugotrajnu izdržljivost.
Očito je da objedinjavanje svih ovih značajki u jednom izvješću nije jednostavno, zapravo, Mnogi stručnjaci sumnjaju da je to moguće.. Neki Memoari koji su se nedavno pojavili mogli bi ispunjavati neke od ovih karakteristika, iako nisu konačno rješenje iz ovog ili onog razloga.
Mislim na memorije kao što su FRAM ili FeRAM, MRAM, PCM, RRAM ili ReRAM, NRAM ili Nano-RAM, PRAM ili PCRAM, memorija temeljena na memristorima, PMC, mjehurićasta memorija, racetrack memorija, UltraRAM (poluvodiči u istraživanju poput InGaAs, GaSb, AlGaAs, GaAs, AlSb, InAs), 3D XPoint, Millipede, memorija temeljena na FeFET-u, NOVRAM itd. Sve one sa zanimljivim prednostima, ali i s nedostacima koji ih još uvijek ne čine prikladnima da se smatraju univerzalnim memorijama i koje mogu zamijeniti razine 2 i 1, kao što se može vidjeti u prethodnoj piramidi, kao i umetnuti se kao memorija između glavne memorije i sekundarne memorije.
Što je NVRAM?
La NVRAM (nehlapljiva memorija s slučajnim pristupom) To je vrsta memorije s nasumičnim pristupom poput RAM-a, ali ne gubi podatke kada se na nju ne dovede napajanje, što je čini nehlapljivom. Ideja je postići ovu memoriju sa svojstvima SRAM-a ili DRAM-a u smislu brzine pristupa, ali bez gubitka pohranjenih informacija, poput sekundarne memorije. Ovo bi mogla biti dobra tehnologija za korištenje na mnogim frontovima, od pohrane firmvera do mikrokontrolera za industriju ili za korištenje u HPC aplikacijama, zrakoplovnim aplikacijama, IoT-u, distribuiranom računalstvu, aplikacijama virtualnih strojeva, između ostalog.
Misli na sve povlastice Što bi ovo sjećanje imalo u usporedbi sa trenutnom konvencionalnom piramidom, kao što je:
- Budući da je brz kao DRAM ili SRAM, postiže vrlo brzo vrijeme pristupa, što mu omogućuje korištenje kao glavne memorije.
- Budući da je nehlapljiva, njezina potrošnja bi bila vrlo niska, budući da ciklusi osvježavanja i stalno punjenje memorije ne bi bili potrebni kao što je slučaj s hlapljivom memorijom.
- Veliki kapaciteti mogu se dobiti za pohranu velikih količina informacija.
- Ove ćelije također imaju bolju pouzdanost od trenutnih flash ćelija, tako da se podaci mogu pohranjivati dugoročno, bez pogoršanja nakon tisuća ili milijuna ciklusa kao što se trenutno događa s ovim drugim ćelijama. Kao što znate, ovisno o tome je li Ćelije flash memorije su NOR, NAND ili njihovi derivati, pouzdanost može biti više ili manje kratka.
Ovo trajno pamćenje moglo bi biti rješenje za neke od trenutnih problema s obzirom na postojeća tehnološka ograničenja i prazninu ili jaz u postignućima struja između RAM-a i CPU-a.
Kao što znate, trenutno postoje neki rješenja To uključuje bržu hlapljivu memoriju za pohranjivanje informacija tijekom upotrebe, što omogućuje brži pristup. Kada se napajanje prekine, sadržaj se prenosi u nehlapljivu memoriju. Međutim, to znači uključivanje dvije vrste memorije, što, između ostalih problema, povećava troškove proizvodnje. Ali s ovim modulima imat ćete sve u jednom.
Nedavno su uvedeni neki standardi, kao što su NVDIMM, odnosno DIMM (Dual In-line Memory Module) format za ovu vrstu trajne ili nehlapljive memorije. Na taj način, ove memorije mogle bi se implementirati u obliku modula poput trenutnog RAM-a i instalirati u utore slične onima koji su trenutno dostupni. Međutim, za razliku od konvencionalnog DRAM-a, imale bi gore navedene prednosti.
NVDIMM-ovi su se razvili iz tehnologije poznate kao BBU DIMM (DIMM s baterijskom podrškom), koja je koristila rezervnu bateriju za održavanje napajanja u nestabilnoj memoriji do 72 sata u slučaju nestanka struje. Međutim, to nije cilj ove SCM ili univerzalne memorije, jer korištenje baterija znači da ih je potrebno puniti ili mijenjati, ima veći utjecaj na okoliš i tako dalje.
Ovaj pomoćni izvor napajanja potreban je kako bi glavna hlapljiva memorija imala vremena prenijeti svoj sadržaj u nehlapljivu memoriju u slučaju nestanka struje. Trenutno postoje i neki NVDIMM moduli koji se ne oslanjaju na baterije, već na supercapacitors, odnosno kondenzatori velikog kapaciteta koji su puni tijekom upotrebe i kada dođe do iznenadnog nestanka struje, imaju dovoljno energije da ostanu aktivni dovoljno dugo kako bi spriječili gubitak podataka.
Neka od ovih rješenja izvorno su korištena za keširanje nekih adaptera glavne sabirnice (HBA) za RAID pogone, omogućujući keš memoriji da preživi nestanak struje. Međutim, kao što ćete vidjeti, imaju i druge primjene.
Kako bi se ograničila upotreba ovih sustava, neki su rođeni standardi prema JEDEC-u za NVDIMM koje biste trebali znati, kao što su:
- NVDIMM-FOvo je standardni utor za DIMM module s flash memorijskim čipovima. Korisnici sustava moraju kombinirati DIMM za pohranu s tradicionalnim DRAM DIMM-om, tj. dva modula zasebno. Dostupan je od 2014. godine, s proizvodima kao što je 3D XPoint PCM koji su najavili Intel i Micron Technology.
- NVDIMM-NU ovom slučaju, obje vrste memorije kombinirane su u jedan DIMM modul. To jest, imamo flash memoriju i tradicionalni DRAM u istom modulu. To omogućuje sustavu izravan pristup tradicionalnom DRAM-u dok sustav radi. U slučaju nestanka struje ili gašenja, modul briše podatke iz hlapljivog tradicionalnog DRAM-a u trajnu flash memoriju i kopira ih natrag kada se napajanje vrati. Za modul se koristi mali rezervni izvor napajanja dok se podaci kopiraju iz DRAM-a u flash memoriju. Sony i Viking Technology također su najavili memoriju za ovu vrstu utora temeljenu na ReRAM-u.
- NVDIMM-PSpecifikacija se pojavila u veljači 2021., omogućujući trajnu glavnu memoriju, s pojavom ovih novih SCM-ova ili univerzalnih memorijskih modula. Nadalje, mogli bi dijeliti identične međusobne veze s DIMM-ovima DDR4 ili DDR5. Stoga bi ih se moglo zamijeniti. Primjeri ove vrste uključuju Samsung/Netlist modul najavljen 2015., koji je moguće bio baziran na Z-NAND-u.
- NVDIMM-XOvo nije JEDEC standard, ali je također zanimljivo. U ovom slučaju imamo DDR memorijski DIMM modul, ali s NAND flash memorijom, koju je razvio Xitore.
U redu, sada ćemo prijeći na SCM, što je povezano sa svime što sam ovdje objasnio, kao što ćete vidjeti, ali bilo je potrebno objasniti ovo prije nego što smo se bacili na rad s ovim novim konceptom...
Što je SCM?
La SCM (memorija klase pohrane), što je glavni fokus ovog članka, vrsta je fizičke memorije koja se pokušava etablirati kao univerzalna memorija ili barem pokriti neke od njezinih osnova. S SCM-om imamo memoriju koja kombinira najbolje od dinamičke memorije s slučajnim pristupom (DRAM), najbolje od NAND flash memorije i izvora energije za pohranu podataka.
Ukratko, ono što bismo postigli sa SCM-om jest imati pristup (pisanje i čitanje) podacima je brži nego pristup podacima na lokalno priključenim SSD-ovima (solid-state drives) putem PCIe, magnetskih tvrdih diskova (HDD) i vanjskih nizova za pohranu. SCM je izdržljiviji od DRAM-a i može čitati i pisati podatke do 10 puta brže od NAND diskova. Međutim, veći kapaciteti od konvencionalnog RAM-a mogu se postići i po pristupačnoj cijeni, kao i dulji vijek trajanja od trenutnih SSD-ova.
Jedna od primjena u kojoj se ove SCM memorije mogu iskoristiti je u podatkovnim centrimaI oni mogu doprinijeti:
- skrivenostImamo visokoučinkovit medij za pohranu s niskom latencijom, što znači brže vrijeme pristupa nego kod sekundarnih medija za pohranu. To je pozitivan faktor za opterećenja koja zahtijevaju rukovanje velikim količinama podataka s dobrim performansama.
- UporanRezervno napajanje osigurava da se podaci i programski kod sačuvaju tijekom kvara sustava ili nestanka napajanja. To osigurava sloj trajne pohrane s bajt-adresibilnom adresom između DRAM-a i flash memorije. Korištenje SCM-a proširuje brze performanse DRAM-a na nehlapljivu pohranu. Stoga, kada se napajanje vrati, sustav može nastaviti točno tamo gdje je stao, bez gubitka podataka ili vremena - što je ključno u sustavima visoke dostupnosti. Nadalje, u mnogim slučajevima, potreba za stalnim osvježavanjem bi se eliminirala.
- Manje ovisni o sekundarnim medijimaS SCM-om je potrebno premještati manje podataka između glavne memorije i sekundarne pohrane jer ima veći kapacitet. To smanjuje opterećenje CPU-a kada je potrebno da operativni sustav pristupi sekundarnim medijima, kao što sam ranije objasnio, što povećava performanse. SCM uređaj može raditi gotovo jednako brzo kao DRAM i statički RAM (SRAM), ali s prednošću perzistencije.
Prednosti i nedostaci SCM-a
Kao što sam komentirao kroz cijeli članak, korištenje SCM-a može imati velike prednosti u usporedbi s konvencionalnom memorijom, kao što je veći kapacitet od trenutnih DRAM-ova, sa sličnim ili bržim vremenima pristupa, ali bez nestabilnosti potonjih. Nadalje, mnoge nove tehnologije u razvoju nude i veću energetsku učinkovitost, što je važno u podatkovnim centrima. A u slučaju lokalnog napajanja čvora, podaci se ne bi gubili. Također je važno zapamtiti da podaci smješteni u SCM slijede kraći I/O put i smanjuju skupljanje smeća na velikim blokovima podataka.
U računarstvu, sakupljanje smeća ili GC je način automatskog upravljanja memorijom. GC pokušava vratiti memoriju koju je program dodijelio, ali više ne koristi; drugim riječima, oslobađa taj memorijski resurs. To oslobađa program od potrebe za izvršavanjem zadataka upravljanja memorijom; drugim riječima, ne mora specificirati koje objekte treba dealocirati i osloboditi.
Ali, unatoč svojim prednostima, oni također imaju Neki nedostaci, zbog čega još nisu široko prihvaćene. Jedna od najvećih zamki je ta što se temelje na tehnologijama koje su još u razvoju ili trebaju sazrijeti, budući da prvi lansirani proizvodi nisu dosegli granice potencijala koji se teoretski očekivao. Nadalje, budući da su to egzotične tehnologije, njihova proizvodnja može biti skuplja.
Primjeri SCM proizvoda
Kao što sam već spomenuo, postoje neki primjeri proizvoda koji su lansirani na tržište i smatraju se vrstama komercijalnih SCM implementacija, kao što su:
- Intel Optane: lansiran je 2018. godine, proizvod posebno razvijen za HPC, umjetnu inteligenciju i ostale primjene, omogućujući poboljšanje performansi zahvaljujući ovoj SCM memoriji temeljenoj na 3D XPointu, tehnologiji razvijenoj zajedno s Micronom. Iako je lansirano nekoliko formata ove memorije, poput M.2 NVMe formata, PCIe kartica za proširenje, postojao je i jedan u DIMM formatu pod nazivom Optane Persistent Memory ili PMem. Kapacitet ovih DIMM modula kretao se od 128 GB do 512 GB po modulu. Međutim, 2021. godine Intel je odlučio zaustaviti razvoj ove memorije, a cilj se usmjerio na otvoreni standard Compute Express Link (CXL), koji se činio obećavajućim.
- Samsung Z-SSDJužnokorejska tvrtka također bi stvorila medij niske latencije, tipa SCM, temeljen na drugačijoj tehnologiji od prethodne. U ovom slučaju korištena je varijacija V-NAND-a, nazvana Z-NAND, koja je organizirana u 48 slojeva memorijskih ćelija temeljenih na tranzistorima s plutajućim vratima.
- Western Digital Ultrastar DC ME200 pogoni za proširenje memorije: može se koristiti za proširenje postojeće sistemske memorije, poticanje konsolidacije poslužitelja i smanjenje složenosti dijeljenja velikih, višeterabajtnih skupova podataka na više poslužitelja. Ovo je SCM rješenje koje je AMD koristio za svoje sustave temeljene na EPYC-u kako bi se natjecao s Intelovim rješenjem.
- Kioxia XL-Flash SCMOva tvrtka, ranije Toshiba Memory, također je razvila vlastitu SCM tehnologiju, poznatu kao ova. Ovi proizvodi koristili su oblik sličan SSD-u, ali s planovima da ga prenesu na DRAM sabirnicu.
- Pametne modularne tehnologije DuraMemoryOvo drugo rješenje trajne memorije u modulima također je još jedan značajan primjer, iako je u ovom slučaju dizajnirano za industriju i okruženja gdje su potrebne robusnost i pouzdanost u nepovoljnim uvjetima.
Svi ovi događaji, između ostalog, učinili su mnoge veliki dobavljači IT tvrtke, posebno HPC tvrtke, zainteresirat će se za ove proizvode i uključiti ih u svoja rješenja. Neki primjeri korištenja SCM-a u komercijalnim i poslovnim sustavima uključuju:
- Dell EMCAmerička tvrtka je najavila da će koristiti Intel Optane PMem za poboljšanje performansi svojih PowerMax SAN sustava.
- Hewlett Packard Enterprise (HPE): također bi prodro u SCM s poslovnim rješenjima kao što su Nimble Storage SAN-ovi, temeljeni na Optaneu.
- Hitachi Vantara: Japanska tvrtka je također ponudila svoju Virtual Storage Platform 5000 Series, s mogućnošću da korisnici koriste SCM, koji djeluje kao međuspremnik ili predmemorija.
- Lenovo: Očekuje se da će kineski gigant osobnog računalstva i HPC-a također najaviti podršku za Intel Optane za svoje ThinkSystem servere.
- MemVergeOsnovan 2017. godine, ovaj startup razvio je sustav poznat kao Memory Machine, koji je virtualizirao DRAM i Intel Optane kako bi stvorio medij za pohranu velikog kapaciteta, trajnu pohranu. Ideja je bila koristiti ove sustave za snimke stanja, replikaciju poslužitelja i druge svrhe.
- NetApp: dizajnirao softver Memory Accelerated Data (Max Data). Ovaj projekt koristi Pleexistor tehnologiju i podržava Intel Optane SCM.
- Čista pohranaIdeja iza ove tvrtke bila je kombinirati NVMe flash memoriju i module koje je sama razvila i nazvala DirectMemory, što je rezultiralo onim što je komercijalno poznato kao FlashArray//X all-flash, koristeći dual-port Intel Optane uređaje.
- StorOneSlično prethodnom, budući da je All-Flash Array.next sustav koji sadrži Optane memoriju zajedno s Intel QLC 3D NAND memorijom, a njime upravlja S1 softver.
- Ogromni podaciOva druga tvrtka stvorila je međuspremnik za pisanje temeljen na SCM-u kako bi ubrzala AI opterećenja.
Budućnost SCM-a
Ukratko, vidjeli smo neke pokušaje tehnologija i proizvoda koji koriste neki oblik SCM-a, ali se nisu sasvim primili na tržištu iz ovog ili onog razloga. Razvoj je još uvijek potreban, kao i zrelost nekih tehnologija na kojima se ti uređaji temelje. I, unatoč pesimizmu mnogih, ovo izvješće možda ima obećavajuću budućnost.