Có một lợi thế nhất định hoặc có thể đo lường được khi sử dụng RAM ECC trong máy tính để bàn không?


21

Tôi lo lắng rất nhiều về việc xây dựng các máy ổn định - trong đó tôi cực kỳ ghét sự cố, khởi động lại, hành vi hài hước, v.v. - và vì vậy, việc sửa lỗi hay còn gọi là RAM ECC dường như sẽ giải quyết một vấn đề lớn: lỗi bộ nhớ.

Nhưng nó thực sự làm việc? Có một lợi thế có thể đo lường được, ví dụ như ít sự cố hoặc hành vi khác?

Ngoài chi phí, tại sao không sử dụng bộ nhớ ECC cho bản dựng PC mới? Tại sao tính năng ECC chủ yếu có sẵn và được hỗ trợ cho các máy chủ lớp máy chủ / máy trạm, nhưng không có trong bo mạch chủ hướng đến người tiêu dùng?


1
Có, ECC thực sự hữu ích chống lại các lỗi mềm. Một lỗi mềm có thể làm sập hệ thống nếu lỗi truy cập bộ nhớ. Nó đã được báo cáo rằng một lỗi mềm duy nhất dừng lại một ngành công nghiệp tỷ đô. Dưới đây là một tài liệu tham khảo chi tiết cho việc này.
dùng984260

Câu trả lời:


10

Tôi đã sử dụng ram ECC trong các máy chủ được vài năm rồi. ECC thực sự tỏa sáng khi bạn đang sử dụng máy của mình rất nhiều, như trong "nó hoạt động hơn 12-16 giờ một ngày". Các máy chủ whitebox nhỏ mà tôi đã xây dựng mà không có ECC, sớm hay muộn, đã phát triển các "vấn đề" cần khởi động lại, nhưng các máy ECC chưa bao giờ có những vấn đề này.

Vì vậy, câu trả lời của tôi là: nếu bạn sử dụng máy tính của bạn rất nhiều , thì rất có thể là có. Nếu bạn sử dụng máy tính 24/7, thì nó là thứ bắt buộc phải có.

Có một số bo mạch chủ hỗ trợ ECC ngoài kia. Chúng thường ở phần cuối "cao hơn", nhưng với một ít nghiên cứu, bạn có thể tìm thấy chúng từ các nhà sản xuất khác nhau. Việc xem xét duy nhất khác là nhớ bật hỗ trợ ECC trong BIOS.


Google đã ra mắt về vấn đề này. Xem http://bloss.zdnet.com/st Storage /? P = 638 để biết điều này thực sự ảnh hưởng đến các hệ thống hiện đại như thế nào.


8
"Các máy chủ whitebox nhỏ mà tôi đã xây dựng mà không có ECC, sớm hay muộn, đã phát triển" các vấn đề "cần khởi động lại" - đây là một tính toán apocryphal / voodoo cho thị hiếu của tôi ..
Jeff Atwood

4
Và bạn nghĩ rằng tôi không nhận thức được điều đó? Làm thế nào khác bạn có thể giải thích cùng một phần mềm trên cùng một phần cứng có vấn đề lạ (thư bị phân phối sai), nhưng các vấn đề tự giải quyết sau khi bạn thay thế tất cả RAM? Tôi cũng không thích ý tưởng đó, nhưng cho rằng đó là thành phần chính duy nhất thay đổi, và cặp đôi với các vấn đề đã biến mất sau khi nâng cấp ECC, thật khó để bỏ qua ...
Avery Payne

1
Tôi cũng quên đề cập - RAM đã được thay thế một lần trước khi nâng cấp ECC và vấn đề vẫn còn. Có lẽ đó là một dấu vết xấu trên mobo. Có lẽ đó là một lỗ hổng thiết kế trong bảng. Tôi đoán rằng nhìn chung có thể có nhiều vấn đề khác, mỗi vấn đề sẽ yêu cầu EE xuất hiện và thăm dò với một phạm vi, nhưng vào cuối ngày, ECC đã giải quyết vấn đề này, nếu không vì lý do nào khác ngoài đảm bảo rằng dữ liệu được tải từ RAM ở trạng thái nhất quán 100%. Jeff, tôi đồng ý rằng đó là voodoo ... tôi không thích nó, nhưng nó có.
Avery Payne

1
@Jeff Atwood - ờ ... hóa ra đó là voodoo, theo nghĩa là bạn không thể thấy điều này xảy ra với máy tính của mình ... xem cs.toronto.edu/~bianca/ con / sigmetrics09.pdf
Avery Payne

6

Tôi chỉ nghĩ rằng ECC có giá trị sử dụng khi máy chủ yêu cầu . Wikipedia :

