Tôi có nên sử dụng bios Bio Advanced Advanced ECC trong Dell PowerEdge R710 Bios với ECC DIMM không?


14

Tôi có một Dell PowerEdge R710 với CPU Intel Xeon E5503 kép. Nó có 96 GB (12x8GB) ECC DIMM. Trong BIOS của nó, bộ nhớ được cấu hình cho "Advanced ECC".

Câu hỏi của tôi là nếu các DIMM của tôi đã là ECC, liệu có nên bật chế độ "ECC nâng cao" này trong BIOS hay tôi nên chuyển sang "Tối ưu hóa"?

Dell mô tả các chế độ này như sau:

Chế độ ECC nâng cao Chế độ này sử dụng hai MCH và mối quan hệ gắn kết chúng với nhau để mô phỏng DIMM bus dữ liệu 128 bit. Điều này chủ yếu được sử dụng để đạt được Hiệu chỉnh dữ liệu thiết bị đơn (SDDC) cho DIMM dựa trên công nghệ DRAM x8. SDDC được hỗ trợ với các DIMM dựa trên x4 ở mọi chế độ bộ nhớ. Một MCH hoàn toàn không được sử dụng và bất kỳ bộ nhớ nào được cài đặt trong kênh này sẽ tạo ra một thông báo cảnh báo trong quá trình POST.

Chế độ tối ưu hóa bộ nhớ Trong chế độ này, các MCH chạy độc lập với nhau; ví dụ, một cái có thể không hoạt động, một cái có thể thực hiện thao tác ghi và cái còn lại có thể chuẩn bị cho thao tác đọc. Bộ nhớ có thể được cài đặt trong một, hai hoặc ba kênh. Để nhận ra đầy đủ lợi ích hiệu năng của chế độ tối ưu hóa bộ nhớ, cả ba kênh trên mỗi CPU phải được đưa vào. Điều này ngụ ý rằng một số cấu hình bộ nhớ 'không điển hình', chẳng hạn như 3 GB, 6 GB hoặc 12 GB, sẽ mang lại hiệu suất tốt nhất. Đây là chế độ được khuyến nghị trừ khi các tính năng RAS cụ thể là cần thiết.

Hướng dẫn sử dụng dành cho chủ sở hữu phần cứng hệ thống Dell PowerEdge R710 (PDF)

Câu trả lời:


23

Nó sẽ tạo ra sự khác biệt, nó sẽ chỉ có ý nghĩa nếu bạn yêu cầu các tính năng RAS (Độ tin cậy, Tính khả dụng và Dịch vụ) trên các thiết bị x4 hoặc x8 và hiểu được sự đánh đổi cho nhu cầu của bạn. Thông tin chi tiết có thể được giải thích trong Máy chủ Dell giấy trắng Dell ™ PowerEdge ™ 2009 - Bộ nhớ .

Ngoài ra, cấu hình và bố cục với các chi tiết cụ thể cho R710 có sẵn trong Sách hướng dẫn kỹ thuật cho PowerEdge R710 - (Google này vì tôi không có tiếng tăm về liên kết).

Vấn đề quan trọng cần lưu ý là sự khác biệt giữa ECC trên chip và "ECC nâng cao" do BIOS của Dell cung cấp cho hiệu chỉnh dữ liệu thiết bị đơn (SDDC). Bạn sẽ có một tác động hiệu suất trên cả hai. ECC sẽ phục hồi từ các lỗi trong quá trình ghi vào chip. Tuy nhiên, SDDC tiến thêm một bước và sẽ tổ chức các bit để toàn bộ chip có thể bị lỗi và vẫn có thể phục hồi được. Xem ví dụ và chi tiết Chipset SDDC E7500

Vấn đề là hiệu năng và / hoặc độ tin cậy của bạn có phải là mối quan tâm lớn nhất trong việc sử dụng máy cụ thể của bạn hay không. Nếu lỗi chip sẽ làm mất dữ liệu quan trọng hoặc việc sử dụng trên máy này và nó không dư thừa trong quá trình triển khai, Advanced ECC có thể là một cách tuyệt vời để đi. Tuy nhiên, bạn làm như vậy với tác động hiệu suất có thể quan trọng hơn đối với bạn.

Tôi đã triển khai cả hai lĩnh vực trên các máy chủ Dell PowerEdge cho các triển khai Microsoft SQL Server duy nhất. Nếu tôi có thể giúp đỡ nhiều hơn, chỉ cần bình luận để cho tôi biết.

Mong rằng sẽ giúp.

EDIT: Khoảng cách bảo hiểm / triển khai ECC

Có, có một khoảng cách bảo hiểm ngay cả khi bạn thực hiện cả hai. Vì, bạn đặc biệt sử dụng một cụm các máy chủ có tính sẵn sàng cao, IMHO bạn nên sử dụng Advanced ECC. Tác động hiệu suất của bạn là tối thiểu so với lợi ích cho các thiết bị phân cụm. Theo Crucial, bạn chỉ giảm 2% hiệu năng trên bộ nhớ ECC nói chung.

