COMPUTING

Linus Tovalds culpa a Intel por matar la RAM ECC en los sistemas de consumo

Linus Torvalds no está contento con la forma en que Intel ha tratado el soporte para la memoria del Código de corrección de errores (ECC), y culpa al gigante del silicio de esencialmente matar la tecnología fuera de los servidores. La memoria ECC se utiliza para detectar y corregir errores de un solo bit en la memoria. No puede corregir errores de varios bits, pero solo arreglar un solo bit puede marcar una diferencia significativa en la estabilidad del sistema.

Hubo un momento en el que se podía comprar compatibilidad con ECC en los conjuntos de chips convencionales, pero Intel eliminó esa capacidad en plataformas que no eran Xeon hace varios años. El 975X puede haber sido la última plataforma Intel para consumidores que lo admitió, y esa familia se lanzó hace 15 años. El chipset Xeon 3450 era compatible con ciertas CPU de gama alta de la familia Nehalem, pero sigue siendo un chipset Xeon, no una parte convencional.

Como resultado, el soporte para ECC en productos de consumo y la disponibilidad de ECC RAM para productos de consumo, ambos cayeron por un precipicio. Linus resume su caso en una publicación bastante extensa, argumentando que la persistencia continua de Rowhammer y el hecho de que los errores de un solo bit nunca han desaparecido para declarar las políticas de ECC de Intel como “malas y equivocadas”. De hecho, se ocupa de toda la industria DRAM, escritura:

Los fabricantes de memorias afirman que se debe a la economía y al menor consumo de energía. Y son bastardos mentirosos: permítanme una vez más señalar cómo esos problemas han existido durante varias generaciones, pero estos malditos vendieron felizmente hardware roto a los consumidores y afirmaron que era un “ataque”, cuando siempre fue así. “Estamos tomando atajos.

Torvalds también se refiere a numerosos incidentes de “fallos” del kernel que cree que pueden explicarse mejor mediante un error de hardware. Si bien es difícil obtener datos objetivos sobre este tipo de cosas, un informe de Google de 2009 sobre errores de memoria proporciona algunas pruebas de que tiene razón, aunque obviamente un documento de 2009 puede tener una aplicabilidad limitada a la RAM DDR4 en 2020.

Imagen de Wikimedia Commons, por Kjerish. CC BY-SA 4.0

Conclusión de Google de 2009 fue sencillo: “Encontramos que la incidencia de errores de memoria y el rango de tasas de error en diferentes DIMM (módulos de memoria dual en línea) son mucho más altos que los reportados anteriormente … Los errores de memoria no son eventos raros”. El equipo detectó tasas de error que describe como “órdenes de magnitud más altas que las informadas anteriormente”.

Concluyen: “los códigos de corrección de errores son cruciales para reducir la gran cantidad de errores de memoria a un número manejable de errores incorregibles”.

Soporte actual de valor limitado de AMD

Sobre el papel, la familia Ryzen de AMD admite ECC de manera no oficial (Threadripper tiene soporte ECC oficial). Como Ian Cutress señala más adelante en la amenazaSin embargo, el hecho de que una placa base reclame compatibilidad con ECC no significa que la compatibilidad esté realmente habilitada. No nos encontramos con esta situación muy a menudo, pero las CPU y las placas base informan sus diversos conjuntos de características a través de registros, que aplicaciones como CPUID luego verifican para determinar e informar qué características admite un chip. Una aplicación que dice verificar para asegurarse de que una función determinada sea compatible (SSE, AVX, ECC, etc.) solo puede informar lo que la CPU o la placa base afirman sobre su propio funcionamiento a través de indicadores de registro. En realidad, no puede verificar que exista soporte, a menos que la aplicación realmente contenga una prueba de características, como, por ejemplo, un pequeño punto de referencia que literalmente no se puede ejecutar a menos que el soporte AVX sea funcional.

Debido a que el soporte de AMD no es oficial, significa que nadie está parado sobre los OEM con un látigo para asegurarse de que implementan correctamente la función, y no están probando para asegurarse de que la función realmente funcione. Debido a que es posible configurar el bit para “Admite ECC” en un registro de placa base sin implementar realmente ECC funcional, existen placas base que afirman ser compatibles con el estándar y parecen hacerlo si las escanea con una utilidad, pero no lo hace. realmente implementar ECC en absoluto. La única forma de garantizar que la compatibilidad ECC funcione en una placa base AMD Ryzen es ejecutar una utilidad que fuerce un error ECC.

En cuanto a si veremos que la función regresa a las computadoras de escritorio Intel o debuta oficialmente para Ryzen, no está claro. Requeriría la compra de los fabricantes de memorias, y no está claro que mucha gente en el mercado de PC lo acepte. La mayoría de la gente compra por precio, y como nunca se sabe sobre los fallos de PC que no tiene, es difícil venderle a la gente el beneficio. Por otra parte, veremos a los fabricantes de CPU x86 enfrentando desafíos mucho más duros de ARM durante los próximos 2 a 5 años que nunca antes. No sería sorprendente ver a Intel y / o AMD “redescubrir” algunas características, especialmente si esas características les permiten reclamar una mayor estabilidad en comparación con productos anteriores.

La imagen de funciones muestra DIMM DDR4-2133 registrados. Los DIMM registrados a menudo también admiten ECC, pero también es posible encontrar RAM ECC sin búfer.

Publicaciones relacionadas

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar
Cerrar