O que é o ECC ram e por que é melhor?

30

Eu já vi uma discussão sobre o uso de RAM do ECC em servidores. Por que isso é melhor?

    
por Toby Allen 07.05.2009 / 18:34

4 respostas

28

ECC RAM pode se recuperar de pequenos erros em bits, utilizando bits de paridade. Como os servidores são um recurso compartilhado em que o tempo de atividade e a confiabilidade são importantes, a RAM ECC é geralmente usada com apenas uma modesta diferença de preço. A RAM ECC também é usada em estações de trabalho CAD / CAM, pois pequenos erros de bit podem causar erros de cálculo, que se tornam problemas mais significativos quando o projeto é fabricado.

    
por 07.05.2009 / 18:46
29

Excelente estudo no mundo real:

Erros de DRAM na natureza: um estudo de campo em larga escala (pdf)

This paper provides the first large-scale study of DRAM memory errors in the field. It is based on data collected from Google’s server fleet over a period of more than two years making up many millions of DIMM days. The DRAM in our study covers multiple vendors, DRAM densities and technologies (DDR1, DDR2, and FBDIMM).

The paper addresses the following questions: How com mon are memory errors in practice? What are their statistical properties? How are they affected by external factors, such as temperature, and system utilization? And how do they vary with chip-specific factors, such as chip density, memory technology and DIMM age?

We find that in many aspects DRAM errors in the field behave very differently than commonly assumed. For example, we observe DRAM error rates that are orders of magnitude higher than previously reported, with FIT rates (failures in time per billion device hours) of 25,000 to 70,000 per Mbit and more than 8% of DIMMs affected per year. We provide strong evidence that memory errors are dominated by hard errors, rather than soft errors, which most previous work focuses on. We find that, out of all the factors that impact a DIMM’s error behavior in the field, temperature has a surprisingly small effect. Finally, unlike commonly feared, we don’t observe any indication that per-DIMM error rates increase with newer generations of DIMMs.

Interessante que a maioria dos erros de memória é difícil, erros de memória são irrecuperáveis, o que significa que a memória deve ser fisicamente substituída como falha , enquanto erros de memória podem ser corrigidos sobrescrevendo a memória com o correto valor. Isso indica para mim que o valor da ECC é bastante limitado.

There are two kinds of errors that can typically occur in a memory system. The first is called a repeatable or hard error. In this situation, a piece of hardware is broken and will consistently return incorrect results. A bit may be stuck so that it always returns "0" for example, no matter what is written to it. Hard errors usually indicate loose memory modules, blown chips, motherboard defects or other physical problems. They are relatively easy to diagnose and correct because they are consistent and repeatable.

Parece que todos os servidores do estudo usaram ECC, por isso não podemos saber as taxas de erros ECC vs. não-ECC.

This paper studied the incidence and characteristics of DRAM errors in a large fleet of commodity servers. Our study is based on data collected over more than 2 years and covers DIMMs of multiple vendors, generations, technologies, and capacities. All DIMMs were equipped with error correcting logic (ECC) to correct at least single bit errors.

    
por 20.08.2009 / 13:24
9

O ECC tem várias vantagens sobre a paridade. Por um lado, ele pode detectar e reparar erros de bit único e fazê-lo sem ter que parar todo o sistema. Erros de múltiplos bits ainda retornarão um erro de paridade, mas as chances de isso acontecer são astronomicamente baixas durante a vida útil de um PC, a menos que a própria memória esteja com defeito. O ECC é como o seguro de automóveis: ele cobre você para a maioria das coisas que podem dar errado, mas não pode impedir um engavetamento de vários carros.

mais detalhes aqui: Memória ECC: indispensável para servidores, não para PCs desktop

    
por 07.05.2009 / 18:45
5

Para simplificar, consulte Wikipedia :

Electrical or magnetic interference inside a computer system can cause a single bit of DRAM to spontaneously flip to the opposite state. It was initially thought that this was mainly due to alpha particles emitted by contaminants in chip packaging material, but research [5] has shown that the majority of one-off ("soft") errors in DRAM chips occur as a result of background radiation
...
This problem can be mitigated by using DRAM modules that include extra memory bits and memory controllers that exploit these bits. These extra bits are used to record parity or to use an error-correcting code

    
por 07.05.2009 / 18:39