SCM: Która pamięć ma najlepszą pamięć RAM i najlepsze cechy dysku SSD?

Ostatnia aktualizacja: 30 października 2023
Bity, SCM

W świecie IT nieustannie trwa walka o nowe rozwiązania w zakresie pamięci. Jednym z priorytetów jest stworzenie pamięci, która łączy w sobie to, co najlepsze z obu światów: pamięci RAM i dysku SSD. To znaczy pamięci tak szybkiej, jak pamięć podstawowa, ale o pojemności i trwałości pamięci dodatkowej. I właśnie w tym kierunku zmierzamy. SCM które prezentujemy Państwu dzisiaj…

Obecna hierarchia pamięci

Przypomnijmy, że pamięć w obecnej architekturze komputerowej ma hierarchia pamięci w formie piramidy, od najszybszej, najdroższej i o najniższej wydajności na górze, do najtańszej, najwolniejszej i o największej wydajności u podstawy:

  • poziom 0:Na górze mamy najszybszych ze wszystkich, czyli registros procesora, choć ma też najmniejszą pojemność. Rejestry zazwyczaj mają rozmiar od 32 do 64 bitów lub więcej. Jednak pomimo niewielkiej pojemności, są one zbudowane z bardzo szybkich przerzutników i dostęp do nich zajmuje mniej niż 0.5 ns.
  • poziom 1: Tuż pod rejestrami znajduje się pamięć podręczna, od L0 lub L1 do LLC (Pamięć podręczna ostatniego poziomu). Można tu nawet uwzględnić pewne bufory, takie jak TLB, który jest również rodzajem pamięci podręcznej. Oznacza to, że często możemy znaleźć L1, L2 i L3, z kilkoma wyjątkami. Pamięć ta ma zwykle większą pojemność niż rejestry, od kilku KB do kilku MB. Jednak komórki w tej pamięci to SRAM. To sprawia, że ​​są one bardzo szybkie, choć nie tak szybkie jak rejestry, ale szybsze niż poziomy poniżej nich. Mówimy tu o czasach dostępu, które wynoszą zwykle od 1 ns do kilkudziesięciu nanosekund, w zależności od poziomu, lub innymi słowy, od około 4 cykli zegara procesora do 50 lub 70 cykli na wyższych poziomach. Na przykład, L1 może mieć typowy czas dostępu wynoszący 1 ns, podczas gdy L2 może mieć około 3.3 ns, L3 między 12.8 ns, a L4 42.4 ns… Należy również dodać, że zarówno poziom 0, jak i poziom 1 znajdują się obecnie w samym procesorze.
  • poziom 2To jest to, co jest znane jako pamięć podstawowa, czyli pamięć główna. To znaczy RAM (pamięć wirtualna może być tu uwzględniona, choć należy pamiętać, że jest to część umieszczona na poziomie 3). Pamięć ta ma większą pojemność niż pamięć podręczna, kilka GB, ale prawdą jest również, że czasy dostępu są wolniejsze, około 10 ns. Może się to różnić w zależności od rodzaju pamięci, ponieważ opóźnienia i częstotliwość taktowania nie są we wszystkich takie same, ale to tylko dla porównania. Dzieje się tak, ponieważ jest to pamięć złożona z komórek DRAM, wolniejsza niż SRAM, ale tańsza, co pozwala na uzyskanie większej pojemności przy umiarkowanej cenie. Poziomy 0, Poziom 1 i Poziom 2 to pamięci, do których procesor ma bezpośredni dostęp. Nawiasem mówiąc, jak wiadomo, procesor graficzny również ma własną pamięć główną, czyli VRAM, i zazwyczaj jest to DRAM, a w niektórych przypadkach także HBM. HBM może być również używane przez procesor, choć jest to bardziej egzotyczne.
  • poziom 3Pamięć nieulotna (NVM) może być tutaj uwzględniona, ponieważ wszystkie poprzednie poziomy były ulotne, co oznacza, że ​​po odłączeniu zasilania komórek pamięci ich zawartość zostaje utracona. Ten typ pamięci zachowuje wszystkie zapisane informacje nawet po odłączeniu zasilania. Należy również zauważyć, że procesor nie ma bezpośredniego dostępu do tego typu pamięci i w wielu przypadkach wymaga wsparcia ze strony systemu operacyjnego. Ten poziom jest ogólnie nazywany pamięcią pomocniczą, tak jak poziom 1 jest nazywany pamięcią podstawową. Poziom 3 obejmuje dyski twarde HDD i SSD. Te pierwsze są magnetyczne i mają czas dostępu około 3 ms, podczas gdy te drugie to znacznie szybsze jednostki pamięci flash, z czasem dostępu wynoszącym około 0.1 ms. Jak widać, przechodzimy tutaj od nanosekund do milisekund, ale należy również zaznaczyć, że jest to pamięć znacznie tańsza w produkcji, więc może być wdrażana w pojemnościach setek, a nawet tysięcy GB lub TB.
  • poziom 4W tym przypadku czas dostępu jest dłuższy niż w poprzednich przypadkach i w niektórych przypadkach może przekraczać 10 ms. Może to dotyczyć nośników wymiennych, pamięci optycznej (CD/DVD/BD), taśm magnetycznych i innych pamięci wejścia/wyjścia.

