Parece que no hay una forma segura de saberlo , sin embargo, varios enfoques pueden obtener algún tipo de respuesta. Aparentemente, tienes que probar los diferentes hasta que encuentres uno que te indique que ECC está funcionando.
En mi caso, memtest86 + 4.20 no pudo ser inducido a darse cuenta de que se trataba de RAM ECC; incluso si lo configuré para ECC On, todavía informaba ECC: Disabled
en la línea IMC. Todavía no lo he probado con una versión más nueva. Sin embargo (posiblemente después de instalar edac-utils, desafortunadamente hice ambas esencialmente al mismo tiempo), Linux informa en los registros de arranque (intercalados con algunas otras entradas):
[ 4.867198] EDAC MC: Ver: 2.1.0
...
[ 4.874374] MCE: In-kernel MCE decoding enabled.
[ 4.875414] AMD64 EDAC driver v3.4.0
[ 4.875438] EDAC amd64: DRAM ECC enabled.
...
[ 4.875542] EDAC amd64: CS0: Unbuffered DDR3 RAM
[ 4.875545] EDAC amd64: CS1: Unbuffered DDR3 RAM
[ 4.875546] EDAC amd64: CS2: Unbuffered DDR3 RAM
[ 4.875548] EDAC amd64: CS3: Unbuffered DDR3 RAM
lo cual es una muy buena indicación. Hacer manualmente /etc/init.d/edac restart
no crea entradas de registro similares, y al mirar un registro anterior de hace unos reinicios, veo:
[ 13.886688] EDAC MC: Ver: 2.1.0
[ 13.890389] MCE: In-kernel MCE decoding enabled.
[ 13.891082] AMD64 EDAC driver v3.4.0
[ 13.891107] EDAC amd64: DRAM ECC disabled.
[ 13.891116] EDAC amd64: ECC disabled in the BIOS or no ECC capability, module will not load.
[ 13.891117] Either enable ECC checking or force module loading by setting 'ecc_enable_override'.
[ 13.891118] (Note that use of the override may cause unknown side effects.)
dmidecode --type memory
también da dos indicaciones bastante fuertes: la propiedad del "tipo de corrección de errores" de la matriz de memoria física (que sin embargo, por alguna razón, mostró lo mismo en RAM no ECC , por lo que esto puede estar relacionado con el soporte de la placa base en lugar de las capacidades de la memoria),
Handle 0x0026, DMI type 16, 23 bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: Multi-bit ECC
y el ancho total y ancho de datos de cada dispositivo de memoria, respectivamente (los bits adicionales son los utilizados para el ECC):
Handle 0x0028, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x0026
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits