มีข้อได้เปรียบที่แน่นอนหรือสามารถวัดได้ในการใช้ ECC RAM ในพีซีเดสก์ทอปหรือไม่?


21

ฉันเอะอะมากกับการสร้างเครื่องจักรที่เสถียร - ซึ่งฉันเกลียดการล่ม, เรียบ, พฤติกรรมตลก ฯลฯ - และการแก้ไขข้อผิดพลาด aka ECC RAM ดูเหมือนจะแก้ไขปัญหาใหญ่: ข้อผิดพลาดของหน่วยความจำ

แต่มันใช้งานได้จริงเหรอ? มีข้อได้เปรียบที่วัดได้เช่นล่มน้อยลงหรือพฤติกรรมอื่น ๆ หรือไม่?

นอกเหนือจากราคาแล้วทำไมไม่ใช้หน่วยความจำ ECC สำหรับพีซีรุ่นใหม่ เหตุใดคุณสมบัติ ECC จึงมีให้ใช้งานและสนับสนุนสำหรับเครื่องเซิร์ฟเวอร์ / เวิร์คสเตชั่น แต่ไม่ได้อยู่ในมาเธอร์บอร์ดสำหรับผู้บริโภค?


1
ใช่ ECCs มีประโยชน์จริง ๆ กับข้อผิดพลาดที่ไม่รุนแรง ข้อผิดพลาดที่นุ่มนวลสามารถทำให้ระบบล่มหากข้อผิดพลาดอยู่ในการเข้าถึงหน่วยความจำ มีรายงานว่าข้อผิดพลาดที่อ่อนนุ่มเพียงครั้งเดียวหยุดอุตสาหกรรมพันล้านดอลลาร์ นี่คือการอ้างอิงโดยละเอียดสำหรับสิ่งนี้
user984260

คำตอบ:


10

ฉันใช้ ECC ram ในเซิร์ฟเวอร์มาสองสามปีแล้ว ECC จะส่องแสงเมื่อคุณใช้งานเครื่องอย่างหนักเช่นเดียวกับใน "มันใช้เวลามากกว่า 12-16 ชั่วโมงต่อวัน" เซิร์ฟเวอร์ Whitebox เล็ก ๆ น้อย ๆ ที่ฉันสร้างขึ้นโดยไม่มี ECC ไม่ช้าก็เร็วจะพัฒนา "ปัญหา" ที่ต้องรีบูต แต่เครื่อง ECC ไม่เคยมีสิ่งเหล่านี้

ดังนั้นคำตอบของฉันคือถ้าคุณใช้คอมพิวเตอร์เป็นจำนวนมากแล้วส่วนใหญ่ใช่ หากคุณใช้คอมพิวเตอร์ของคุณตลอด 24 ชั่วโมงทุกวันมันควรจะมี

มีเมนบอร์ดบางตัวที่รองรับ ECC พวกเขามักจะอยู่ในจุดสิ้นสุดของ "สูง" แต่ด้วยการวิจัยเล็กน้อยคุณสามารถค้นหาได้จากผู้ผลิตหลาย ข้อควรพิจารณาอื่น ๆ เท่านั้นคืออย่าลืมเปิดใช้งานการสนับสนุน ECC ใน BIOS


Google ได้ออกมาแกว่งในเรื่องนี้ ดูhttp://blogs.zdnet.com/storage/?p=638สำหรับสิ่งที่ส่งผลกระทบต่อระบบยุคปัจจุบันจริงๆ


8
"ลิตเติ้ whitebox เซิร์ฟเวอร์ฉันได้สร้างได้โดยไม่ต้องมี ECC ไม่ช้าก็เร็วพัฒนา 'ปัญหา' ที่จำเป็นต้องรีบูต" - นี่คือหลักฐานบิต / วูดูคอมพิวเตอร์สำหรับรสนิยมของฉัน ..
Jeff Atwood

