ECC DIMM과 함께 Dell PowerEdge R710 Bios의 BIOS "Advanced ECC"를 사용해야합니까?


14

듀얼 Intel Xeon E5503 CPU가 장착 된 Dell PowerEdge R710이 있습니다. ECC DIMM은 96GB (12x8GB)입니다. BIOS에서 메모리는 "Advanced ECC"에 맞게 구성됩니다.

내 질문은 DIMM이 이미 ECC 인 경우 BIOS에서이 "고급 ECC"모드를 활성화하는 것이 합리적입니까? 아니면 "최적화"로 전환해야합니까?

Dell은 이러한 모드를 다음과 같이 설명합니다.

고급 ECC 모드이 모드는 두 개의 MCH를 사용하여 128 비트 데이터 버스 DIMM을 에뮬레이션하기 위해 서로 묶습니다. 이것은 주로 x8 DRAM 기술을 기반으로하는 DIMM 용 SDDC (Single Device Data Correction)를 달성하는 데 사용됩니다. SDDC는 모든 메모리 모드에서 x4 기반 DIMM으로 지원됩니다. 하나의 MCH가 완전히 사용되지 않으며이 채널에 설치된 모든 메모리는 POST 중에 경고 메시지를 생성합니다.

메모리 최적화 모드이 모드에서 MCH는 서로 독립적으로 실행됩니다. 예를 들어, 하나는 유휴 상태이고 하나는 쓰기 작업을 수행 할 수 있고 다른 하나는 읽기 작업을 준비 할 수 있습니다. 메모리는 1 개, 2 개 또는 3 개의 채널에 설치 될 수 있습니다. 메모리 최적화 모드의 성능 이점을 완전히 실현하려면 CPU 당 3 개의 채널을 모두 채워야합니다. 이는 3GB, 6GB 또는 12GB와 같은 일부 '비정형'메모리 구성이 최상의 성능을 제공함을 의미합니다. 특정 RAS 기능이 필요하지 않은 경우 권장 모드입니다.

Dell PowerEdge R710 시스템 하드웨어 소유자 매뉴얼 (PDF)

답변:


23

x4 또는 x8 장치에 RAS (신뢰성, 가용성 및 서비스) 기능이 필요하고 요구 사항에 대한 균형을 이해하는 경우에만 차이가 있습니다. 자세한 내용은 Dell 백서 Dell ™ PowerEdge ™ 서버 2009- 메모리에 설명되어 있습니다.

또한 R710과 관련된 세부 정보가 포함 된 구성 및 레이아웃은 PowerEdge R710의 기술 안내서에서 확인할 수 있습니다 (Google은 링크로 유명하지 않기 때문에 Google에서 제공합니다).

주목해야 할 중요한 문제는 칩의 ECC와 Dell의 단일 장치 데이터 수정 (SDDC) 용 BIOS에서 제공하는 "고급 ECC"의 차이점입니다. 둘 다 성능에 영향을 미칩니다. ECC는 칩에 쓰는 동안 오류를 복구합니다. 그러나 SDDC는 한 걸음 더 나아가 비트를 구성하여 전체 칩이 고장 나고 복구 할 수 있도록합니다. SDDC E7500 칩셋 및 세부 사항보기

문제는 특정 기계 사용에있어 성능 및 / 또는 안정성이 가장 중요한 문제인지 여부입니다. 칩 오류로 인해이 시스템에서 중요한 데이터 또는 사용이 손실되고 구현시 중복되지 않는 경우 Advanced ECC를 사용하는 것이 좋습니다. 그러나 더 중요한 성능 영향을 미칩니다.

단일 Microsoft SQL Server 구현을 위해 Dell PowerEdge 서버의 현장에서 두 가지를 모두 구현했습니다. 도움이 더 필요한 경우 의견을 보내 주시기 바랍니다.

희망이 도움이됩니다.

편집 : 적용 격차 / ECC 구현

예, 둘 다 구현하더라도 적용 범위에 차이가 있습니다. 특히 고 가용성 서버 클러스터를 사용하고 있으므로 IMHO는 Advanced ECC를 사용해야합니다. 클러스터 된 장치의 이점에 비해 성능에 미치는 영향은 최소화됩니다. Crucial에 따르면 ECC 메모리의 성능 은 일반적으로 2 % 감소 합니다.

차이는 발생하는 오류 유형과 각 오류 처리 방법에 따라 더 구체적입니다. 특정 상황에서는 데이터 손실로 해석되어서는 안됩니다. 이것은 Enterprise DBMS이므로 데이터 손실을 방지하기 위해 소프트웨어 수준에서 오류, 동시성 문제 등이 관리됩니다. 상세 히스토리는 올바르게 구성된 DBMS의 변경 사항을 유지하며이를 사용하는 소프트웨어는 일반적으로 심각한 오류가 발생할 경우 트랜잭션을 "롤백"하도록 설정할 수 있습니다.

