Devo usar o BIOS “Advanced ECC” no Dell PowerEdge R710 Bios com DIMMs ECC?

14

Eu tenho um Dell PowerEdge R710 com dois processadores Intel Xeon E5503. Tem 96 GB (12x8 GB) de DIMMs ECC. Em seu BIOS, a memória é configurada para "ECC avançado".

A minha pergunta é se os meus DIMMs já são ECC, faz sentido ativar este modo "Advanced ECC" no BIOS ou devo mudar para "Optimized"?

A Dell descreve esses modos como:

Advanced ECC Mode This mode uses two MCHs and “ties” them together to emulate a 128-bit data bus DIMM. This is primarily used to achieve a Single Device Data Correction (SDDC) for DIMMs based on x8 DRAM technology. SDDC is supported with x4 based DIMMs in every memory mode. One MCH is completely un-utilized, and any memory installed in this channel will generate a warning message during POST.

Memory Optimized Mode In this mode, the MCHs run independently of each other; for example, one can be idle, one can be performing a write operation, and the other can be preparing for a read operation. Memory may be installed in one, two, or three channels. To fully realize the performance benefit of the memory optimized mode, all three channels per CPU should be populated. This implies that some ‘atypical’ memory configurations, such as 3GB, 6GB, or 12GB, will yield the best performance. This is the recommended mode unless specific RAS features are needed.

Manual do proprietário do hardware dos sistemas Dell PowerEdge R710 (PDF)

    
por Mxx 10.05.2012 / 04:10

1 resposta

23

Faz diferença, só fará sentido se você precisar dos recursos RAS (Confiabilidade, Disponibilidade e Serviço) em dispositivos x4 ou x8 e entender as compensações para suas necessidades. Mais detalhes podem ser explicados no white paper da Dell Dell ™ Servidores PowerEdge ™ 2009 - Memória .

Além disso, a configuração e o layout com detalhes específicos do R710 estão disponíveis no Guia Técnico do PowerEdge R710 - (no Google, porque não tenho reputação de link).

A questão importante a ser observada é a diferença entre o ECC no chip e o "Advanced ECC" fornecido pelo BIOS da Dell para correção de dados de dispositivo único (SDDC). Você terá um impacto no desempenho em ambos. O ECC se recuperará de erros durante as gravações no chip. No entanto, o SDDC vai um passo além e organizará os bits para que um chip inteiro possa falhar e ainda ser recuperável. Veja um exemplo e detalhes Chipset SDDC E7500

As questões são se o seu desempenho e / ou confiabilidade são a maior preocupação em seu uso específico da máquina. Se uma falha no chip causar uma perda de dados críticos ou uso nesta máquina e não for redundante na implementação, o ECC Avançado pode ser um ótimo caminho a percorrer. No entanto, você faz isso com um impacto no desempenho que pode ser mais importante para você.

Eu implementei os dois em campo nos servidores Dell PowerEdge para implementações únicas do Microsoft SQL Server. Se eu puder ser de mais ajuda, apenas comente para me avisar.

Espero que ajude.

EDIT: Abertura de cobertura / implementações de ECC

Sim, existe uma lacuna de cobertura, mesmo que você implemente as duas. Desde então, você está usando especificamente um cluster de servidores de alta disponibilidade, IMHO você deve usar o ECC avançado. Seu impacto no desempenho é mínimo comparado aos benefícios dos dispositivos em cluster. De acordo com a Crucial, você tem apenas um queda de 2% no desempenho na memória ECC em geral.

A lacuna seria mais específica para os tipos de erros que ocorrem e como cada um manipula os erros. Em sua situação específica, não deve se traduzir em perda de dados. Como esse é um SGBD corporativo e os erros, problemas de simultaneidade etc. são gerenciados no nível do software para evitar a perda de dados. É mantido um histórico detalhado das mudanças em um DBMS configurado adequadamente e o software que o utiliza pode tipicamente ser configurado para ter a transação "reversível", caso ocorra um erro grave.

Implementações de ECC

O ECC tentará corrigir os erros de bit na memória de leitura / gravação. No entanto, se o erro for mais significativo, nem mesmo o ECC poderá se recuperar, causando uma perda potencial de dados. Há mais discussões sobre ECC também em ServerFault / What is ECC ram e por que é melhor?

De acordo com a Wikipedia sobre ECC_Memory

ECC memory maintains a memory system effectively free from single-bit errors...

SDDC

Se você consultar o documento do chipset E7500 acima (veja o 55xx / 56xx da Intel requer login / parceria, mas a idéia é semelhante, e é por isso que eu não fiz o link originalmente), que descreve o SDDC e como isso é possível. Basicamente, ele usa uma técnica para organizar as palavras escritas na memória que garante que todas sejam escritas de tal forma que cada palavra contenha apenas um único erro de bit , ou seja, a palavra deve ser recuperada do erro de bit único (como acima). Agora, essa é a palavra, portanto, poderia recuperar erros de até 4 bits em dispositivos x4 (1 por palavra) e erros de até 8 bits em dispositivos x8 (ainda 1 por palavra) por erro de correção de cada palavra.

Erros adicionais, mais erros de bit, falha total de memória, falha de canal, falha de barramento, etc. podem ainda causar problemas horríveis, mas é por isso que você tem um cluster e um Enterprise DBMS.

Em resumo, se você tiver tudo ativado e houver muitos erros de bit para algoritmos de correção de erros corrigir você ainda terá um erro, ou seja, falha de cobertura de erro. Estes podem ser excepcionalmente raros embora.

    
por 14.05.2012 / 15:11