ECC Ram Nedir? Sunucu Belleğinde Hata Düzeltme, RDIMM Ve LRDIMM Farkı
Bellekte oluşan tek bir bit hatası, bir masaüstü bilgisayarda çoğu zaman fark edilmeden geçer ya da en kötü ihtimalle bir uygulamanın kapanmasına yol açar. Aylarca kapanmadan çalışan, onlarca sanal makineyi ve kritik veritabanlarını barındıran bir sunucuda ise aynı hata bozuk bir kayda, beklenmedik bir yeniden başlatmaya veya fark edilmesi zor veri tutarsızlıklarına neden olabilir. Sunucularda ECC ram kullanılmasının temel nedeni budur. Bu yazıda hata düzeltme mekanizmasının nasıl çalıştığını, sunucu belleklerinde karşılaşılan RDIMM ve LRDIMM kavramlarını ve modül adlarındaki kodların nasıl okunacağını adım adım anlatıyoruz.
Bellek Hataları Neden Oluşur?
DRAM hücreleri veriyi çok küçük elektrik yükleri olarak saklar. Bu yükler; kozmik ışınlardan kaynaklanan parçacıklar, elektriksel gürültü, sıcaklık değişimleri veya hücrelerin zamanla yıpranması gibi etkenlerle değişebilir. Ortaya çıkan hataların büyük bölümü kalıcı bir arızadan değil, anlık ve geçici bozulmalardan kaynaklanır. Bellek miktarı arttıkça ve sistem kesintisiz çalıştıkça bu tür olaylarla karşılaşma ihtimali de yükselir. Yüzlerce gigabayt belleğe sahip bir sunucu için bu durum teorik bir risk değil, planlanması gereken bir gerçektir.
ECC Nasıl Çalışır?
ECC, İngilizce "Error Correcting Code" ifadesinin kısaltmasıdır ve Türkçede hata düzeltme kodu olarak karşılık bulur. Standart bir bellek modülü her 64 bitlik veri için yalnızca veriyi taşır. Hata düzeltmeli bir modül ise bu verinin yanında ek kontrol bitleri saklar. Bellek denetleyicisi veriyi yazarken bu kontrol bitlerini hesaplar, okurken de yeniden hesaplayıp karşılaştırır.
Klasik yaklaşımda tek bitlik hatalar otomatik olarak düzeltilir, iki bitlik hatalar ise tespit edilerek sisteme bildirilir. Bu sayede hatalı veri sessizce kullanılmaz. Hatalar sunucunun yönetim kayıtlarına düşer ve aynı modülde tekrar eden hatalar, bir arızanın habercisi olarak erkenden fark edilebilir. Sunucu üreticilerinin bazı platformlarında bunun ötesine geçen, bir bellek yongasının tamamen devre dışı kalmasını tolere edebilen gelişmiş koruma teknikleri de bulunur.
ECC ram korumasının işe yaraması için yalnızca bellek modülünün değil, işlemcinin ve anakartın da bu özelliği desteklemesi gerekir. Sunucu platformları bu desteği standart olarak sunar.
DDR5 Modüllerde EC8 İfadesi Ne Anlatır?
DDR5 nesliyle birlikte bellek modüllerinin iç yapısı değişti. Her modül, iki bağımsız alt kanala ayrıldı. Bu nedenle DDR5 sunucu modüllerinin adında, DDR4'teki "ECC" ifadesi yerine çoğu zaman "EC8" kodu görülür. Bu kod, her alt kanal için ayrılan hata düzeltme bitlerini belirten bir tanımdır ve modülün ECC yapısına sahip olduğunu gösterir. Örneğin Micron 32GB DDR5 4800MHz RDIMM adında yer alan EC8 ifadesi bu anlama gelir.
Bunun yanında DDR5 yongalarının kendi içinde çalışan bir hata düzeltme mekanizması daha vardır. Ancak bu yonga içi düzeltme, modül düzeyindeki ECC'nin yerini tutmaz. Sunucu kullanımında aranan koruma, modül adında ECC veya EC8 ifadesiyle belirtilen yapıdır.
RDIMM Ve LRDIMM Arasındaki Fark
Sunucu belleklerinde ECC ile birlikte karşılaşılan ikinci önemli kavram, modülün tampon yapısıdır.
RDIMM (Registered DIMM), adres ve komut sinyallerini bellek yongalarına iletmeden önce bir yazmaç üzerinden geçirir. Bu düzenleme, bellek denetleyicisinin üzerindeki elektriksel yükü azaltır ve aynı kanala daha fazla modül takılabilmesini sağlar. Sanallaştırma ve veritabanı sunucularının çok büyük bölümü RDIMM modüllerle çalışır. HPE SK Hynix 64GB DDR4 3200MHz RDIMM bu yapıya bir örnektir.
LRDIMM (Load Reduced DIMM) ise yalnızca adres ve komut sinyallerini değil, veri sinyallerini de tamponlar. Bu sayede modül başına çok daha yüksek kapasitelere ulaşmak mümkün olur. Çok büyük bellek havuzuna ihtiyaç duyan sistemlerde LRDIMM tercih edilebilir. Samsung 128GB DDR4 2933MHz LRDIMM yüksek kapasiteli modüllere örnek olarak gösterilebilir.
Burada dikkat edilmesi gereken önemli bir kural vardır: Aynı sunucuda RDIMM ve LRDIMM modüller bir arada kullanılmaz. Platform, takılı modüllerin tümünün aynı türde olmasını bekler.
Modül Adındaki Kodlar Nasıl Okunur?
Sunucu belleği adları uzun görünse de her parça belirli bir bilgiyi taşır. Aşağıdaki açıklamalar, modül seçerken en sık bakılan kodları özetler:
• DDR4 veya DDR5: Bellek neslini gösterir. Bu iki nesil fiziksel olarak birbirinin yerine takılamaz ve işlemci platformuna göre belirlenir.
• MHz ve PC4 veya PC5 kodu: Modülün çalışma hızını ifade eder. Sistem, takılı modüllerin ve işlemcinin desteklediği en uygun ortak hızda çalışır.
• 2Rx4, 2Rx8 gibi ifadeler: Rank sayısını ve yongaların veri genişliğini anlatır. 2R iki rank anlamına gelir. x4 ve x8 ise kullanılan yonga yapısını belirtir.
• CL değeri: Gecikme süresini gösteren zamanlama değeridir.
• HPE gibi üretici parça numaraları: Modülün belirli bir sunucu markasının uyumluluk listesinde yer aldığını gösterir.
Örneğin HPE SK Hynix 64GB DDR5 6400MHz RDIMM adında DDR5 nesli, 6400MHz hız, 2Rx4 yapı, EC8 hata düzeltme ve RDIMM tipi bilgileri bir arada yer alır.
Doğru Modülü Seçmek İçin Pratik Bir Yol
Bellek seçimine sunucunun kendisinden başlamak en sağlıklı yaklaşımdır. Sunucunun modeli ve takılı işlemcisi, hangi bellek neslinin ve hangi hızların desteklendiğini belirler. Ardından üreticinin teknik dokümanında yer alan bellek yerleşim kurallarına bakılır. Bu kurallar, modüllerin hangi yuvalara hangi sırayla takılacağını ve kanallar arasında dengenin nasıl kurulacağını açıklar. Kanallara dengesiz dağılmış bellek, kapasite yeterli olsa bile bant genişliğinin verimsiz kullanılmasına neden olabilir.
Mevcut bir sisteme ek bellek alınıyorsa, takılı modüllerle aynı kapasite, rank yapısı ve tipte ürün seçmek uyumluluk sorunlarının önüne geçer. Kapasite planlamasında sanal makine sayısı, veritabanının çalışma kümesi ve önümüzdeki dönemdeki büyüme beklentisi birlikte düşünülmelidir.
EX Bilişim'in sunucu bellekleri kategorisinde DDR4 ve DDR5 nesillerinde, RDIMM ve LRDIMM tiplerinde farklı kapasitelerde modüller listelenir. Sunucu modelinizi ve mevcut bellek yapınızı belirledikten sonra bu seçenekleri karşılaştırmak, uyumlu bir yükseltmeyi planlamanın en kolay yoludur.
Sıkça Sorulan Sorular
ECC Ram Normal Bir Masaüstü Bilgisayarda Çalışır Mı?
Bu durum işlemciye ve anakarta bağlıdır. Sunucu tipi kayıtlı (registered) modüller standart masaüstü anakartlarda genellikle çalışmaz. Arabelleksiz ECC modüller ise yalnızca bu özelliği destekleyen platformlarda hata düzeltme işleviyle kullanılabilir.
ECC Bellek Sistemi Yavaşlatır Mı?
Kontrol bitlerinin hesaplanması çok küçük bir ek yük getirir. Pratik kullanımda bu fark, sunucu iş yüklerinde sağlanan veri güvenliği yanında genellikle dikkate alınacak bir düzeyde değildir.
DDR4 Sunucu Belleği DDR5 Destekleyen Bir Sunucuda Kullanılabilir Mi?
Kullanılamaz. DDR4 ve DDR5 modüllerin yuva yapısı ve elektriksel özellikleri farklıdır. Bellek nesli, sunucunun işlemci platformuna göre belirlenir.
Farklı Kapasitede Sunucu Belleklerini Aynı Sistemde Kullanmak Doğru Mu?
Bazı platformlar buna izin verse de en dengeli sonuç, aynı kapasite ve aynı rank yapısındaki modüllerin kanallara eşit dağıtılmasıyla elde edilir. Üreticinin yerleşim kurallarına uymak doğru olur.
RDIMM Mi LRDIMM Mi Seçmeliyim?
Çoğu sanallaştırma ve veritabanı sunucusu için RDIMM yeterli bir seçenektir. Modül başına çok yüksek kapasite gerekiyorsa LRDIMM değerlendirilebilir. Hangisini seçerseniz seçin, iki türü aynı sunucuda birlikte kullanmamak gerekir.