Khoảng cách sẽ cụ thể hơn đối với các loại lỗi xảy ra và cách mỗi lỗi xử lý các lỗi. Trong tình huống cụ thể của bạn, nó không nên chuyển thành mất dữ liệu. Vì đây là một DBMS doanh nghiệp và các lỗi, các vấn đề tương tranh, v.v. được quản lý ở cấp phần mềm để tránh mất dữ liệu. Lịch sử chi tiết được lưu giữ các thay đổi trong DBMS được định cấu hình đúng và phần mềm sử dụng phần mềm thường có thể thiết lập để giao dịch "khôi phục" bất kỳ nếu xảy ra lỗi nghiêm trọng.

Triển khai ECC

ECC sẽ cố gắng sửa bất kỳ lỗi bit nào trong việc đọc / ghi bộ nhớ. Tuy nhiên, nếu lỗi nghiêm trọng hơn, thì thậm chí ECC sẽ không thể phục hồi, gây mất dữ liệu tiềm năng . Có nhiều thảo luận về ECC cũng như tại ServerFault / ram ECC là gì và tại sao nó tốt hơn?

Theo Wikipedia trên ECC_Memory

Bộ nhớ ECC duy trì một hệ thống bộ nhớ hiệu quả không có lỗi một bit ...

SDDC

Nếu bạn tham khảo tài liệu chipset E7500 ở trên (lưu ý 55xx / 56xx từ Intel yêu cầu đăng nhập / hợp tác nhưng ý tưởng là tương tự, đó là lý do tại sao tôi không liên kết ban đầu), mô tả SDDC và cách thực hiện. Về cơ bản, nó sử dụng một kỹ thuật để tổ chức các từ được ghi vào bộ nhớ để đảm bảo tất cả được viết theo cách mà mỗi từ sẽ chỉ chứa một lỗi bit, nghĩa là từ đó sẽ được phục hồi từ lỗi bit đơn (như trên). Bây giờ, đó là mỗi từ, do đó, nó có khả năng phục hồi từ tối đa 4 bit trên các thiết bị x4 (1 mỗi từ) và tối đa 8 bit trên các thiết bị x8 (vẫn là 1 trên mỗi từ) bằng cách sửa lỗi từng từ.

Lỗi bổ sung, lỗi bit nhiều hơn, lỗi bộ nhớ tổng, lỗi kênh, lỗi bus, v.v ... vẫn có thể gây ra những vấn đề khủng khiếp nhưng đó là lý do tại sao bạn có một cụm và DBMS doanh nghiệp.

Nói tóm lại, nếu bạn bật mọi thứ và có quá nhiều lỗi bit cho thuật toán sửa lỗi, bạn vẫn sẽ gặp lỗi tức là khoảng cách phạm vi bảo hiểm lỗi. Đây có thể là đặc biệt hiếm mặc dù.


Cụ thể hơn, đây là một bộ gồm 3 chiếc R710 giống hệt nhau chạy cụm Oracle DB. Vì vậy, sự sẵn có của một máy duy nhất không phải là quan trọng nhất. Tuy nhiên, tham nhũng dữ liệu đang gặp rắc rối. Tôi đã xem sách hướng dẫn kỹ thuật R710. Nó không có nhiều thông tin bổ sung về bộ nhớ. Vậy với ECC trên dimm nó sẽ phát hiện / sửa lỗi trong các chip của dimm? Tuy nhiên, Advanced ECC sẽ phát hiện / sửa lỗi cho toàn bộ dimm? Nếu đó là trường hợp, có một khoảng cách bảo hiểm giữa 2 phương pháp này?
Mxx

@Mxx Tôi đã cập nhật câu trả lời của mình để cố gắng giải thích. IMHO vì bạn đang chạy cụm Oracle DB, tôi nghi ngờ bạn sẽ bị mất dữ liệu. Trong trường hợp hiếm khi xảy ra lỗi, DBMS được xây dựng để ngăn ngừa mất dữ liệu và các vấn đề khác. Trong trường hợp của bạn cho cụm, tôi sẽ kích hoạt ECC nâng cao vì hiệu suất sẽ không đáng kể, nhưng bạn có thể kiểm tra nó dưới tải nếu bạn lo ngại.
Matthew Reid

Cảm ơn bạn rất nhiều cho câu trả lời. Tôi xin lỗi, nhưng tôi vẫn chưa rõ về một điều. Điều gì "ECC nâng cao" có thể bảo vệ tôi khỏi ECC trên màn hình mờ đó không thể? Nếu chúng ta đang sử dụng dbms, thì việc chuyển bios sang "chế độ tối ưu hóa" để có được lợi ích hiệu năng của cấu hình bộ nhớ ba kênh và sẽ được bảo vệ bởi xác thực của ECC và Oracle một cách mờ nhạt?
Mxx

@Mxx Tôi cho rằng nó không được bảo đảm chính xác. Tuy nhiên, với tùy chọn ECC nâng cao, bạn sẽ có thể khôi phục từ nhiều lỗi hơn mà không cần can thiệp (xác suất tổng thể của lỗi bit thấp hơn) và hiệu suất đạt được sẽ thấp. Đó chắc chắn là cố gắng thấp hơn để sửa chữa tại DBMS. Mặc dù DBMS có thể lưu dữ liệu của bạn, trải nghiệm của người dùng cuối vẫn có thể được trình bày trong sự cố phần mềm và / hoặc khôi phục hoạt động có khả năng lớn. Tôi cho rằng với việc giám sát nếu chip bị lỗi và tần số lỗi tăng lên, ECC nâng cao có thể cho bạn thời gian để thay thế DIMM sạch sẽ.
Matthew Reid
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.