ECC 구현

ECC는 메모리 읽기 / 쓰기에서 비트 오류를 ​​수정하려고 시도합니다. 그러나 오류가 더 심각하면 ECC조차도 복구 할 수 없어 잠재적 인 데이터 손실이 발생할 있습니다. ECC에 대한 자세한 내용은 ServerFault / ECC 램이란 무엇이며 왜 더 좋습니까?

ECC_Memory의 Wikipedia에 따르면

ECC 메모리는 단일 비트 오류가없는 메모리 시스템을 효과적으로 유지합니다 ...

SDDC

위의 E7500 칩셋 문서를 참조하면 ( Intel의 55xx / 56xx는 로그인 / 파트너십이 필요 하지만 아이디어는 비슷하므로 원래 링크하지 않은 이유) SDDC 및 가능한 방법에 대해 설명합니다. 기본적으로 모든 단어가 단일 비트 오류 만 포함하는 방식으로 모든 단어가 메모리에 쓰여지는 단어를 구성하는 기술을 사용합니다. 즉, 단어를 단일 비트 오류에서 복구 할 수 있어야합니다 (위와 같이). 이제는 단어 단위이므로 x4 장치에서 최대 4 비트 오류 (워드 당 1 개) 및 x8 장치에서 최대 8 비트 오류 (여전히 단어 당 1 개)에서 각 단어를 수정하여 잠재적으로 복구 할 수 있습니다.

추가 오류, 비트 오류, 총 메모리 오류, 채널 오류, 버스 오류 등은 여전히 ​​끔찍한 문제를 일으킬 수 있지만 클러스터와 Enterprise DBMS가있는 이유입니다.

간단히 말해서, 모든 것이 활성화되어 있고 오류 정정 알고리즘에 대해 너무 많은 비트 오류가있는 경우 여전히 오류 범위 오류가 발생합니다. 그러나 이것은 매우 드문 일입니다.


보다 구체적으로 말하면 이것은 Oracle DB 클러스터를 실행하는 3 개의 동일한 R710 세트입니다. 따라서 단일 머신의 가용성이 가장 중요하지 않습니다. 그러나 데이터 손상이 문제가되고 있습니다. R710 기술 안내서를 보았습니다. 메모리에 대한 추가 정보가 많지 않았습니다. 따라서 on-dimm ECC를 사용하면 dimm 칩 내의 오류를 감지 / 수정합니까? 그러나 Advanced ECC는 전체 희미한 부분의 오류를 감지 / 수정합니까? 이 경우 두 방법 사이에 적용 범위가 있습니까?
Mxx

@Mxx 설명을 시도하기 위해 답변을 업데이트했습니다. IMHO는 Oracle DB 클러스터를 실행하고 있기 때문에 데이터 손실이 발생합니다. 드문 경우지만 DBMS는 데이터 손실 및 기타 문제를 방지하기 위해 구축되었습니다. 클러스터의 경우 성능을 무시할 수 있기 때문에 Advanced ECC를 사용하도록 설정하지만 걱정되는 경우로드 상태에서 테스트 할 수 있습니다.
Matthew Reid

답변 주셔서 감사합니다. 죄송하지만 여전히 한 가지 분명하지 않습니다. "Advanced ECC"는 딥 ECC가 할 수 없었던 그 무엇으로부터 나를 보호 할 수 있습니까? dbms를 사용하는 경우 트리플 채널 메모리 구성의 성능 이점을 얻기 위해 bios를 "최적화 된 모드"로 전환하는 것이 합리적이지 않으며 on-dimm ECC 및 Oracle 자체 검증으로 보호됩니까?
Mxx

@Mxx 정확히 어느 쪽도 보장되지는 않는다고 생각합니다. 그러나 Advanced ECC 옵션을 On으로 설정하면 개입없이 더 많은 오류를 복구 할 수 있으며 (비트 오류의 전체 확률이 낮음) 성능 적중률이 낮아야합니다. DBMS에서 수정 시도가 확실히 낮습니다. DBMS는 데이터를 저장할 수 있지만 최종 사용자 경험은 여전히 ​​소프트웨어 충돌 및 / 또는 잠재적으로 큰 작업의 롤백으로 나타날 수 있습니다. 칩이 고장 나고 오류 빈도가 증가하는지 모니터링하면 Advanced ECC가 DIMM을 깨끗하게 교체 할 수있는 시간을 줄 수 있습니다.
Matthew Reid
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.