Dobrze, więc gdy już zrozumiemy tę piramidę lub hierarchię pamięci, następnym krokiem będzie przyjrzenie się temu, czym jest SCM...

W poszukiwaniu uniwersalnej pamięci

Aby spróbować udoskonalić tę hierarchię pamięci, naukowcy nieustannie opracowują nowe technologie i poszukują tzw. „pamięć uniwersalna”Termin ten odnosi się do urządzenia pamięci masowej, które łączy w sobie zalety pamięci DRAM, szybkość pamięci SRAM i nieulotną naturę pamięci flash, a jednocześnie charakteryzuje się nieskończoną i długotrwałą trwałością.

  Najlepsze pasty termoprzewodzące 2026 roku i jak wybrać odpowiednią

Oczywiste jest, że zebranie wszystkich tych cech w jednym raporcie nie jest łatwe, Wielu ekspertów wątpi, że jest to możliwe.. Trochę Niedawno opublikowane wspomnienia mogą spełniać niektóre z poniższych cech, chociaż z jednego lub drugiego powodu nie stanowią one rozwiązania ostatecznego.

Mam na myśli pamięci takie jak FRAM lub FeRAM, MRAM, PCM, RRAM lub ReRAM, NRAM lub Nano-RAM, PRAM lub PCRAM, pamięć oparta na memrystorach, PMC, pamięć bąbelkowa, pamięć wyścigowa, UltraRAM (w trakcie badań nad półprzewodnikami takimi jak InGaAs, GaSb, AlGaAs, GaAs, AlSb, InAs), 3D XPoint, Millipede, pamięć oparta na FeFET, NOVRAM itp. Wszystkie one mają ciekawe zalety, ale także wady, które wciąż nie czynią ich odpowiednimi do tego, by uważać je za pamięci uniwersalne i które mogą zastąpić poziomy 2 i 1, jak widać w poprzedniej piramidzie, a także wstawiać się jako pamięć między pamięć główną a pamięć podrzędną.

Czym jest pamięć NVRAM?

FRAM FeRam

La NVRAM (pamięć nieulotna o dostępie swobodnym) To rodzaj pamięci o swobodnym dostępie, podobnej do RAM, która nie traci danych po odłączeniu zasilania, co czyni ją nieulotną. Ideą jest uzyskanie pamięci o właściwościach pamięci SRAM lub DRAM pod względem szybkości dostępu, ale bez utraty przechowywanych informacji, jak w przypadku pamięci podręcznej. Technologia ta mogłaby znaleźć zastosowanie w wielu dziedzinach, od pamięci oprogramowania sprzętowego po mikrokontrolery w przemyśle, a także w aplikacjach HPC, lotnictwie i kosmonautyce, Internecie rzeczy (IoT), obliczeniach rozproszonych i maszynach wirtualnych.

