Dunia TI terus berjuang untuk menemukan solusi memori baru. Salah satu prioritasnya adalah menciptakan memori yang menggabungkan keunggulan dari dua dunia: RAM dan SSD. Artinya, memori yang secepat memori primer, tetapi dengan kapasitas dan sifat non-volatil memori sekunder. Dan ke sanalah arahnya. SCM yang kami persembahkan kepada Anda hari ini…
Hirarki memori saat ini
Sebagai pengingat, katakanlah memori dalam arsitektur komputer saat ini memiliki hierarki memori dalam bentuk piramida, mulai dari yang tercepat, termahal, dan berkapasitas terendah di bagian atas, hingga yang termurah, paling lambat, dan berkapasitas tertinggi di bagian bawah:
- Tingkat 0:Di atas kita memiliki yang tercepat dari semuanya, yaitu arsip CPU, meskipun juga memiliki kapasitas terkecil. Register biasanya berukuran 32-bit hingga 64-bit atau lebih. Namun, meskipun kapasitasnya kecil, register dibangun dari flip-flop yang sangat cepat dan dapat diakses dalam waktu kurang dari 0.5 ns.
- Tingkat 1Tepat di bawah register terdapat memori cache, dari L0 atau L1 hingga LLC (Last Level Cache). Beberapa buffer bahkan dapat disertakan di sini, seperti TLB, yang juga merupakan jenis cache. Artinya, kita sering menemukan L1, L2, dan L3, dengan beberapa pengecualian. Memori ini biasanya memiliki kapasitas yang lebih besar daripada register, berkisar antara beberapa KB hingga beberapa MB. Namun, sel-sel dalam memori ini adalah SRAM. Hal ini membuatnya sangat cepat, meskipun tidak secepat register, tetapi lebih cepat daripada level di bawahnya. Di sini kita berbicara tentang waktu akses yang biasanya berkisar antara 1 ns hingga beberapa puluh nanodetik, tergantung pada levelnya, atau dengan kata lain, dari sekitar 4 siklus clock CPU hingga 50 atau 70 siklus pada level yang lebih tinggi. Misalnya, L1 mungkin memiliki waktu akses tipikal 1 ns, sedangkan L2 bisa sekitar 3.3 ns, L3 antara 12.8 ns, dan L4 pada 42.4 ns… Perlu juga ditambahkan bahwa baik Level 0 maupun Level 1 berada di dalam CPU itu sendiri dalam kasus saat ini.
- Tingkat 2Inilah yang dikenal sebagai memori primer, atau memori utama. Yaitu, RAM (memori virtual dapat disertakan di sini, meskipun perlu diingat bahwa ini adalah bagian yang ditempatkan di Level 3). Memori ini memiliki kapasitas lebih besar daripada cache, beberapa GB, tetapi juga benar bahwa waktu akses lebih lambat, sekitar 10 ns. Ini dapat bervariasi tergantung pada jenis memori, karena latensi dan frekuensi clock tidak sama di semuanya, tetapi hanya untuk memberi Anda referensi. Ini karena ini adalah memori yang terdiri dari sel-sel DRAM, lebih lambat dari SRAM, tetapi lebih murah, yang memungkinkan kapasitas yang lebih tinggi ini dengan harga yang moderat. Level 0, Level 1, dan Level 2 adalah memori yang dapat diakses langsung oleh CPU. Ngomong-ngomong, seperti yang Anda ketahui, GPU juga memiliki memori utamanya sendiri, atau VRAM, dan umumnya DRAM dan juga HBM dalam beberapa kasus. HBM juga dapat digunakan untuk CPU, meskipun ini lebih eksotis.
- Tingkat 3Memori non-volatil (NVM) dapat disertakan di sini, karena semua level sebelumnya bersifat volatil, artinya ketika daya dihilangkan dari sel memori, isinya akan hilang. Jenis memori ini mempertahankan semua informasi yang tersimpan bahkan ketika daya dihilangkan. Penting juga untuk dicatat bahwa jenis memori ini tidak dapat diakses langsung oleh CPU dan, dalam banyak kasus, memerlukan bantuan dari sistem operasi. Level ini umumnya disebut sebagai memori sekunder, sama seperti Level 1 disebut sebagai memori primer. Level 3 mencakup hard drive HDD dan SSD. Yang pertama bersifat magnetis dan memiliki waktu akses sekitar 3 ms, sedangkan yang terakhir adalah unit memori flash yang jauh lebih cepat, dengan waktu akses yang bisa sekitar 0.1 ms. Seperti yang Anda lihat, di sini kita beralih dari nanodetik ke milidetik, tetapi harus juga dikatakan bahwa ini adalah memori yang jauh lebih murah untuk diproduksi, sehingga dapat diimplementasikan dalam kapasitas ratusan atau ribuan GB atau TB.
- Tingkat 4Dalam kasus ini, waktu akses lebih lama daripada sebelumnya, dan terkadang bisa lebih dari 10 ms. Ini dapat mencakup media yang dapat dilepas, memori optik (CD/DVD/BD), pita magnetik, dan memori I/O lainnya.
Oke, setelah kita memahami piramida atau hierarki memori ini, langkah selanjutnya adalah mulai melihat apa itu SCM…
Dalam pencarian memori universal
Untuk mencoba meningkatkan hierarki memori ini, para peneliti terus mengembangkan teknologi baru, dan mencari apa yang disebut "ingatan universal"Istilah ini merujuk pada perangkat penyimpanan yang dapat menggabungkan manfaat biaya DRAM, kecepatan SRAM, dan sifat non-volatil memori flash, sekaligus memiliki daya tahan tak terbatas dan tahan lama.
Jelas, menyatukan semua fitur ini dalam satu laporan bukanlah hal yang mudah, faktanya, Banyak ahli meragukan hal ini mungkin.. Beberapa Memoar yang muncul baru-baru ini mungkin memiliki beberapa karakteristik berikut ini, meskipun itu bukanlah solusi yang pasti karena satu dan lain alasan.
Saya merujuk pada memori seperti FRAM atau FeRAM, MRAM, PCM, RRAM atau ReRAM, NRAM atau Nano-RAM, PRAM atau PCRAM, memori berbasis memristor, PMC, memori gelembung, memori lintasan balap, UltraRAM (semikonduktor yang sedang diselidiki seperti InGaAs, GaSb, AlGaAs, GaAs, AlSb, InAs), 3D XPoint, Millipede, memori berbasis FeFET, NOVRAM, dll. Semuanya dengan kelebihan yang menarik, tetapi juga dengan kekurangan yang tetap tidak membuatnya layak dianggap sebagai memori universal dan yang dapat menggantikan level 2 dan 1, seperti yang dapat dilihat pada piramida sebelumnya, serta menyisipkan diri sebagai memori antara memori utama dan memori sekunder.
Apa itu NVRAM?
La NVRAM (Memori Akses Acak Non-Volatil) Ini adalah jenis memori akses acak seperti RAM, tetapi datanya tidak hilang saat tidak ada daya yang diberikan, sehingga menjadikannya non-volatil. Idenya adalah untuk mencapai memori ini dengan karakteristik SRAM atau DRAM dalam hal kecepatan akses, tetapi tanpa kehilangan informasi yang tersimpan, seperti memori sekunder. Ini bisa menjadi teknologi yang baik untuk digunakan di berbagai bidang, mulai dari penyimpanan firmware hingga mikrokontroler untuk industri, atau untuk digunakan dalam aplikasi HPC, aplikasi kedirgantaraan, IoT, komputasi terdistribusi, aplikasi mesin virtual, dan lain-lain.
Pikirkan semua orang keuntungan-keuntungan Bagaimana memori ini jika dibandingkan dengan piramida konvensional saat ini, seperti:
- Karena secepat DRAM atau SRAM, waktu aksesnya sangat cepat, sehingga dapat digunakan sebagai memori utama.
- Karena bersifat non-volatil, konsumsinya akan sangat rendah, sebab siklus penyegaran dan pengisian memori secara terus-menerus tidak diperlukan sebagaimana halnya dengan memori volatil.
- Kapasitas besar dapat diperoleh untuk menyimpan informasi dalam jumlah besar.
- Sel-sel ini juga memiliki keandalan yang lebih baik daripada sel-sel flash saat ini, sehingga data dapat disimpan dalam jangka panjang, tanpa mengalami penurunan kualitas setelah ribuan atau jutaan siklus seperti yang terjadi saat ini pada sel-sel lain. Seperti yang Anda ketahui, tergantung pada apakah Sel memori flash adalah NOR, NAND, atau turunannya, keandalan bisa lebih atau kurang pendek.
Memori persisten ini bisa menjadi solusi bagi beberapa permasalahan yang ada saat ini mengingat keterbatasan teknologi yang ada dan kesenjangan atau kesenjangan prestasi arus antara RAM dan CPU.
Seperti yang Anda ketahui, saat ini ada beberapa solusi Ini termasuk memori volatil yang lebih cepat untuk menyimpan informasi selama penggunaan, memungkinkan akses yang lebih cepat. Ketika catu daya akan diputus, isinya akan ditransfer ke memori non-volatil. Namun, ini berarti menyertakan dua jenis memori, yang meningkatkan biaya produksi, di antara masalah lainnya. Namun dengan modul-modul ini, Anda akan mendapatkan semuanya dalam satu.
Baru-baru ini beberapa standar telah diluncurkan seperti NVDIMM, yaitu format DIMM (Dual In-line Memory Module) untuk jenis memori permanen atau non-volatil ini. Dengan demikian, memori ini dapat diimplementasikan dalam bentuk modul seperti RAM saat ini dan dipasang di slot yang serupa dengan yang tersedia saat ini. Namun, tidak seperti DRAM konvensional, memori ini memiliki keunggulan yang telah disebutkan sebelumnya.
NVDIMM berevolusi dari teknologi yang dikenal sebagai BBU DIMM (DIMM dengan Baterai Cadangan), yang menggunakan baterai cadangan untuk mempertahankan daya dalam memori volatil hingga 72 jam jika terjadi pemadaman listrik. Namun, ini bukanlah tujuan SCM atau memori universal ini, karena penggunaan baterai berarti baterai perlu diisi ulang atau diganti, memiliki dampak lingkungan yang lebih besar, dan sebagainya.
Sumber daya tambahan ini diperlukan agar memori volatil utama memiliki waktu untuk mentransfer isinya ke memori non-volatil jika terjadi kegagalan daya. Saat ini, terdapat juga beberapa modul NVDIMM yang tidak bergantung pada baterai, melainkan pada superkapasitor, yaitu kapasitor berkapasitas tinggi yang penuh selama penggunaan dan ketika terjadi pemadaman listrik tiba-tiba, kapasitor tersebut memiliki cukup energi untuk tetap aktif cukup lama untuk mencegah hilangnya data.
Beberapa solusi ini awalnya digunakan untuk menyimpan cache beberapa adaptor bus host (HBA) untuk drive RAID, yang memungkinkan cache tersebut tetap berfungsi saat listrik padam. Namun, solusi ini memiliki aplikasi lebih dari itu, seperti yang akan Anda lihat.
Untuk menekan penggunaan sistem ini, beberapa telah lahir standar di bawah JEDEC untuk NVDIMM yang harus Anda ketahui, seperti:
- NVDIMM-FIni adalah standar slot untuk modul DIMM dengan chip memori flash. Pengguna sistem harus menggabungkan DIMM penyimpanan dengan DIMM DRAM tradisional, yaitu kedua modul secara terpisah. Standar ini telah tersedia sejak tahun 2014, dengan produk seperti 3D XPoint PCM yang diumumkan oleh Intel dan Micron Technology.
- NVDIMM-NDalam hal ini, kedua jenis memori digabungkan menjadi satu modul DIMM. Artinya, kita memiliki penyimpanan flash dan DRAM tradisional dalam modul yang sama. Hal ini memungkinkan sistem untuk mengakses DRAM tradisional secara langsung saat sistem sedang berjalan. Jika terjadi pemadaman listrik atau shutdown, modul akan memindahkan data dari DRAM tradisional yang volatil ke memori flash persisten dan menyalinnya kembali saat daya pulih. Sumber daya cadangan kecil digunakan untuk modul saat data disalin dari DRAM ke memori flash. Sony dan Viking Technology juga mengumumkan memori untuk jenis slot ini berbasis ReRAM.
- NVDIMM-PSpesifikasi ini muncul pada Februari 2021, memungkinkan penggunaan memori utama persisten, dengan munculnya SCM atau modul memori universal baru ini. Lebih lanjut, SCM atau modul memori universal ini dapat berbagi interkoneksi yang identik dengan DIMM DDR4 atau DDR5. Oleh karena itu, modul-modul ini dapat diganti. Contoh jenis ini termasuk modul Samsung/Netlist yang diumumkan pada tahun 2015, yang kemungkinan berbasis Z-NAND.
- NVDIMM-XIni bukan standar JEDEC, tetapi juga menarik. Dalam kasus ini, kita memiliki modul DIMM memori DDR, tetapi dengan penyimpanan flash NAND, yang dikembangkan oleh Xitore.
Oke, sekarang kita akan beralih ke SCM, yang terkait dengan semua yang sudah saya jelaskan di sini, seperti yang akan Anda lihat, tetapi ini perlu dijelaskan sebelum mulai mengerjakan konsep baru ini...
Apa itu SCM?
La SCM (Memori Kelas Penyimpanan), yang menjadi fokus utama artikel ini, adalah jenis memori fisik yang berupaya memantapkan dirinya sebagai memori universal, atau setidaknya mencakup sebagian dari basisnya. Dengan SCM, kita memiliki memori yang menggabungkan keunggulan memori akses acak dinamis (DRAM), keunggulan memori flash NAND, dan sumber daya untuk persistensi data.
Singkatnya, apa yang akan kita capai dengan SCM adalah memiliki akses (menulis dan membaca) ke data lebih cepat daripada akses data pada solid-state drive (SSD) yang terpasang secara lokal melalui PCIe, hard drive magnetik (HDD), dan array penyimpanan eksternal. SCM lebih tahan lama daripada DRAM dan dapat membaca serta menulis data hingga 10 kali lebih cepat daripada drive NAND. Namun, kapasitas yang lebih tinggi daripada RAM konvensional juga dapat dicapai dengan biaya yang terjangkau, serta masa pakai yang lebih lama daripada SSD saat ini.
Salah satu aplikasi yang dapat memanfaatkan memori SCM ini adalah di pusat dataDan mereka dapat berkontribusi:
- LatensiKami memiliki media penyimpanan berkinerja tinggi dengan latensi rendah, yang berarti waktu akses lebih cepat daripada media penyimpanan sekunder. Ini merupakan faktor positif untuk beban kerja yang membutuhkan penanganan data dalam jumlah besar dengan kinerja yang baik.
- GigihCatu daya cadangan memastikan data dan kode program tetap tersimpan selama terjadi kegagalan sistem atau kehilangan daya. Ini menyediakan lapisan penyimpanan persisten yang dapat dialamatkan byte antara DRAM dan flash. Penggunaan SCM memperluas kinerja cepat DRAM ke penyimpanan non-volatil. Oleh karena itu, ketika daya dipulihkan, sistem dapat melanjutkan proses tepat dari titik terakhirnya, tanpa kehilangan data atau waktu—hal yang vital dalam sistem ketersediaan tinggi. Lebih lanjut, dalam banyak kasus, kebutuhan akan penyegaran data yang konstan akan tereliminasi.
- Kurang bergantung pada media sekunderDengan SCM, lebih sedikit data yang perlu dipindahkan antara memori utama dan penyimpanan sekunder karena kapasitasnya yang lebih besar. Hal ini mengurangi beban kerja CPU ketika sistem operasi membutuhkan akses ke media sekunder, seperti yang telah dijelaskan sebelumnya, sehingga meningkatkan kinerja. Perangkat SCM dapat mencapai kecepatan clock hampir sama cepatnya dengan DRAM dan RAM statis (SRAM), tetapi dengan keunggulan persistensi.
Keuntungan dan kerugian SCM
Seperti yang telah saya komentari di seluruh artikel, penggunaan SCM dapat memiliki keuntungan besar dibandingkan dengan memori konvensional, misalnya kapasitas yang lebih besar daripada DRAM saat ini, dengan waktu akses yang serupa atau lebih cepat, tetapi tanpa volatilitas yang dimiliki DRAM. Lebih lanjut, banyak teknologi baru yang sedang dikembangkan juga menawarkan efisiensi energi yang lebih tinggi, yang penting di pusat data. Dan, jika terjadi pasokan daya lokal ke node, data tidak akan hilang. Penting juga untuk diingat bahwa data yang ditempatkan di SCM mengikuti jalur I/O yang lebih pendek dan mengurangi pengumpulan sampah pada blok data besar.
Dalam komputasi, pengumpulan sampah, atau GC, adalah cara untuk mengelola memori secara otomatis. GC mencoba mengambil kembali memori yang dialokasikan oleh suatu program tetapi tidak lagi digunakan; dengan kata lain, GC membebaskan sumber daya memori ini. Hal ini membebaskan program dari keharusan melakukan tugas-tugas manajemen memori; dengan kata lain, GC tidak perlu menentukan objek mana yang akan dihapus alokasinya dan dibebaskan.
Namun, meskipun memiliki kelebihan, mereka juga memiliki Beberapa kelemahan, itulah sebabnya teknologi ini belum diadopsi secara luas. Salah satu kendala terbesarnya adalah teknologi ini didasarkan pada teknologi yang masih dalam tahap pengembangan atau perlu dimatangkan, karena produk pertama yang diluncurkan belum mencapai batas potensi yang diharapkan secara teoritis. Selain itu, karena merupakan teknologi eksotis, biaya produksinya bisa lebih mahal.
Contoh produk SCM
Seperti yang telah saya sebutkan di atas, ada beberapa contoh produk yang telah diluncurkan di pasar dan dianggap sebagai jenis implementasi SCM komersial, seperti:
- Intel Optane: diluncurkan pada tahun 2018, sebuah produk yang dikembangkan khusus untuk HPC, AI, dan aplikasi lainnya, memungkinkan peningkatan kinerja berkat memori SCM berbasis 3D XPoint, sebuah teknologi yang dikembangkan bersama Micron. Meskipun beberapa format memori ini telah diluncurkan, seperti format M.2 NVMe dan kartu ekspansi PCIe, terdapat juga satu format DIMM yang disebut Optane Persistent Memory atau PMem. Kapasitas modul DIMM ini berkisar antara 128 GB hingga 512 GB per modul. Namun, pada tahun 2021, Intel memutuskan untuk menghentikan pengembangan memori ini, dan fokusnya difokuskan pada standar terbuka Compute Express Link (CXL), yang tampaknya lebih menjanjikan.
- Samsung Z-SSDPerusahaan Korea Selatan ini juga akan menciptakan media tipe SCM berlatensi rendah berdasarkan teknologi yang berbeda dari sebelumnya. Dalam hal ini, variasi V-NAND yang disebut Z-NAND digunakan, yang disusun dalam 48 lapisan sel memori berbasis transistor gerbang mengambang.
- Drive Ekstensi Memori Western Digital Ultrastar DC ME200: dapat digunakan untuk memperluas memori sistem yang ada, mendorong konsolidasi server, dan mengurangi kerumitan pembagian set data multi-terabyte yang besar ke beberapa server. Ini adalah solusi SCM yang digunakan AMD untuk sistem berbasis EPYC-nya untuk bersaing dengan solusi Intel.
- Kioxia XL-Flash SCMPerusahaan ini, yang sebelumnya bernama Toshiba Memory, juga mengembangkan teknologi SCM-nya sendiri, yang dikenal sebagai ini. Produk-produk ini menggunakan faktor bentuk seperti SSD, tetapi dengan rencana untuk membawanya ke bus DRAM.
- Teknologi Modular Cerdas DuraMemory:Solusi memori persisten lain dalam modul ini juga merupakan contoh penting lainnya, meskipun dalam kasus ini dirancang untuk industri dan lingkungan yang memerlukan ketahanan dan keandalan dalam kondisi buruk.
Semua perkembangan ini, antara lain, membuat banyak pemasok besar Perusahaan TI, terutama perusahaan HPC, akan tertarik dengan produk-produk ini dan memasukkannya ke dalam solusi mereka. Beberapa contoh penggunaan SCM dalam sistem komersial dan perusahaan meliputi:
- Dell EMCPerusahaan AS tersebut mengumumkan akan menggunakan Intel Optane PMem untuk meningkatkan kinerja sistem SAN PowerMax-nya.
- Hewlett Packard Enterprise (HPE):juga akan melakukan serangan ke SCM dengan solusi perusahaan seperti Nimble Storage SAN, berdasarkan Optane.
- Hitachi Vantara: Perusahaan Jepang ini juga menawarkan Platform Penyimpanan Virtual Seri 5000, dengan opsi bagi pengguna untuk menggunakan SCM, yang bertindak sebagai buffer atau memori cache.
- Lenovo: Raksasa komputasi pribadi dan HPC China juga diharapkan mengumumkan dukungan untuk Intel Optane untuk server ThinkSystem-nya.
- MemVergeDidirikan pada tahun 2017, perusahaan rintisan ini mengembangkan sistem yang dikenal sebagai Memory Machine, yang memvirtualisasikan DRAM dan Intel Optane untuk menciptakan media penyimpanan persisten berkapasitas tinggi. Idenya adalah untuk menggunakan sistem ini untuk snapshot, replikasi server, dan keperluan lainnya.
- NetApp: merancang perangkat lunak Memory Accelerated Data (Max Data). Proyek ini menggunakan teknologi Pleexistor dan mendukung Intel Optane SCM.
- Penyimpanan Murni:Ide di balik perusahaan ini adalah untuk menggabungkan memori flash NVMe dan modul yang dikembangkan sendiri dan disebut DirectMemory, menghasilkan apa yang dikenal secara komersial sebagai FlashArray//X all-flash, menggunakan perangkat Intel Optane port ganda.
- StorOne: Mirip dengan yang sebelumnya, karena All-Flash Array.next adalah sistem yang mengemas memori Optane bersama dengan memori Intel QLC 3D NAND, dan dikelola oleh perangkat lunak S1.
- Data yang LuasPerusahaan lain ini menciptakan buffer penulisan berbasis SCM untuk mempercepat beban kerja AI.
Masa depan SCM
Singkatnya, kami telah melihat beberapa upaya pengembangan teknologi dan produk yang menggunakan beberapa bentuk SCM, tetapi belum sepenuhnya populer di pasar karena berbagai alasan. Pengembangan masih diperlukan, begitu pula kematangan beberapa teknologi yang menjadi dasar perangkat ini. Dan, terlepas dari pesimisme banyak pihak, laporan ini mungkin memiliki masa depan yang menjanjikan.