หมายเหตุ: คำตอบนี้ไม่เกี่ยวกับฟิสิกส์ แต่เกี่ยวกับข้อผิดพลาดของหน่วยความจำเงียบด้วยโมดูลหน่วยความจำที่ไม่ใช่ ECC ข้อผิดพลาดบางอย่างอาจมาจากพื้นที่รอบนอกและบางส่วน - จากพื้นที่ด้านในของเดสก์ท็อป
มีการศึกษาหลายครั้งเกี่ยวกับความล้มเหลวของหน่วยความจำ ECC ในเซิร์ฟเวอร์ฟาร์มขนาดใหญ่เช่น CERN clusters และ Google datacenters ฮาร์ดแวร์ระดับเซิร์ฟเวอร์ที่มี ECC สามารถตรวจจับและแก้ไขข้อผิดพลาดบิตเดียวทั้งหมดและตรวจสอบข้อผิดพลาดหลายบิตจำนวนมาก
เราสามารถสรุปได้ว่ามีเดสก์ท็อปที่ไม่ใช่ ECC จำนวนมาก (และสมาร์ทโฟนมือถือที่ไม่ใช่ ECC) หากเราตรวจสอบเอกสารสำหรับอัตราความผิดพลาดที่แก้ไขได้ ECC (บิตเดียว) เราสามารถทราบอัตราความเสียหายของหน่วยความจำที่เงียบในหน่วยความจำที่ไม่ใช่ ECC
การศึกษาขนาดใหญ่ของ CERN 2007 "Data integrity" : ผู้จำหน่ายประกาศว่า " Bit Error Rate 10 -12 สำหรับโมดูลหน่วยความจำ ", " อัตราความผิดพลาดที่สังเกตได้คือ 4 ออเดอร์ที่มีขนาดต่ำกว่าที่คาด " สำหรับงานที่ต้องใช้ข้อมูลมาก (8 GB / s ของการอ่านหน่วยความจำ) หมายความว่าการพลิกบิตเดียวอาจเกิดขึ้นทุก ๆ นาที ( ผู้ขาย10 -12 BER) หรือหนึ่งครั้งในสองวัน ( 10-16 BER)
บทความ 2009 ของ Google "ข้อผิดพลาด DRAM ในป่า: การศึกษาภาคสนามขนาดใหญ่"กล่าวว่าสามารถมี FIT หนึ่งบิตต่อ 25,000-75000 บิตต่อ Mbit ( ความล้มเหลวในเวลาต่อพันล้านชั่วโมง ) ซึ่งเท่ากับ 1 - 5 บิต ข้อผิดพลาดต่อชั่วโมงสำหรับ RAM 8GB หลังจากการคำนวณของฉัน Paper กล่าวเช่นเดียวกัน: " หมายถึงอัตราข้อผิดพลาดที่แก้ไขได้ของ 2000–6000 ต่อ GB ต่อปี "
รายงาน Sandia ประจำปี 2555 "การตรวจจับและแก้ไขความผิดพลาดของข้อมูลเงียบสำหรับคอมพิวเตอร์ขนาดใหญ่ที่มีประสิทธิภาพสูง" : "การพลิกบิตสองเท่าถือว่าไม่น่าเป็นไปได้" แต่ที่ Cray XT5 หนาแน่นของ ORNL "ในอัตราหนึ่งต่อวันสำหรับ 75,000+ DIMMs" กับ ECC และข้อผิดพลาดบิตเดียวควรจะสูงกว่า
ดังนั้นหากโปรแกรมมีชุดข้อมูลขนาดใหญ่ (หลาย GB) หรือมีอัตราการอ่านหรือการเขียนหน่วยความจำสูง (GB / s หรือมากกว่า) และทำงานเป็นเวลาหลายชั่วโมงเราสามารถคาดหวังได้ถึงบิตเงียบเงียบ ๆ บนฮาร์ดแวร์เดสก์ท็อป อัตรานี้ไม่สามารถตรวจพบได้โดย memtest และโมดูล DRAM นั้นดี
คลัสเตอร์แบบยาวที่ทำงานบนพีซีที่ไม่ใช่ ECC หลายพันเครื่องเช่นการคำนวณแบบกริดทั้งเครือข่ายอินเทอร์เน็ตของ BOINC จะมีข้อผิดพลาดจากบิตการพลิกหน่วยความจำและจากข้อผิดพลาดแบบเงียบของดิสก์และเครือข่าย
และสำหรับเครื่องที่มีขนาดใหญ่กว่า (เซิร์ฟเวอร์นับหมื่น) แม้จะมีการป้องกัน ECC จากข้อผิดพลาดแบบบิตเดียวดังที่เราเห็นในรายงานปี 2012 ของ Sandia อาจมีการเปิดสองครั้งทุกวันดังนั้นคุณจะไม่มีโอกาสทำงานขนาดเต็มขนาน โปรแกรมเป็นเวลาหลายวัน (ไม่มีจุดตรวจปกติและเริ่มต้นใหม่จากจุดตรวจสอบที่ดีในกรณีที่ข้อผิดพลาดสองครั้ง) เครื่องจักรขนาดใหญ่จะได้รับบิตพลิกในแคชและการลงทะเบียน cpu ของพวกเขา (ทริกเกอร์ทั้งสถาปัตยกรรมและภายในเช่นใน ALU datapath) เพราะไม่ใช่ทั้งหมดได้รับการคุ้มครองโดย ECC
PS: ทุกอย่างจะเลวร้ายยิ่งกว่าถ้าโมดูล DRAM ไม่ดี ตัวอย่างเช่นฉันติดตั้ง DRAM ใหม่ลงในแล็ปท็อปซึ่งเสียชีวิตไปหลายสัปดาห์ต่อมา มันเริ่มให้ข้อผิดพลาดของหน่วยความจำมากมาย สิ่งที่ฉันได้รับ: แล็ปท็อปแฮงค์รีบูต linux รัน fsck ค้นหาข้อผิดพลาดในระบบไฟล์รูทและบอกว่าต้องการรีบูตหลังจากแก้ไขข้อผิดพลาด แต่ทุกครั้งที่ทำการรีบูทครั้งต่อไป (ฉันทำประมาณ 5-6 ตัว) ยังมีข้อผิดพลาดที่พบในระบบไฟล์รูท