Pomyśl o wszystkich korzyści Jak ta pamięć wyglądałaby w porównaniu z obecną konwencjonalną piramidą, taką jak:

  • Będąc tak szybką pamięcią jak DRAM lub SRAM, osiąga bardzo szybki czas dostępu, co pozwala na jej wykorzystanie jako pamięci głównej.
  • Ponieważ jest to pamięć nieulotna, jej zużycie będzie bardzo niskie, gdyż nie będą wymagane cykle odświeżania ani stałe zasilanie pamięci, jak ma to miejsce w przypadku pamięci ulotnej.
  • Duże pojemności pozwalają na przechowywanie dużych ilości informacji.
  • Te ogniwa charakteryzują się również większą niezawodnością niż obecne ogniwa flash, dzięki czemu dane mogą być przechowywane długoterminowo, bez pogorszenia jakości po tysiącach lub milionach cykli, jak to ma miejsce obecnie w przypadku innych ogniw. Jak wiadomo, w zależności od tego, czy Komórki pamięci flash to NOR, NAND lub pochodne, niezawodność może być mniej lub bardziej krótka.

Ta trwała pamięć może być rozwiązaniem niektórych obecnych problemów, biorąc pod uwagę istniejące ograniczenia technologiczne i lukę lub luka w osiągnięciach prąd pomiędzy pamięcią RAM i procesorem.

Jak wiesz, obecnie istnieje kilka Soluciones Należą do nich szybsza pamięć ulotna do przechowywania informacji w trakcie użytkowania, umożliwiając szybszy dostęp. Gdy zasilanie jest bliskie odcięcia, zawartość jest przenoszona do pamięci nieulotnej. Oznacza to jednak konieczność stosowania dwóch rodzajów pamięci, co zwiększa koszty produkcji i wiąże się z innymi problemami. Dzięki tym modułom masz wszystko w jednym.

Ostatnio wprowadzono pewne standardy, takie jak: NVDIMM, czyli format DIMM (Dual In-line Memory Module) dla tego typu pamięci trwałej lub nieulotnej. W ten sposób pamięci te mogłyby być implementowane w formie modułów, podobnie jak obecna pamięć RAM, i instalowane w gniazdach podobnych do tych obecnie dostępnych. Jednak w przeciwieństwie do konwencjonalnej pamięci DRAM, miałyby one zalety wymienione powyżej.

Pamięci NVDIMM wywodzą się z technologii znanej jako BBU DIMM (pamięć DIMM z podtrzymaniem bateryjnym), który wykorzystywał baterię zapasową do podtrzymywania zasilania w pamięci ulotnej do 72 godzin w przypadku zaniku zasilania. Nie jest to jednak celem tego SCM ani pamięci uniwersalnej, ponieważ użycie baterii oznacza konieczność ich ładowania lub wymiany, ma większy wpływ na środowisko itd.

To pomocnicze źródło zasilania jest niezbędne, aby umożliwić głównej pamięci ulotnej przeniesienie jej zawartości do pamięci nieulotnej w przypadku awarii zasilania. Obecnie dostępne są również moduły NVDIMM, które nie wymagają zasilania bateryjnego, lecz oparte na… superkondensatoryczyli kondensatory o dużej pojemności, które są pełne podczas użytkowania i gdy nastąpi nagła przerwa w dostawie prądu, mają wystarczająco dużo energii, aby pozostać aktywne na tyle długo, by zapobiec utracie danych.

Niektóre z tych rozwiązań były pierwotnie używane do buforowania niektórych adapterów magistrali hosta (HBA) dysków RAID, co pozwalało na przetrwanie pamięci podręcznej w przypadku awarii zasilania. Mają one jednak również inne zastosowania, jak się przekonasz.