4
และคุณคิดว่าฉันไม่รู้ คุณสามารถอธิบายซอฟต์แวร์เดียวกันบนฮาร์ดแวร์เดียวกันที่มีปัญหาแปลก ๆ (ส่งอีเมลไม่ถูกต้อง) แต่ปัญหาแก้ไขได้เองหลังจากคุณเปลี่ยน RAM ทั้งหมดหรือไม่ ฉันไม่ชอบความคิดอย่างใดอย่างหนึ่ง แต่เนื่องจากมันเป็นเพียงองค์ประกอบสำคัญในการเปลี่ยนแปลงและคู่ที่มีปัญหาหายไปหลังจากการอัพเกรด ECC ดีมันยากที่จะเพิกเฉย ...
Avery Payne

1
ฉันลืมพูดถึง - RAM ถูกแทนที่หนึ่งครั้งก่อนที่จะอัปเกรด ECC และปัญหายังคงอยู่ บางทีมันอาจจะเป็นร่องรอยที่แย่ใน mobo บางทีมันอาจเป็นข้อบกพร่องของการออกแบบในบอร์ด ฉันเดาว่ามันอาจจะเป็นปัญหาอื่น ๆ อีกมากมายซึ่งแต่ละเรื่องจะต้องใช้ EE เพื่อออกมาและสอบสวนด้วยขอบเขต แต่ในตอนท้ายของวันนั้น ECC ทำให้ปัญหาหายไปหากไม่มีเหตุผลอื่นนอกจาก ตรวจสอบให้แน่ใจว่าข้อมูลที่ดึงมาจาก RAM อยู่ในสถานะที่สอดคล้อง 100% เจฟฟ์ฉันเห็นด้วยว่ามันเป็นลัทธิวูดู ... ฉันไม่ชอบ แต่ก็มี
Avery Payne

1
@Jeff Atwood - เอ่อ ... กลายเป็น voodoo หลังจากนั้นในแง่ที่ว่าคุณไม่สามารถเห็นสิ่งนี้เกิดขึ้นกับคอมพิวเตอร์ของคุณ ... ดูcs.toronto.edu/~bianca/papers/sigmetrics09.pdf
Avery Payne

6

ฉันคิดว่า ECC นั้นมีค่าควรใช้เมื่อเซิร์ฟเวอร์ต้องการเท่านั้น Wikipedia :

การตรวจจับและแก้ไขข้อผิดพลาดในระบบคอมพิวเตอร์ดูเหมือนจะเข้าและออกไป "ความเท่าเทียมกันเพื่อเกษตรกร" เมื่อถามว่าทำไมเขาถึงทิ้ง CDC 6600 เขารวมความเท่าเทียมกันใน CDC 7600 และโด่งดังกล่าวว่า "ฉันรู้ว่าเกษตรกรจำนวนมากซื้อคอมพิวเตอร์"

ฉันไม่พบแหล่งที่มาที่ชัดเจนบนอินเทอร์เน็ตนอกเหนือจากการอ้างสิทธิ์ที่คลุมเครือของข้อผิดพลาดหนึ่งบิตต่อเดือนต่อกิกะไบต์ซึ่งเป็นเรื่องน่าขัน เซิร์ฟเวอร์จะล่มไปทางซ้ายและขวาทั่วโลกถ้าสิ่งนี้เป็นความจริงจากระยะไกล

ไฮไลท์บางอย่างจากMetaFilter threadจากผู้ดูแลระบบเซิร์ฟเวอร์จริง:

ฉันคิดว่า ECC เป็นสิ่งที่ยอดเยี่ยม แต่ฉันมีเซิร์ฟเวอร์ทั้งที่มีและไม่มีและฉันไม่เคยมีหรือไม่มีอะไรเลยไม่ว่าจะด้วยวิธีใด

ฉันเข้าใจวัตถุประสงค์ของ ECC RAM แต่ไม่ใช่ประเด็น ฉันหมายถึงฉันไม่เคยสังเกตเห็นปัญหาใด ๆ ที่เป็นผลมาจากการที่บิตของรังสีคอสมิกพลิก แม้กระทั่งบนเซิร์ฟเวอร์การคำนวณ / การคอมไพล์ส่วนบุคคลที่มีเวลาหลายปี ไม่ต้องบอกว่าบิตไม่ได้พลิก แต่แน่นอนพวกเขาไม่สำคัญ

จากประสบการณ์ของฉันในการใช้งานฟาร์มหลายพันเครื่องที่นี่และที่นั่นคุณมีแนวโน้มที่จะมี Ext3 อ้วกอย่างเงียบ ๆ ทั่วคุณมากกว่าที่จะมีปัญหาที่แก้ไขได้ ECC

