Perché l'iMac non consente il controllo dell'errore di parità della memoria?

3

Basato su questa pagina di supporto Apple , gli iMac (in particolare il 5K 2014 che ho appena ordinato) non supporta il controllo di parità sulla memoria. Da altri articoli, sembra che anche ECC non sia supportato.

Trovo che questo sia sorprendente. Se si verifica un errore di memoria, il computer si muove lungo la sua strada, propagando l'errore fino a quando non provoca altre eccezioni rilevabili (come l'accesso a un indirizzo di memoria non valido o l'esecuzione di un'istruzione non valida). Anche se potrebbe non, e semplicemente risultato in dati errati o corrotti.

Faccio spesso simulazioni numeriche di grandi dimensioni, per le quali un simile errore probabilmente non causerebbe un arresto anomalo, ma probabilmente si propagherebbe a un grosso errore nel risultato.

Non hai nemmeno bisogno di un raggio cosmico per ottenere un errore. La spinta a impacchettare densità sempre più alte porta inevitabilmente a vulnerabilità, come il colpo di martello. Uno studio ha misurato un tasso medio di quattro errori all'anno per DIMM.

Qual è la logica per nessun controllo di parità? Riesco a vedere che ECC potrebbe rallentare un po 'le cose e costare di più, ma almeno un errore di parità rilevato potrebbe portare il sistema verso il basso invece di propagare un errore in modo silenzioso. 65 bit invece di 64 bit sarebbero un prezzo molto basso da pagare. Anche se avrebbe senso che un consumatore non avesse il controllo di parità, mi piacerebbe almeno la possibilità di sostituire la memoria per ottenere il controllo di parità. Sembra che anche lo standard DDR3 non supporti solo il controllo di parità - solo ECC.

    
posta Mark Adler 14.06.2015 - 23:08
fonte

1 risposta

5

Questo non è affatto specifico di Apple. Innanzitutto, perché ECC (72 bit) è utilizzato per la parità? Il motivo è semplicemente che i chip DRAM sono stati realizzati in larghezze di dati di 4, 8 o 16 bit per decenni. ECC ti consente semplicemente di aggiungere un altro chip commodity, invece di creare uno specifico chip a 5 bit a basso volume. Inoltre, quando hai la parità, non puoi correggere alcun errore, quindi tutto quello che puoi fare è mandare in crash il computer quando viene rilevato un errore. L'effetto netto è quindi causare più arresti anomali del computer, anche se l'errore si trova in una parte della RAM che non è in uso.

Ci sono due motivi per cui Apple non può inserire l'ECC. Uno è semplicemente il controller di memoria integrato che Intel mette non supporta l'ECC per forzare i produttori di workstation / server ad acquistare la più costosa linea Xeon. Puoi controllare i processori ECC supportati su Intel ARK . Vedete sono solo Xeon e CPU di fascia bassa (mercato delle appliance server), ma nessuno nel range Core i5 o i7.

In secondo luogo, il pinout SO-DIMM semplicemente non ha pin di dati per il bus a 72 bit in ordine di ridurre le dimensioni per i laptop. Il routing del bus di memoria è molto difficile e le 8 linee extra renderebbero anche difficile per i produttori di schede madri per laptop.

Molte simulazioni numeriche non richiedono ECC. I test del mondo reale hanno suggerito che il costo extra e la penalità di velocità di ECC non ne vale la pena . Come altro esempio, alcune società ti dicono anche di disattivare ECC.

    
risposta data 15.06.2015 - 01:41
fonte

Leggi altre domande sui tag