Aby ograniczyć wykorzystanie tych systemów, niektóre z nich powstały standardy JEDEC dla NVDIMM które powinieneś wiedzieć, takie jak:

  • NVDIMM-F: Jest to standardowy slot dla modułów DIMM z układami pamięci flash. Użytkownicy systemu muszą połączyć moduł pamięci masowej DIMM z tradycyjnym modułem DRAM DIMM, tj. oba moduły oddzielnie. Jest on dostępny od 2014 roku, wraz z produktami takimi jak 3D XPoint PCM ogłoszonymi przez firmy Intel i Micron Technology.
  • Płytka NVDIMM-NW tym przypadku oba rodzaje pamięci są połączone w jeden moduł DIMM. Oznacza to, że w tym samym module znajduje się pamięć flash i tradycyjna pamięć DRAM. Pozwala to systemowi na bezpośredni dostęp do tradycyjnej pamięci DRAM podczas pracy. W przypadku zaniku zasilania lub wyłączenia systemu, moduł przesyła dane z ulotnej, tradycyjnej pamięci DRAM do trwałej pamięci flash i kopiuje je z powrotem po przywróceniu zasilania. Podczas kopiowania danych z pamięci DRAM do pamięci flash, moduł jest zasilany niewielkim zapasowym źródłem zasilania. Firmy Sony i Viking Technology ogłosiły również wprowadzenie pamięci dla tego typu slotów opartej na technologii ReRAM.
  • NVDIMM-PSpecyfikacja pojawiła się w lutym 2021 roku, umożliwiając trwałą pamięć główną, wraz z pojawieniem się nowych modułów SCM, czyli uniwersalnych modułów pamięci. Co więcej, mogłyby one współdzielić połączenia z modułami DIMM DDR4 lub DDR5. W związku z tym możliwe byłoby ich zastąpienie. Przykładami tego typu są moduły Samsung/Netlist zaprezentowane w 2015 roku, prawdopodobnie oparte na pamięci Z-NAND.
  • NVDIMM-X:To nie jest standard JEDEC, ale też jest interesujący. W tym przypadku mamy moduł pamięci DDR DIMM, ale z pamięcią flash NAND, opracowany przez Xitore.
  Pamięć wirtualna: czym jest i do czego służy

Dobrze, teraz przejdziemy do SCM, co, jak zaraz zobaczycie, wiąże się ze wszystkim, co tutaj wyjaśniłem, ale wyjaśnienie tego było konieczne, zanim zabraliśmy się za pracę nad tą nową koncepcją...

Czym jest SCM?

La SCM (pamięć klasy pamięci masowej), która jest głównym tematem tego artykułu, to rodzaj pamięci fizycznej, która stara się ugruntować swoją pozycję jako pamięć uniwersalna, a przynajmniej objąć niektóre jej aspekty. Dzięki SCM mamy pamięć, która łączy w sobie to, co najlepsze z pamięci dynamicznej o swobodnym dostępie (DRAM), to, co najlepsze z pamięci flash NAND, oraz źródło zasilania dla trwałości danych.

Krótko mówiąc, dzięki SCM moglibyśmy osiągnąć: dostęp (zapis i odczyt) do danych jest szybszy niż dostęp do danych na lokalnie podłączonych dyskach SSD (SSD) za pośrednictwem PCIe, magnetycznych dyskach twardych (HDD) i zewnętrznych macierzach pamięci masowej. Pamięć SCM jest trwalsza niż DRAM i może odczytywać i zapisywać dane nawet 10 razy szybciej niż dyski NAND. Można jednak osiągnąć większą pojemność niż w przypadku konwencjonalnej pamięci RAM przy przystępnej cenie, a także dłuższą żywotność niż w przypadku obecnych dysków SSD.

