Você usaria RAM ECC em uma estação de trabalho?


21

A RAM do ECC é recomendada para uso em estações de trabalho ou é algo que só é usado em servidores? Se a RAM não ECC funciona em PCs, por que precisaríamos de RAM ECC?

Respostas:


25

À medida que as coisas são armazenadas, deixadas e eventualmente retiradas da RAM, ocorre naturalmente alguma corrupção (as teorias variam, mas a que tem mais peso agora é a EMI do próprio computador). O ECC é um recurso da RAM e das placas-mãe que permite a detecção e correção dessa corrupção.

A corrupção é geralmente muito pequena (o ECC geralmente pode detectar e corrigir de 1 a 2 bits por "palavra" de 64 bits - e isso está muito além das taxas de erro típicas), mas aumenta a frequência com a densidade da RAM. Sua estação de trabalho / PC comum nunca notará isso. Em um servidor em que você está executando RAM de alta densidade 24 horas por dia, 7 dias por semana, em um ambiente de alta demanda e serviços críticos, você toma todas as medidas possíveis para impedir que as coisas quebrem.

Observe também que a RAM do ECC deve ser suportada pela sua placa-mãe e a estação de trabalho / PC comum não a suporta.

A RAM do ECC é mais cara que a não-ECC, é muito mais sensível às velocidades do relógio e pode resultar em um pequeno (1-2%) impacto no desempenho. Se ajudar, uma analogia que funcione é a RAM dos controladores RAID. No seu PC, esse RAID de software assistido por hardware incorporado ao seu chipset é uma ótima proteção contra falhas de disco único. Em um servidor, isso nunca seria suficiente. Você precisa de um RAID de hardware completo e com bateria suportada, com RAM integrada, para garantir que você não perca dados devido a falta de energia, falha de disco ou qualquer outra coisa.

Portanto, não, você realmente não precisa de RAM ECC em sua estação de trabalho. O benefício simplesmente não justifica o preço.


2
Como também apontado na resposta de Basil Bourque , os preços praticamente convergiram hoje em dia (quando olhei mais recentemente, a diferença de preço era de ~ 10% que você esperaria da área adicional de chips, pela mesma quantidade utilizável de RAM) . Talvez valha a pena revisitar particularmente a última frase à luz disso.
um CVn

10

Se este artigo for útil, você deve usar a RAM do ECC.

Não se trata apenas de "Eu não corro um servidor, então não preciso dele". Depende de quanto você valoriza seus dados. Não se trata apenas de falhas ocasionais - o problema é que você pode obter corrupção e não tem como saber que está acontecendo.


3
Do artigo: "[...] 4 GB de RAM têm 96% de chance de ter um erro de bit em três dias sem a RAM do ECC". Parece que os computadores devem estar travando constantemente e os dados devem ficar corrompidos o tempo todo. No entanto, todo mundo parece estar indo muito bem sem o ECC ... por quê?
Calimo

11
Isso ocorre porque esse artigo é falso quando se trata da taxa de erro. A taxa de erro real é mais baixa em muitas ordens de magnitude. Veja o fio reddit relevante reddit.com/r/programming/comments/ayleb/...
mimrock

Qualquer que seja a taxa de erro, ela também depende do que é afetado. Provavelmente, não é algo que causa uma falha no sistema.
Sudo

8

A RAM do ECC fica mais interessante à medida que os tamanhos de memória aumentam. A probabilidade de um erro de bit único em uma máquina com 8 GB de RAM é muito maior do que era nos dias de um 640 K PC / XT, simplesmente devido ao maior número de bits. Em um servidor de banco de dados em que a RAM possa estar em um buffer de disco, um erro de bit também pode corromper o armazenamento em disco. Geralmente, você esperaria usar a memória ECC em um servidor.

Algumas estações de trabalho (particularmente aquelas com CPUs Xeon ou Opteron) usam memória registrada, que praticamente só vem nos sabores ECC. Em um PC de mesa, você pode vê-lo como um exagero.


4

A RAM do ECC foi projetada para ajudar na prevenção e correção de erros baseados em memória, geralmente usando algum tipo de código de restrição ou redundância modular. Isso é muito útil em servidores que continham dados importantes ou precisam de alta disponibilidade, mas tem um custo.

Embora provavelmente valha a pena pagar mais pelos seus servidores importantes, você realmente deseja fazê-lo na sua máquina de mesa, importa se houver algum erro de memória ocasionalmente? Claro que importa se o seu banco de dados SQL soltar alguns dados durante uma transação, mas você se importa se o documento do Word for afetado por um ligeiro problema de memória?


4

Se você deseja uma estação de trabalho confiável , deseja uma RAM ECC. Ele travará com menos frequência e o trabalho realizado nele e os documentos armazenados em cache na RAM não serão corrompidos aleatoriamente.


