Mam tutaj notebooka, który, jak podejrzewam, ma wadliwy moduł pamięci. Dlatego pobrałem Memtest86 + i pozwoliłem mu działać.
Zwróć uwagę, że zrzut ekranu nie jest moim rzeczywistym, ale zapewnia go memtest86 +
Jak interpretować liczby na ekranie? Pozwoliłem mu działać przez około cztery godziny, a teraz mam zaliczenie 7.
Zwłaszcza co robi
- numer testu
- liczba błędów
- liczba błędów ECC
wskazać? Jakie są rozsądne wartości błędów pamięci? W którym momencie powinienem rozważyć wymianę pamięci?
memory
memtest86+
slhck
źródło
źródło
Odpowiedzi:
TL; DR
Najważniejsza liczba na początku: liczba błędów dla zdrowej pamięci powinna wynosić 0 . Każda liczba powyżej 0 może wskazywać na uszkodzone / wadliwe sektory.
Objaśnienie ekranu
Wyjaśnienie danych / testu
MemTest przeprowadza szereg testów, zapisuje określone wzorce w każdym sektorze pamięci i pobiera je. Jeśli odzyskane dane różnią się od danych, które zostały pierwotnie zapisane, MemTest rejestruje błąd i zwiększa liczbę błędów o jeden. Błędy są zwykle oznakami złych pasków pamięci RAM.
Ponieważ pamięć nie jest tylko notatnikiem zawierającym informacje, ale ma zaawansowane funkcje, takie jak buforowanie, wykonuje się kilka różnych testów. To właśnie
Test #
wskazuje. MemTest przeprowadza szereg różnych testów, aby sprawdzić, czy wystąpią błędy.Niektóre (uproszczone) przykłady testów:
Bardziej szczegółowy opis wszystkich testów: https://www.memtest86.com/technical.htm#detailed
Ponieważ złe sektory mogą czasami działać, a nie działać innym razem, zalecam, aby MemTest uruchomił kilka przejść. Pełne zaliczenie to ukończona seria testów, która przeszła pomyślnie. (Powyższa seria testów 1-11) Im więcej przejść bez błędów, tym dokładniejszy przebieg MemTest. Zwykle biegam około 5 podań, aby się upewnić.
Liczba błędów dla zdrowej pamięci powinna wynosić 0. Każda liczba powyżej 0 może wskazywać na uszkodzone / wadliwe sektory.
Liczbę błędów ECC należy brać pod uwagę tylko wtedy, gdy
ECC
jest ustawiona naoff
. ECC oznacza korekcję błędów w kodzie pamięci i jest to mechanizm wykrywania i korygowania błędnych bitów w stanie pamięci. Można to nieco porównać do kontroli parzystości wykonanej na macierzy RAID lub nośniku optycznym. Ta technologia jest dość droga i prawdopodobnie będzie występować tylko w konfiguracjach serwerów. Liczba ECC liczy, ile błędów zostało poprawionych przez mechanizm ECC pamięci. ECC nie powinno być wywoływane dla zdrowej pamięci RAM, więc liczba błędów ECC powyżej 0 może również wskazywać na złą pamięć.Wyjaśnienie błędu
Przykład Memtestu, który napotkał błędy. Pokazuje, który sektor / adres uległ awarii.
Pierwsza kolumna ( Tst ) pokazuje, który test się nie powiódł, liczba odpowiada numerowi testu z listy już wspomnianej powyżej. Druga kolumna ( zaliczenie ) pokazuje, czy ten test został zaliczony. W przypadku przykładu test 7 nie ma zaliczeń.
Trzecia kolumna ( Niepowodzenie adresu ) pokazuje dokładnie, która część pamięci zawiera błędy. Taka część ma adres, podobnie jak adres IP, który jest unikalny dla tego miejsca przechowywania danych. Pokazuje, który adres się nie powiódł i jak duża jest porcja danych. (0,8 MB w przykładzie)
Czwarta ( dobra ) i piąta ( zła ) kolumna pokazują odpowiednio zapisane i odzyskane dane. Obie kolumny powinny być równe w nie uszkodzonej pamięci (oczywiście).
Szósta kolumna ( Err-Bits ) pokazuje pozycję dokładnie tych bitów, które zawodzą.
Siódma kolumna ( liczba ) pokazuje liczbę kolejnych błędów o tym samym adresie i błędnych bitach.
Wreszcie ostatnia kolumna siódma ( Chan ) pokazuje kanał (jeśli w systemie jest używanych wiele kanałów), w którym znajduje się pasek pamięci.
Jeśli znajdzie błędy
Jeśli MemTest odkrywa żadnych błędów, najlepszą metodę określania, który moduł jest wadliwy jest pokryta w tym Super pytanie użytkownika i jego zaakceptowanej odpowiedzi:
źródło
000c34e98dc - 3124.9MB
. Dlaczego tak duży kawałek? Mam moduły 2x1Gb i 2x2Gb w moim komputerze. Jak znaleźć ten, który powoduje awarie?Liczba błędów
Przechodząc przez testy, jeśli pamięć nie powiedzie się w przypadku któregokolwiek z testów, zwiększy liczbę błędów. Jeśli dobrze pamiętam, zlicza liczbę adresów, które nie przeszły testu.
Liczba błędów ECC
Pamięć ECC to specjalny rodzaj układu pamięci, który służy do ochrony danych przed uszkodzeniem. Twoja
ECC Errs
kolumna liczy, ile problemów zostało naprawionych przez ECC.(ECC jest powolny i drogi i zasadniczo dotyczy systemów o znaczeniu krytycznym, których nie można zawracać sobie głowy wymianą pamięci RAM.)
Numer testu
Memtest wykonuje różnego rodzaju testy pamięci, które są opisane na stronie Memtest86 . Podobnie jak szybkie zwykłe tłumaczenie na angielski:
Test 0: Test adresu dla pieszych
Memtest zapisze
00000001
w pierwszej lokalizacji00000010
w pamięci, w następnej itd., Powtarzając ten wzorzec co 8 bajtów. Następnie odczytuje pamięć i upewnia się, że wartość się nie zmieniła. ( Źródło )Testy 1 i 2: Test adresu własnego
Memtest zapisuje każdą lokalizację w pamięci własnym adresem i sprawdza, czy wartość się nie zmieniła.
Test 1 jest sekwencyjny, a test 2 jest równoległy (tj. Wykorzystuje współbieżność).
Test 3 i 4 Test inwersji ruchomych
Zasadniczo ten test ładuje 0 do pamięci, a następnie
Celem jest tutaj próba przetestowania każdego bitu i jego sąsiadujących bitów „każdej możliwej kombinacji zer i jedynek”.
Test 3 nie używa współbieżności, podczas gdy test 4 używa.
Test 5: Moving Inversions, 8-bit Pat
Ponownie wykonuje to metodę ruchomych inwersji, ale tym razem z chodzeniem 1s z testu 0 w blokach 8-bitowych.
Test 6: Poruszające się inwersje, losowy wzór
Memtest używa liczb losowych zamiast wszystkich 0 lub chodzących 1.
Test 7: Blokuj ruch
To jest fajne. Ładuje wzorce do pamięci, przesuwa je w blokach po 4 MB i weryfikuje je.
Test 8: Moving Inversion, 32-bit Pat
To samo co test 5, ale zamiast tego używa 32-bitowych bloków. Ten w rzeczywistości ładuje każdą możliwą 32-bitową wartość w każdej lokalizacji.
Test 9: Liczby losowe
Ta ładuje pseudolosowe liczby do pamięci i weryfikuje. Fajną rzeczą w generatorze liczb pseudolosowych jest to, że nie jest on zbyt losowy (jeśli kiedykolwiek uruchomiłeś
printf("%d", rand());
program w C bez seedowania i zdobyłeś tak-losowo 41, wiesz o co mi chodzi). Sprawdza to przez zresetowanie siewnika liczb losowych i ponowne uruchomienie generatora.Test 10: Modulo-X
Co 20 lokalizacji zapisuje wzór (wszystkie 0 lub wszystkie 1) i zapisuje dopełnienie we wszystkich innych lokalizacjach, a następnie weryfikuje.
Test 11: Test zanikania bitów
Ten ładuje do pamięci RAM wszystkie jedynki (i ponownie wszystkie jedynki), czeka 5 minut i sprawdza, czy którakolwiek z wartości się zmieni.
źródło
Numer testu: numer konkretnego testu aktualnie wykonywanego przez memtest. Jest ich dużo.
Liczba błędów: liczba napotkanych błędów pamięci
Błędy ECC: Liczba błędów poprawionych przez ECC. Twój mikroukład / pamięć nie ma ECC, więc ten numer nie ma znaczenia.
Jeśli w twojej pamięci jest jakaś liczba błędów powyżej 0, będziesz chciał ją wymienić.
EDYCJA: Testy to różne wzorce, które memtest zapisuje w pamięci. Zapisuje różne wzorce w pamięci i odczytuje je z powrotem w celu sprawdzenia błędów, a także używa różnych wzorców, aby móc przetestować wszystkie stany wszystkich bitów.
Liczba wskazuje, ile razy wynik ponownie wczytany do memtestu nie pasował do tego, co zapisał w pamięci, co oznacza, że wystąpił błąd w badanej części pamięci.
ECC to technologia korekcji błędów wbudowana w układy pamięci dla serwerów i stacji roboczych. Większość dekstopów nie obsługuje modułów pamięci z wbudowanym ECC. Prawie wszystkie serwery / stacje robocze obsługują to i zwykle tego wymagają. Liczba błędów skorygowanych przez ECC to liczba błędów, które układ ECC z powodzeniem naprawił.
źródło