Jednym z zastosowań, w których można wykorzystać te pamięci SCM, jest w centrach danych. I mogą się przyczynić:

  • Czas oczekiwaniaDysponujemy wydajnym nośnikiem danych o niskim opóźnieniu, co oznacza krótszy czas dostępu niż w przypadku nośników zapasowych. Jest to korzystne w przypadku obciążeń wymagających obsługi dużych ilości danych z wysoką wydajnością.
  • TrwałeZasilacz rezerwowy zapewnia zachowanie danych i kodu programu w przypadku awarii systemu lub zaniku zasilania. Zapewnia to adresowalną bajtowo, trwałą warstwę pamięci pomiędzy pamięcią DRAM a pamięcią flash. Zastosowanie technologii SCM rozszerza wydajność pamięci DRAM na pamięć nieulotną. Dzięki temu po przywróceniu zasilania system może wznowić pracę od miejsca, w którym ją przerwał, bez utraty danych i czasu – co jest kluczowe w systemach o wysokiej dostępności. Co więcej, w wielu przypadkach wyeliminowana zostałaby potrzeba ciągłego odświeżania.
  • Mniejsze uzależnienie od mediów wtórnychDzięki SCM mniej danych musi być przesyłanych między pamięcią główną a pamięcią dodatkową, ponieważ ma ona większą pojemność. Zmniejsza to obciążenie procesora, gdy system operacyjny potrzebuje dostępu do nośników dodatkowych, jak wyjaśniłem wcześniej, co przekłada się na wzrost wydajności. Urządzenie SCM może pracować z częstotliwością taktowania niemal tak wysoką jak pamięć DRAM i pamięć statyczna RAM (SRAM), ale z zaletą trwałości.

Zalety i wady SCM

Jak już wspominałem w całym artykule, wykorzystanie SCM może mieć wielkie zalety W porównaniu z pamięcią konwencjonalną, taką jak większa pojemność niż obecne pamięci DRAM, z podobnym lub krótszym czasem dostępu, ale bez charakterystycznej dla tych ostatnich zmienności. Co więcej, wiele nowych technologii w fazie rozwoju oferuje również większą efektywność energetyczną, co jest istotne w centrach danych. W przypadku lokalnego zasilania węzła dane nie zostaną utracone. Należy również pamiętać, że dane umieszczone w pamięci SCM podążają krótszą ścieżką wejścia/wyjścia i zmniejszają gromadzenie śmieci w dużych blokach danych.

W informatyce, zbieranie śmieci, czyli GC, to sposób automatycznego zarządzania pamięcią. GC próbuje odzyskać pamięć przydzieloną przez program, ale już nieużywaną; innymi słowy, zwalnia ten zasób pamięci. Dzięki temu program nie musi wykonywać zadań związanych z zarządzaniem pamięcią; innymi słowy, nie musi określać, które obiekty zwolnić i zwolnić.

Ale pomimo swoich zalet mają też Niektóre wady, dlatego nie zostały jeszcze powszechnie przyjęte. Jedną z największych wad jest to, że opierają się na technologiach, które wciąż są w fazie rozwoju lub wymagają dopracowania, ponieważ pierwsze wprowadzone na rynek produkty nie osiągnęły jeszcze teoretycznie oczekiwanych granic potencjału. Ponadto, ponieważ są to technologie egzotyczne, ich produkcja może być droższa.

  Czym jest HFR (High Frame Rate) i dlaczego jest ważny?

Przykłady produktów SCM