4
Parece uma chance imensuravelmente pequena de melhorar a estabilidade. As únicas falhas relacionadas à RAM que conheço nas estações de trabalho são devidas a RAM ou aplicativos ruins, nunca algo que o ECC teria impedido. Faz algum sentido (leia-se: apenas um pouquinho) em servidores nos quais você processa terabytes de dados constantemente, mas nas estações de trabalho talvez a única coisa que se aproxime seja a renderização gráfica de ponta ou o processamento de vídeo. Em resumo, acho que você pode obter uma estação de trabalho completamente confiável sem a RAM do ECC.
Chris Thorpe

Corri o memtest86 várias vezes durante a noite sem nenhum erro. Essa é a frequência com que ocorre a inversão de memória ... Se vidas dependem disso, isso justificaria o uso do ECC; caso contrário, não acho que esse seja um problema real em 99,9% dos casos. É muito improvável que 1 bit aleatório por mês atinja algo crítico em terabytes de dados.
Inf3rno 7/05

Ofc. O ZFS é uma exceção.
Inf3rno 7/05

11
@ inf3rno Esse argumento? Pernoite não é nada. A altitude é importante. Eu moro no Colorado e no sistema ECC vejo vários erros corrigíveis a cada mês. Volte com logs de um sistema ECC ou você não tem informações. Leia também o relatório do Google sobre erros de ECC.
Zan Lynx


4

Um benefício adicional do ECC sobre o que foi mencionado acima é que você pode detectar RAM ruim. Enquanto a execução de uma longa sessão do memtest86 normalmente encontra problemas, pode haver problemas muito específicos com a RAM que aparecem apenas raramente e em certos casos de uso. Isso ainda pode acontecer com muito mais frequência do que a corrupção contra a qual uma RAM ECC perfeitamente boa foi projetada para proteger - talvez uma vez por mês. Portanto, se você instalar um software de monitoramento, pode ter certeza de que sua RAM está boa ou substituir chips ruins. Ainda é um benefício marginal, mas como a memória ECC não é muito mais cara que a RAM normal, pode valer a pena.


1

Agora, a memória ECC custa aproximadamente o mesmo que a memória não ECC, pois os preços caíram. Então verifique os preços; se os preços estiverem próximos, compre o ECC se a sua estação de trabalho o acomodar.


1

Eu acho que pode haver alguma confusão apenas com base no título da pergunta.

Se você quer dizer apenas o PC de mesa comum, geralmente é baseado em uma plataforma que nem sequer tem suporte a ECC.

Se você quer dizer um computador de classe de estação de trabalho , é provável que ele venha com a memória ECC, quer você goste ou não.
Em geral, a classe de estação de trabalho é tipicamente baseada em hardware de servidor, mas com gráficos adequados e empacotada em um formato diferente.

A carga de trabalho esperada também é mais exigente do que a do PC de mesa; portanto, se você reconhece que o ECC faz sentido para servidores, acho que não é muito difícil que o ECC também faça sentido para as estações de trabalho.

Para PCs de mesa, há algum debate sobre se o ECC faria sentido ou não. Pode-se argumentar absolutamente que tudo deve ter ECC, mas, no momento, não é prático, pois a indústria decidiu tornar o ECC um recurso para diferenciar hardware de ponta.


0

De acordo com o artigo Zan Lynx, vinculado nos comentários: Erros DRAM em estado selvagem: um estudo de campo em larga escala , os erros incorrigíveis são comuns, enquanto erros aleatórios corrigíveis raramente aparecem em um sistema. A incidência é provavelmente algumas em um ano, mas depende do uso.

Portanto, em um ambiente de servidor, os erros corrigíveis podem não ser tão importantes, mas você inicializa as máquinas servidores raramente; portanto, erros incorrigíveis causados ​​por falhas na RAM podem ficar lá sem serem detectados por um tempo corrompendo seus dados. Eu acho que essa é a principal razão pela qual os servidores precisam de ECC. As estações de trabalho inicializam e, portanto, verificam a RAM com freqüência, para que falhas de hardware possam ser detectadas a cada reinicialização. Se essa frequência for suficiente para os seus negócios, acho que você não precisará de RAM ECC em sua estação de trabalho.

Se estamos falando de erros de memória, é melhor fazer a versão dos documentos importantes no servidor. Portanto, se a estação de trabalho ler e modificar alguma coisa, o conteúdo original não deverá ser substituído no servidor. Os backups regulares podem fazer o mesmo por você.

Outro aspecto dessa questão é segurança. Se sua estação de trabalho estiver conectada a qualquer rede não segura, ela poderá estar vulnerável ao ataque de golpe de linha , que explora um fenômeno relacionado à DRAM. Portanto, da perspectiva da segurança, é melhor usar a RAM do ECC.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.