ECC yalnızca tek bit hatalarını düzeltiyor gibi görünüyor.
Doğru. Daha fazla hatayı düzeltmek için daha fazla bit gerekir. Olduğu gibi, 8 bit bilgi depolamak için 10 bit kullanıyorsunuz, tek bir bit düzeltmesine ve iki bit hata tespitine izin vermek için bellek yongalarının% 20'sini 'harcıyor'.
Aşağıdaki gibi çalışır. Bir 0
veya bir düşünün 1
. Eğer ikisini de okursam doğru olanı okuduğumu umuyorum. Eğer 0 bir kozmik radyasyon veya kötü bir çip ile 1'e çevrilirse, asla bilemeyeceğim.
Geçmişte bunu parite ile çözmeye çalıştık. Eşlik, depolanan 8 bit başına dokuzuncu bir bit ekliyordu. Baytta kaç tane sıfır ve kaç tane olduğunu kontrol ettik. Dokuzuncu bunu eşit bir sayı yapacak şekilde ayarlandı. (hatta parite için) Hiç bayt okuduysanız ve sayı yanlışsa, bir şeyin yanlış olduğunu biliyordunuz. Hangi parçanın yanlış olduğunu bilmiyorsunuz.
ECC bunu genişletti. Tek bir bitin ne zaman çevrildiğini keşfetmek için 10 bit ve karmaşık bir algoritma kullanır. Ayrıca orijinal değerin ne olduğunu da bilir. Bunun nasıl olacağını açıklamanın çok basit bir yolu:
Hepsini 0
s ile değiştirin 000
. Hepsini 1
s ile değiştirin 111
.
: Artık altı kombinasyon okuyabilir
000
001
010
100
101
111
Asla nelerin saklandığından% 100 emin değiliz. Eğer 000
okursak, bu sadece 000
bizim beklediğimiz şey olabilirdi ya da üç bitin tümü ters çevrilmiş olabilirdi. İkincisi çok olası değildir. Bitler rastgele olmasına rağmen gerçekleşmez. Diyelim ki bazı kolay hesaplamalar için her on kez bir oluyor (gerçeklik çok daha az). Bu, aşağıdaki doğru değeri okuma şansı ile sonuçlanır:
000
-> Ya 000
(% 99,9 emin) veya üçlü bir flip (1/1000 şans)
001
-> Bir şeylerin yanlış gittiğini biliyoruz. Ama ya ya
000
bir bit çevrildi (1:10 şans), ya da
111
iki bit çevrildi (1: 100 şans). Öyleyse 000
hatayı okur gibi kaydederiz, ancak hatayı kaydederiz.
010
-> Yukarıdaki ile aynı.
100
-> Yukarıdaki ile aynı.
011
-> Yukarıdaki ile aynı, ancak bir 111
101
-> Yukarıdaki ile aynı, ancak bir 111
110
-> Yukarıdaki ile aynı, ancak bir 111
111
-> Ya 111
(% 99,9 emin) veya üçlü bir flip (1/1000 şans)
111
-> Ya 000
(% 99,9 emin) veya üçlü bir flip (1/1000 şans)
ECC'ler benzer numaralar yapar, ancak daha verimli bir şekilde yapar. 8 bit (bir bayt) için, algılamak ve düzeltmek için yalnızca 10 bit kullanırlar.
ECC kayıtlı RAM yalnızca iş istasyonu / sunucu kartlarıyla kullanılabilir ECC arabelleksiz, Intel Xeon lga1155 veya Asus kartlarında AMD AM3 + ile kullanılabilir.
ECC bölümünün ne olduğundan bahsettim, şimdi kayıtlı ve tamponlanmamış bölüm.
Modern CPU'larda bellek denetleyicisi, çok uzun zaman önce AMD Opteron yongaları ve Intel için Core i serisi ile başlayarak CPU kalıbında. Çoğu masaüstü işlemcisi daha sonra doğrudan RAM'i tutan DIMM yuvalarıyla konuşur. Çalışır ve ekstra bir mantık gerekmez. Bu inşa etmek ucuzdur ve hız yüksektir, çünkü bellek denetleyicisinden RAM'e kadar gecikme yoktur.
Ancak bellek denetleyicisi yüksek hızlarda yalnızca sınırlı bir akım sürebilir. Bu, bir anakarta kaç bellek soketi eklenebileceğinin bir sınırı olduğu anlamına gelir. (Ve daha karmaşık hale getirmek için, DIMM'lerin ne kadar kullanabileceği, bu da bellek sıralamalarına yol açar. Bunu zaten uzun olduğu için atlayacağım).
Sunucu anakartlarında genellikle bir masaüstü sistemden daha fazla bellek kullanmak istersiniz. Bu nedenle belleğe bir "kayıt" tamponu eklenir. DIMM üzerindeki yongalardan okunan değerler önce bu arabelleğe kopyalanır. Bir saat döngüsü sonra bu arabellek veri aktarımı için bellek kontrolörüne bağlanır.
Bu arabellek / kayıt işleri geciktirir, hafızayı yavaşlatır. Bu istenmeyen bir durumdur ve bu nedenle sadece çok fazla bellek bankası olan kartlarda kullanılır / gereklidir. Çoğu tüketici kartı buna ihtiyaç duymaz ve çoğu tüketici işlemcisi bunu desteklemez.
Doğrudan bağlı, ara belleğe alınmamış RAM ve arabelleğe alınmış / kayıtlı RAM'e kıyasla biri diğerinden daha iyi veya daha kötü bir durum değildir. Kaç bellek yuvasına sahip olabileceğiniz konusunda farklı takaslara sahipler. Kayıtlı RAM, bir miktar hızda (ve muhtemelen masrafta) daha fazla RAM'e izin verir. Mümkün olduğunca fazla belleğe ihtiyaç duyduğunuz çoğu durumda, bu ekstra bellek biraz daha yavaş bir hızda çalışan RAM'i telafi eder.
Şüphe duyuyorum (esas olarak asus am3 + board ile ilgili): ECC tamponlanmamış RAM ECC kayıtlı RAM kadar iyi (güvenlik ve güvenilirlik açısından)? Yoksa daha kötü bir seçim mi? Hız umurumda değil. **
Güvenlik ve istikrar açısından ECC tamponlu ve ECC kayıtlı aynıdır.
Ek bilgi: sunucu, 24 x 3 '' sürücüye kadar bir sunucu çantası kullanır ve mümkün olduğunca az tüketmelidir.
24 sürücü çok fazla güç tüketecek. Ne kadar sürücüler bağlı. 140 GB'lık 15K RPM SAS sürücüm, 1 TB SATA 7k2 diskiyle aynı rölantide sadece 10 watt çekiyor. Kullanımda her ikisi de daha fazla çizin.
Bunu 24 ile 24x10 Watt boşta çarptığınızda, 240 watt anlamına gelir, sadece disklerin plakaları dönerek hava direncini aşın. Kullanımda olan çift-ish.
LGA1155 bu anlamda diğerlerine (> 80W) kıyasla iki kat daha iyi bir bahis (TDP ~ 20-95W) gibi görünüyor.
Intel, düşük güçlü CPU'larda, yazma sırasında ve bahsettiğiniz CPU'lar için daha iyidir.
Herhangi bir öneri açığız. Rölantide 120W'tan az diyelim (~ 24 sabit diskin 10'unda).
FreeBSD için giderseniz, ZFS'ye çok bakın. Harika olabilir. Daha gelişmiş özelliklerinin çoğu (örneğin veri tekilleştirme ve / veya sıkıştırma) ciddi CPU gücü kullanır ve bol miktarda bellek ister. ZRAID ile temel kullanım için ZFS, hem bahsettiğiniz hem de 16 GB'lık CPU setlerinde iyi sonuç verir, ancak veri tekilleştirme gibi özellikleri açarsanız, disk kapasiteniz için önerilen önerilen belleğe dikkatlice bakmalısınız; Bazı kılavuzlar için TB depolama başına 5 GB'a kadar önerilir .
İki şey daha:
- Sürücüleri bağlamakla ilgili hiçbir şey görmedim. Bazı kartlar 10 adede kadar SATA bağlantı noktasına gidebilir. Ancak bunun üzerindeki her şey için eklenti kartlarına ihtiyacınız olacak. Donanım RAID'i düşünüyorsanız, bunu en baştan planlamak en iyisi olabilir.
- Sürücü hatası: SATA bağlantı noktası çarpanlarını kullanırsanız , bir SATA sürücüsü arızalanırsa nasıl davrandıklarına dikkat edin. Genellikle hoş değil. Bir ev kurulumu için büyük bir sorun değil, ama kurumsal sınıfta değil. Tek tek sürücülerin de hataları nasıl ele aldığını düşünmeniz gerekebilir. Bazı sürücülerin "NAS" veya "RAID" kullanımı olarak etiketlenmesinin nedeni, hataları normal sürücülerden farklı şekilde ele almalarıdır. RAID olmadan, sürücünün mümkün olduğunca çok kez yeniden denemesini istersiniz. RAID ile sürücünün hızlı bir şekilde arızalanmasını istersiniz , böylece başka bir kopyadan okuyabilirsiniz.