Jak wspomniałem powyżej, istnieją kilka przykładów produktów które zostały wprowadzone na rynek i są uważane za typy komercyjnych wdrożeń SCM, takie jak:

  • Intel Optane: został wprowadzony na rynek w 2018 roku. Był to produkt opracowany specjalnie z myślą o zastosowaniach HPC i AI, umożliwiający poprawę wydajności dzięki pamięci SCM opartej na technologii 3D XPoint, opracowanej wspólnie z firmą Micron. Chociaż wprowadzono na rynek kilka formatów tej pamięci, takich jak formaty M.2 NVMe czy karty rozszerzeń PCIe, istniał również jeden w formacie DIMM o nazwie Optane Persistent Memory lub PMem. Pojemności tych modułów DIMM wahały się od 128 GB do 512 GB na moduł. Jednak w 2021 roku Intel zdecydował się zakończyć rozwój tej pamięci, a jego celem stało się skupienie się na otwartym standardzie Compute Express Link (CXL), który wydawał się bardziej obiecujący.
  • Dysk SSD Samsung ZPołudniowokoreańska firma miała również stworzyć nośnik pamięci typu SCM o niskim opóźnieniu, oparty na innej technologii niż poprzednia. W tym przypadku wykorzystano odmianę pamięci V-NAND, zwaną Z-NAND, zorganizowaną w 48 warstw komórek pamięci opartych na tranzystorach z bramką ruchomą.
  • Dyski rozszerzające pamięć Western Digital Ultrastar DC ME200: może służyć do rozszerzenia istniejącej pamięci systemowej, wspierania konsolidacji serwerów i uproszczenia procesu dzielenia dużych, wieloterabajtowych zbiorów danych na wiele serwerów. Jest to rozwiązanie SCM, które AMD wykorzystało w swoich systemach opartych na procesorach EPYC, aby konkurować z rozwiązaniem Intela.
  • Kioxia XL-Flash SCM:Ta firma, dawniej Toshiba Memory, opracowała również własną technologię SCM, znaną jako ta. Produkty te miały format zbliżony do dysku SSD, ale planowano przenieść ją do magistrali DRAM.
  • Inteligentne technologie modułowe DuraMemory:To inne rozwiązanie trwałej pamięci w modułach jest również godnym uwagi przykładem, chociaż w tym przypadku jest przeznaczone do zastosowań przemysłowych i środowisk, w których wymagana jest wytrzymałość i niezawodność w niesprzyjających warunkach.

Wszystkie te wydarzenia, między innymi, spowodowały, że wiele duzi dostawcy Firmy IT, zwłaszcza firmy HPC, zainteresują się tymi produktami i włączą je do swoich rozwiązań. Oto kilka przykładów zastosowania SCM w systemach komercyjnych i korporacyjnych:

  • Dell EMCAmerykańska firma ogłosiła, że ​​zamierza wykorzystać technologię Intel Optane PMem w celu zwiększenia wydajności swoich systemów PowerMax SAN.
  • Firma Hewlett Packard Enterprise (HPE):wkroczyłby również do sektora SCM z rozwiązaniami dla przedsiębiorstw, takimi jak Nimble Storage SANs, opartymi na Optane.
  • Hitachi Vantara: Japońska firma zaoferowała również platformę Virtual Storage Platform serii 5000, dającą użytkownikom możliwość korzystania z SCM, działającego jako bufor lub pamięć podręczna.
  • Lenovo: Oczekuje się również, że chiński gigant komputerów osobistych i HPC ogłosi obsługę technologii Intel Optane w swoich serwerach ThinkSystem.
  • MemVergeZałożony w 2017 roku startup opracował system znany jako Memory Machine, który wirtualizował pamięć DRAM i pamięć Intel Optane, tworząc trwały nośnik danych o dużej pojemności. Pomysł polegał na wykorzystaniu tych systemów do tworzenia migawek, replikacji serwerów i innych celów.
  • NetApp: zaprojektował oprogramowanie Memory Accelerated Data (Max Data). Projekt wykorzystuje technologię Pleexistor i obsługuje Intel Optane SCM.
  • Czysty magazynPomysł, który przyświecał tej firmie, polegał na połączeniu pamięci flash NVMe i modułów opracowanych przez nią samą i nazwanych DirectMemory, co zaowocowało powstaniem pamięci komercyjnie znanej jako FlashArray//X all-flash, wykorzystującej dwuportowe urządzenia Intel Optane.
  • StorOne:Podobnie jak poprzednio, ponieważ All-Flash Array.next to system, który łączy pamięć Optane z pamięcią Intel QLC 3D NAND i jest zarządzany przez oprogramowanie S1.
  • Ogromne dane:Ta druga firma stworzyła bufor zapisu oparty na SCM w celu przyspieszenia obciążeń związanych ze sztuczną inteligencją.

Przyszłość SCM

Krótko mówiąc, widzieliśmy kilka prób wprowadzenia technologii i produktów wykorzystujących jakąś formę SCM, ale z różnych powodów nie przyjęły się one na rynku. Nadal potrzebny jest rozwój, podobnie jak dojrzałość niektórych technologii, na których opierają się te urządzenia. I pomimo pesymizmu wielu osób, niniejszy raport… może mieć obiecującą przyszłość.