¿Por qué el iMac no permite la comprobación de errores de paridad de memoria?

3

Basado en esta página de soporte de Apple , los iMacs (en particular el 5K de 2014 que acabo de ordenar) no lo hacen Soporta paridad comprobando en la memoria. De otros artículos, parece que ECC tampoco es compatible.

Me parece sorprendente. Si hay un error de memoria, entonces la computadora simplemente sigue su camino alegre, propagando el error hasta que se produzca alguna otra excepción detectable (como acceder a una dirección de memoria no válida o ejecutar una instrucción no válida). Aunque podría no hacerlo, y simplemente dar como resultado datos incorrectos o dañados.

A menudo realizo grandes simulaciones numéricas, para las cuales tal error probablemente no cause un bloqueo, pero es probable que se propague a un gran error en el resultado.

Ni siquiera necesitas un rayo cósmico para obtener un error. El impulso de empaquetar a densidades cada vez más altas inevitablemente genera vulnerabilidades, como el martilleo de filas. Un estudio midió una tasa promedio de cuatro errores por año por DIMM.

¿Cuál es la razón para no verificar la paridad? Puedo ver que el ECC puede ralentizar un poco las cosas y costar más, pero al menos un error de paridad detectado puede hacer que el sistema se detenga en lugar de propagar un error en silencio. 65 bits en lugar de 64 bits sería un precio muy pequeño a pagar. Incluso si tuviera sentido que un consumidor no tuviera una verificación de paridad, al menos me gustaría la posibilidad de reemplazar la memoria para obtener la verificación de paridad. Parece que incluso el estándar DDR3 no admite solo la comprobación de paridad, solo ECC.

    
pregunta Mark Adler 14.06.2015 - 23:08

1 respuesta

5

Esto no es específico de Apple en absoluto. Primero, ¿por qué se usa ECC (72 bits) sobre la paridad? La razón es simplemente que los chips DRAM se han hecho en anchos de datos de 4, 8 o 16 bits durante décadas. ECC le permite simplemente agregar otro chip de productos básicos, en lugar de crear un chip específico de 5 bits de bajo volumen. Además, cuando tiene paridad, no puede corregir ningún error, por lo que todo lo que puede hacer es bloquear la computadora cuando se detecta un error. Así que el efecto neto es causar más bloqueos en la computadora, incluso si el error es parte de la RAM que no está en uso.

Hay dos razones por las que Apple no puede poner el ECC. Una es simplemente que el controlador de memoria integrado que pone Intel no es compatible con el ECC para obligar a los fabricantes de estaciones de trabajo / servidores a comprar la línea Xeon más cara. Puede consultar los procesadores compatibles con ECC en el ARK de Intel. Verá que solo son Xeons y CPU de gama baja (mercado de dispositivos de servidor), pero ninguno en el rango Core i5 o i7.

En segundo lugar, Pinout SO-DIMM simplemente carece de pines de datos para el bus de 72 bits Para reducir el tamaño de las computadoras portátiles. El enrutamiento del bus de memoria es muy difícil y las 8 líneas adicionales también lo dificultarían a los fabricantes de placas base portátiles.

Muchas simulaciones numéricas no requieren ECC. Las pruebas del mundo real han sugerido que el costo adicional y la penalización de velocidad de ECC no valen la pena . Como otro ejemplo, algunas compañías incluso te dicen que desactives el ECC.

    
respondido por el user71659 15.06.2015 - 01:41

Lea otras preguntas en las etiquetas