Dużo kłopotam się z budowaniem stabilnych maszyn - tym, że absolutnie nie znoszę awarii, restartów, śmiesznych zachowań itp. - i dlatego korekcja błędów, czyli RAM ECC, wydaje się rozwiązać duży problem: błędy pamięci.
Ale czy to naprawdę działa? Czy istnieje wymierna korzyść, np. Mniejsza liczba wypadków lub inne zachowanie?
Oprócz kosztów, dlaczego nie użyć pamięci ECC do nowej wersji komputera? Dlaczego funkcja ECC jest głównie dostępna i obsługiwana przez maszyny klasy serwer / stacja robocza, ale nie w przypadku płyt głównych zorientowanych na konsumentów?
Odpowiedzi:
Od kilku lat korzystam z pamięci RAM ECC na serwerach. ECC naprawdę świeci, gdy intensywnie korzystasz z urządzenia, ponieważ „trwa ponad 12–16 godzin dziennie”. Małe serwery whitebox, które zbudowałem bez ECC, prędzej czy później rozwinęły „problemy” wymagające ponownego uruchomienia, ale maszyny ECC nigdy ich nie miały.
Więc moja odpowiedź brzmi: jeśli często używasz komputera , najprawdopodobniej tak. Jeśli korzystasz z komputera 24/7, powinien być koniecznością.
Istnieje kilka płyt głównych obsługujących ECC. Zazwyczaj są na „wyższym” końcu rzeczy, ale przy odrobinie badań można je znaleźć od różnych producentów. Jedyną inną kwestią jest pamiętać o włączeniu obsługi ECC w systemie BIOS.
Google ujawnia się w tej sprawie. Zobacz http://blogs.zdnet.com/storage/?p=638, jak to naprawdę wpływa na współczesne systemy.
źródło
Myślę, że ECC jest warte użycia tylko wtedy, gdy wymaga tego serwer . Wikipedia :
Nie mogę znaleźć ostatecznego źródła w Internecie, poza mglistymi twierdzeniami o jednym błędzie miesięcznie na gigabajt, co jest oczywiście absurdalne; serwery ulegałyby awariom w lewo i w prawo na całym świecie, gdyby było to zdalnie prawdą.
Niektóre najważniejsze informacje z wątku MetaFilter od rzeczywistych administratorów serwerów:
Osobiście uważam, że ECC jest trochę kulturalna, ale jest to rozsądna polisa ubezpieczeniowa na dużym, mocnym serwerze, o ile premia kosztowa nie jest zbyt wysoka.
źródło
Rozważaliśmy to w przypadku krytycznych systemów. Jednym problemem jest to, jak do cholery robisz wykrywanie błędów w oprogramowaniu, aby sprawdzić integralność pamięci, kiedy program użyty do uruchomienia kontroli integralności pamięci może sam być podatny na błędy pamięci? Zasadniczo nie możesz, a to utrudnia analizę trybu awaryjnego / łagodzenie awarii, więc ECC jest mechanizmem łagodzącym.
Jest to jeden z tych przypadków, gdy w razie problemów można faktycznie obwiniać promienie kosmiczne ;)
źródło
Rozważę RAM ECC do zastosowań „krytycznych”. Jeśli błąd serwera spowodowałby utratę znacznych kwot pieniędzy (lub zabicie ludzi, czy cokolwiek innego), zwróć się do RAM ECC. Zasadniczo, porównaj koszty pamięci RAM ECC z tym, co możesz stracić w przypadku błędu.
Ale bez względu na to, co zdecydujesz, zalecam uruchomienie MemTest86 + noc (lub wystarczająco długo, aby wykonać kilka przejść w całej przestrzeni adresowej). A jeśli potrafisz podkręcić ciepło (dosłownie), to da ci wyobrażenie o tym, jak działa twój baran, gdy system będzie gorący.
Miałem zupełnie nową pamięć RAM, która wyświetla błędy w MemTest. Miałem też z czasem „dobre” błędy rozwijania pamięci ram, które wykrył MemTest. To świetne narzędzie i jedna z pierwszych rzeczy, które uruchamiam na nowym systemie.
źródło