Phát hiện lỗi và sửa lỗi trong các hệ thống máy tính dường như đi vào và ra khỏi thời trang. Seymour Cray nổi tiếng đã nói "chẵn lẻ là dành cho nông dân" khi được hỏi tại sao ông lại bỏ cái này ra khỏi CDC 6600. Ông đã bao gồm tính chẵn lẻ trong CDC 7600 và nói rằng "Tôi đã học được rằng rất nhiều nông dân mua máy tính."

Tôi không thể tìm thấy một nguồn chính xác trên internet, ngoài những tuyên bố mơ hồ về lỗi một bit mỗi tháng trên mỗi gigabyte, điều này thật vô lý; máy chủ sẽ bị sập trái và phải trên toàn thế giới nếu điều này là sự thật từ xa .

Một số điểm nổi bật từ luồng MetaFilter từ quản trị viên máy chủ thực tế:

Tôi nghĩ ECC là một thứ tuyệt vời, nhưng tôi đã có máy chủ cả có và không có nó, và tôi cũng chưa bao giờ có sự hiện diện hay vắng mặt của nó.

Tôi hiểu mục đích của RAM ECC, nhưng không phải là vấn đề. Ý tôi là, tôi chưa bao giờ nhận thấy bất kỳ vấn đề nào xảy ra do lật bit tia vũ trụ. Ngay cả trên các máy chủ tính toán / biên dịch cá nhân với thời gian tăng nhiều năm. Không phải nói rằng các bit không lật, nhưng chúng chắc chắn không thành vấn đề.

Theo kinh nghiệm của tôi khi điều hành các trang trại của một vài ngàn máy ở đây và đó, bạn có nhiều khả năng sẽ có Ext3 âm thầm làm phiền bạn hơn là có vấn đề có thể sửa được ECC.

Cá nhân, tôi nghĩ ECC hơi sành điệu về hàng hóa, nhưng đó là một chính sách bảo hiểm hợp lý trên một máy chủ lớn, miễn là phí bảo hiểm không quá cao.


Đâm trái và phải? Tôi không nghĩ nó sẽ tệ đến thế. Thú vị lại: "sự cố trái và phải" ... Nhưng hãy xem xét: lỗi bit có thể xảy ra trong RAM chưa được phân bổ (rất nhiều, trên các máy chủ không được sử dụng) hoặc trong bộ nhớ được phân bổ không có khả năng được thực thi hoặc tham chiếu lại trước khi nó được giải phóng và phân bổ lại (ví dụ nếu có một chút lỗi trong mã chết, nó có phát ra âm thanh không?)
Chris W. Rea

Tôi cũng tự hỏi nếu Google có bất cứ điều gì để nói về lỗi bộ nhớ. Họ chạy một TẤN máy chủ. Tôi tự hỏi có bao nhiêu thời gian ngừng hoạt động của máy chủ sẽ được quy cho các lỗi RAM trái ngược với, cung cấp năng lượng trên fritz ...
Chris W. Rea

3

Chúng tôi đã xem xét nó cho các hệ thống quan trọng. Một vấn đề trở thành, làm thế nào để bạn phát hiện lỗi trong phần mềm để kiểm tra tính toàn vẹn bộ nhớ của bạn, khi chương trình được sử dụng để chạy kiểm tra tính toàn vẹn bộ nhớ có thể dễ bị lỗi bộ nhớ không ??? Về cơ bản, bạn không thể và nó làm cho việc phân tích / giảm thiểu thất bại ở chế độ thất bại trở nên khó khăn, vì vậy ECC là một cơ chế giảm thiểu.

Đây là một trong những trường hợp nếu có vấn đề, bạn thực sự có thể đổ lỗi cho các tia vũ trụ ;)


2

Tôi sẽ xem xét ram ECC cho các ứng dụng "nhiệm vụ quan trọng". Nếu một lỗi máy chủ sẽ khiến bạn mất một số tiền đáng kể (hoặc giết người, hoặc bất cứ điều gì), hãy sử dụng ram ECC. Về cơ bản, cân nhắc chi phí của ram ECC so với những gì bạn sẽ mất trong trường hợp xảy ra lỗi.

Nhưng bất kể bạn quyết định điều gì, tôi khuyên bạn nên chạy MemTest86 + qua đêm (hoặc đủ lâu để thực hiện nhiều lần vượt qua toàn bộ không gian địa chỉ). Và nếu bạn có thể tăng nhiệt (theo nghĩa đen), điều đó sẽ cho bạn ý tưởng về cách ram của bạn sẽ hoạt động khi hệ thống đang nóng.

Tôi đã gặp lỗi triển lãm RAM hoàn toàn mới trong MemTest. Theo thời gian, MemTest đã phát hiện ra lỗi "tốt". Đó là một công cụ tuyệt vời và là một trong những điều đầu tiên tôi chạy trên một hệ thống mới.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.