โดยส่วนตัวแล้วฉันคิดว่า ECC เป็นสินค้าที่มีการขนส่งสินค้าเพียงเล็กน้อย แต่มันเป็นนโยบายการประกันที่สมเหตุสมผลสำหรับเซิร์ฟเวอร์ขนาดใหญ่ตราบใดที่ค่าใช้จ่ายค่าใช้จ่ายไม่สูงเกินไป


กระแทกซ้ายและขวา? ฉันไม่คิดว่ามันจะแย่ขนาดนั้น เรื่องที่น่าสนใจ: "หยุดทำด้านซ้ายและด้านขวา" ... แต่ให้พิจารณา: ข้อผิดพลาดบิตอาจเกิดขึ้นใน RAM ที่ไม่ได้ถูกจัดสรร (ล็อต, บนเซิร์ฟเวอร์ที่มีค่าต่ำกว่าเกณฑ์) หรือในหน่วยความจำที่จัดสรรไม่น่าจะถูกเรียกใช้ หากมีข้อผิดพลาดเล็กน้อยในรหัสตายไม่ได้ทำให้เสียง ?. )
คริสดับเบิลยูเรีย

ฉันยังสงสัยว่า Google มีอะไรจะพูดเกี่ยวกับข้อผิดพลาดของหน่วยความจำหรือไม่ พวกเขาเรียกใช้เซิร์ฟเวอร์ตัน ฉันสงสัยว่าเซิร์ฟเวอร์มากลงเวลาจะเป็นส่วนที่เป็นข้อผิดพลาด RAM เมื่อเทียบกับการพูด, อุปกรณ์ไฟฟ้าในฟริตซ์ ...
คริสดับเบิลยูเรีย

3

เราได้พิจารณาถึงระบบที่สำคัญแล้ว ปัญหาหนึ่งจะเกิดขึ้นได้อย่างไรคุณทำข้อผิดพลาดในการตรวจจับข้อผิดพลาดในซอฟต์แวร์เพื่อตรวจสอบความสมบูรณ์ของหน่วยความจำของคุณอย่างไรเมื่อโปรแกรมที่ใช้ในการเรียกใช้การตรวจสอบความสมบูรณ์ของหน่วยความจำนั้น คุณไม่สามารถทำได้และทำให้การวิเคราะห์โหมดความล้มเหลว / การบรรเทาความล้มเหลวเป็นเรื่องยากดังนั้น ECC จึงเป็นกลไกในการบรรเทา

นี่เป็นหนึ่งในกรณีที่หากมีปัญหาคุณสามารถตำหนิรังสีคอสมิกได้จริง)


2

ฉันจะพิจารณา ECC ram สำหรับแอปพลิเคชัน "Mission critical" หากข้อผิดพลาดของเซิร์ฟเวอร์จะทำให้คุณเสียเงินจำนวนมาก (หรือฆ่าผู้คนหรืออะไรก็ตาม) ให้ลองหา ECC ram โดยทั่วไปให้น้ำหนักค่าใช้จ่ายของ ram ECC กับสิ่งที่คุณยืนเสียเมื่อเกิดข้อผิดพลาด

แต่ไม่ว่าคุณจะตัดสินใจอะไรฉันขอแนะนำให้ใช้MemTest86 +ข้ามคืน (หรือนานพอที่จะผ่านหลายครั้งในพื้นที่ที่อยู่ทั้งหมด) และถ้าคุณสามารถเพิ่มความร้อน (ตัวอักษร) นั่นจะทำให้คุณมีความคิดเกี่ยวกับวิธีการที่หน่วยความจำของคุณจะทำงานเมื่อระบบทำงานร้อน

ฉันเคยพบข้อผิดพลาด RAM ใหม่ล่าสุดใน MemTest ฉันยังมี ram "ดี" พัฒนาข้อผิดพลาดเมื่อเวลาผ่านไปว่า MemTest ตรวจพบ มันเป็นเครื่องมือที่ยอดเยี่ยมและเป็นหนึ่งในสิ่งแรก ๆ ที่ฉันใช้กับระบบใหม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.