Örnek Ultra 3D/SN550'yi göstereyim: Çoğu SSD kapasitesi değerli ve hızlı olduğu için SRAM'i yazılım, write combining (4KB subpageleri birleştirip yazma) ve write deferring için; DRAM'i de - bazen veri önbelleği olarak kullansa da -
genellikle haritalama bilgilerini (metadata, veri hakkında veri) depolamak/güncellemek için kullanıyor.
Ultra 3D'de DRAM bulunmadığından SRAM'i elinden geldiği kadar kullanması lazım (32 MB gibi HMB var da onu diğer HMB SSD'lerden farklı olarak CPU'lardaki
victim cache gibi kullanıyor, eski haritalama verilerini oraya atıyor). Ultra 3D, bunca haritalama verisini ~32MB civarı (tam belirtilmemiş) SRAM'e sığdırabilmek için
adres sıkıştırma, asenkron ve parçalı I/O gibi birtakım teknikler kullanıyor (Ör. başlangıç noktası+ofset şeklinde sıralı yazmaları sıkıştırma -
Patent 1,
Patent 2). Diğer üreticiler buna benzer yollardan giderek azalmış DRAM'li modeller çıkarmaya başladı bile zaten.
Ek olarak tek faktör DRAM de değil, DRAMsiz SATA'lara karşın NVMe SSD'ler kontrolcü, arayüz, önbellek tipi (bazı dinamik önbellekli SSD'ler dolmaya yaklaşınca yazma işlemlerinde DRAM'e yüklenen yavaş bir "folding state"e girebiliyor) gibi tasarımsal farklarından dolayı daha az sıkıntı yaşıyorlar, iş yüklerini daha hızlı bitirip SRAM dışında kalma ihtimalleri daha az oluyor. Biraz zırvaladıysam affedin, sıkıntıdan fazla bi araştırıyorum
.