ECC केवल एकल बिट त्रुटियों को सही करने के लिए लगता है।
सही बात। अधिक त्रुटियों को ठीक करने के लिए अधिक बिट्स की आवश्यकता होगी। जैसा कि है, आप पहले से ही 10 बिट्स का उपयोग 8 बिट्स की जानकारी को स्टोर करने के लिए करते हैं, 20% मेमोरी चिप्स को सिंगल बिट करेक्शन और दो बिट्स तक एरर डिटेक्शन की अनुमति देते हैं।
यह निम्नानुसार काम करता है। एक 0
या एक कल्पना करो 1
। अगर मैं या तो पढ़ता हूं तो मुझे उम्मीद है कि मैं सही बात पढ़ूं। अगर कुछ ब्रह्मांडीय विकिरण या एक खराब चिप द्वारा एक 0 से 1 तक फ़्लिप हो गया तो मुझे कभी पता नहीं चलेगा।
अतीत में हमने समता के साथ इसे हल करने की कोशिश की थी। समानता 8 बिट प्रति संग्रहीत नौवें बिट को जोड़ रही थी। हमने चेक किया कि बाइट में कितने शून्य और कितने 1 थे। नौवें को एक समान संख्या बनाने के लिए सेट किया गया था। (समता के लिए) यदि आप कभी बाइट पढ़ते हैं और संख्या गलत थी, तो आपको पता था कि कुछ गलत था। आप नहीं जानते कि कौन सा बिट गलत था।
उस पर ईसीसी का विस्तार हुआ। यह 10 बिट्स और एक जटिल एल्गोरिथ्म का उपयोग करता है जब यह पता चलता है कि एक बिट बिट फ़्लिप किया गया है। यह भी पता है कि मूल मूल्य क्या था। यह बताने का एक बहुत ही सरल तरीका है कि यह कैसे होता है:
सभी के 0
साथ बदलें 000
। सभी के 1
साथ बदलें 111
।
अब आप छह संयोजनों को पढ़ सकते हैं:
000
001
010
100
101
111
हम कभी भी 100% निश्चित नहीं हैं कि मूल रूप से क्या संग्रहीत किया गया था। अगर हम पढ़ते हैं 000
तो शायद वही होगा 000
जो हम उम्मीद कर रहे थे, या तीनों बिट्स फ़्लिप हो सकते हैं। उत्तरार्द्ध बहुत संभावना नहीं है। बिट्स बेतरतीब ढंग से फ्लिप नहीं करते हैं, हालांकि ऐसा होता है। मान लीजिए कि कुछ आसान गणनाओं के लिए दस में से एक बार होता है (वास्तविकता बहुत कम है)। सही मान पढ़ने की निम्नलिखित संभावनाओं के लिए यह काम करता है:
000
-> या तो 000
(99.9% सुनिश्चित), या ट्रिपल फ्लिप (1/1000 मौका)
001
-> हम जानते हैं कि कुछ गलत हो गया है। लेकिन यह या तो था
000
और एक बिट फ़्लिप (1:10 मौका), या यह था
111
और दो बिट्स फ़्लिप (1: 100 मौका) है। तो आइए इसे मानें जैसे हम पढ़ते हैं 000
लेकिन त्रुटि लॉग करते हैं।
010
-> वही ऊपर।
100
-> वही ऊपर।
011
-> समान रूप में ऊपर, लेकिन यह मानते हुए कि यह एक था 111
101
-> समान रूप में ऊपर, लेकिन यह मानते हुए कि यह एक था 111
110
-> समान रूप में ऊपर, लेकिन यह मानते हुए कि यह एक था 111
111
-> या तो 111
(99.9% सुनिश्चित), या ट्रिपल फ्लिप (1/1000 मौका)
111
-> या तो 000
(99.9% सुनिश्चित), या ट्रिपल फ्लिप (1/1000 मौका)
ईसीसी समान चालें करता है लेकिन यह अधिक कुशलता से करता है। 8 बिट्स (एक बाइट) के लिए वे केवल 10 बिट्स का पता लगाने और सही करने के लिए उपयोग करते हैं।
ECC पंजीकृत RAM केवल वर्कस्टेशन / सर्वर बोर्ड के साथ प्रयोग करने योग्य है ECC असंबद्ध इंटेल Xeon lga1155 या AMD बोर्डों पर AMD AM3 + पर प्रयोग करने योग्य है।
मैंने पहले ही उल्लेख किया है कि ईसीसी हिस्सा क्या था, अब पंजीकृत बनाम असंबद्ध हिस्सा।
आधुनिक सीपीयू में मेमोरी कंट्रोलर सीपीयू डाई पर होता है, एएमडी ओपर्टन चिप्स के लिए बहुत पहले शुरू होता है और इंटेल के लिए कोर आई श्रृंखला के साथ होता है। अधिकांश डेस्कटॉप सीपीयू फिर रैम को पकड़े हुए डीआईएमएम सॉकेट्स से सीधे बात करते हैं। यह काम करता है और किसी अतिरिक्त तर्क की आवश्यकता नहीं है। यह निर्माण करने के लिए सस्ता है, और गति अधिक है, क्योंकि मेमोरी नियंत्रक से रैम तक जाने में कोई देरी नहीं है।
लेकिन एक स्मृति नियंत्रक केवल उच्च गति पर एक सीमित वर्तमान ड्राइव कर सकता है। इसका मतलब यह है कि एक मदरबोर्ड में कितने मेमोरी सॉकेट जोड़े जा सकते हैं, इसकी एक सीमा है। (और इसे और अधिक जटिल बनाने के लिए, डीआईएमएम कितना उपयोग कर सकते हैं, जो मेमोरी रैंक की ओर जाता है। मैं इसे छोड़ दूंगा क्योंकि यह पहले से ही लंबा है)।
सर्वर बोर्डों पर आप अक्सर डेस्कटॉप सिस्टम की तुलना में अधिक मेमोरी का उपयोग करना चाहते हैं। इसलिए मेमोरी में एक "रजिस्टर" बफर जोड़ा जाता है। डीआईएमएम पर चिप्स से प्राप्त होने वाली प्रतिक्रियाएं पहले इस बफर में कॉपी हो जाती हैं। एक घड़ी चक्र बाद में यह बफर डेटा ट्रांसफर करने के लिए मेमोरी कंट्रोलर से जुड़ जाता है।
यह बफर / रजिस्टर चीजों को देरी करता है, जिससे मेमोरी धीमी हो जाती है। यह अवांछनीय है और इस प्रकार इसका उपयोग केवल उन बोर्डों पर किया जाता है, जिनके पास बहुत सारे मेमोरी बैंक हैं। अधिकांश उपभोक्ता बोर्डों को इसकी आवश्यकता नहीं है, और अधिकांश उपभोक्ता सीपीयू इसका समर्थन नहीं करते हैं।
प्रत्यक्ष रूप से जुड़ा हुआ, असंबद्ध रैम बनाम बफ़र्ड / पंजीकृत रैम एक ऐसा मामला नहीं है जहां एक दूसरे से बेहतर या बदतर है। आपके पास कितने मेमोरी स्लॉट हो सकते हैं इसके संदर्भ में उनके पास अलग-अलग ट्रेड-ऑफ हैं। पंजीकृत रैम कुछ गति (और संभवतः व्यय) की कीमत पर अधिक रैम की अनुमति देता है। ज्यादातर मामलों में जहां आपको जितना संभव हो उतना मेमोरी की आवश्यकता होती है, लेकिन रैम की तुलना में अतिरिक्त मेमोरी थोड़ी धीमी गति से चल रही है।
मुझे जो संदेह हो रहा है (मुख्यतः asus am3 + बोर्ड से संबंधित): क्या ECC-unbuffered RAM ECC-पंजीकृत RAM (सुरक्षा और विश्वसनीयता के दृष्टिकोण से) के रूप में अच्छी है? या यह एक बुरा विकल्प है। मैं गति के लिए बहुत परवाह नहीं है।
सुरक्षा और स्थिरता के दृष्टिकोण से, ईसीसी-असंबद्ध और ईसीसी-पंजीकृत समान हैं।
अधिक विवरण: सर्वर 24 x 3 '' 'ड्राइव के साथ एक सर्वर केस का उपयोग करेगा और जितना संभव हो उतना कम उपभोग करना चाहिए।
24 ड्राइव बहुत अधिक बिजली की खपत करने वाले हैं। ड्राइव पर कितना निर्भर करता है। मेरा 140GB 15K RPM SAS ड्राइव निष्क्रिय में केवल 10 वाट का ड्राइंग कर रहा है, जैसे कि 1TB SATA 7K2 डिस्क। उपयोग में दोनों अधिक आकर्षित करते हैं।
गुणा करें कि 24. 24x10 Watt पर निष्क्रिय का मतलब 240 वाट है, जो केवल डिस्क प्लेटों को कताई रखते हुए, हवा के प्रतिरोध से अधिक है। डबल-ईश कि उपयोग में।
LGA1155 इस मायने में लगता है कि दो बार की कीमत के लिए एक बेहतर शर्त (TDP ~ 20-95W) दूसरों (> 80W) से अधिक है।
इंटेल कम पावर सीपीयू में बेहतर है, लेखन के समय और सीपीयू के लिए आपने उल्लेख किया है।
किसी भी सुझाव का स्वागत है। आइए आइए हम 120W से कम बेकार (~ 24 में से 10 हार्ड डिस्क के साथ)।
यदि आप FreeBSD के लिए जाते हैं, तो ZFS को देखें। यह महान हो सकता है। इसकी कई और अधिक उन्नत विशेषताएं (जैसे कि समर्पण और / या संपीड़न) गंभीर सीपीयू शक्ति का उपयोग करती हैं, और बहुत सारी मेमोरी चाहती हैं। ZRAID के साथ मूल उपयोग के लिए ZFS आपके द्वारा बताए गए 16 GB के CPU सेटों पर अच्छा काम करेगा, लेकिन यदि आप कटौती जैसी सुविधाओं को चालू करते हैं, तो आपको अपनी डिस्क क्षमता के लिए आवश्यक अनुशंसित मेमोरी में ध्यान से देखना चाहिए; कुछ गाइड द्वारा 5 जीबी प्रति टीबी स्टोरेज की सिफारिश की जाती है ।
दो और बातें:
- मैंने ड्राइव को जोड़ने के बारे में कुछ नहीं देखा। कुछ बोर्ड 10 SATA पोर्ट तक जा सकते हैं। लेकिन उस पर कुछ भी करने के लिए, आपको ऐड-इन कार्ड की आवश्यकता होगी। यदि आप हार्डवेयर RAID पर विचार करते हैं, तो शुरुआत से ही इसकी योजना बनाना सबसे अच्छा हो सकता है।
- ड्राइव विफलता: क्या आपको SATA पोर्ट मल्टीप्लायरों का उपयोग करना चाहिए तो ध्यान से देखें कि अगर SATA ड्राइव विफल रहता है तो वे कैसे कार्य करते हैं। यह अक्सर सुंदर नहीं होता है। एक घर की स्थापना के लिए एक बड़ी समस्या नहीं है, लेकिन बहुत अधिक नहीं उद्यम ग्रेड। आपको यह विचार करने की आवश्यकता हो सकती है कि व्यक्तिगत ड्राइव कैसे त्रुटियों को भी संभालते हैं। "NAS" या "RAID" उपयोग के लिए कुछ ड्राइव को लेबल किए जाने का कारण यह है कि वे नियमित ड्राइव की तुलना में त्रुटियों को अलग तरीके से संभालते हैं। बिना RAID के, आप चाहते हैं कि ड्राइव कई बार संभव हो। RAID के साथ, आप चाहते हैं कि ड्राइव जल्दी से विफल हो जाए, इसलिए आप दूसरी प्रति से पढ़ सकते हैं।