TL; DR
Перше найважливіше число: кількість помилок для здорової пам'яті має бути 0 . Будь-яке число вище 0 може вказувати на пошкоджені / несправні сектори.
Екранне пояснення
Memtest86+ v1.00 | Progress of the entire pass (test series)
CPU MODEL and clock speed | Progress of individual, current test
Level 1 cache size & speed | Test type that is currently running
Level 2 cache size & speed | Part of the RAM (sector) that is being tested
RAM size and testing speed | Pattern that is being written to the sector
Information about the chipset that your mainboard uses
Information about your RAM set-up, clock speed, channel settings, etc.
WallTime Cached RsvdMem MemMap Cache ECC Test Pass Errors ECC Errs
--------- ------ ------- -------- ----- --- ---- ---- ------ --------
Elapsed Amount Amount Mapping on on Test # of # of # of ECC
time of RAM of used or or type pass errors errors
cached reserved off off done found found
RAM, not
tested
Дані / пояснення тесту
MemTest проводить ряд тестів, записує конкретні зразки в кожен сектор пам'яті та витягує її. Якщо отримані дані відрізняються від первинно збережених даних, MemTest реєструє помилку і збільшує кількість помилок на одиницю. Помилки, як правило, є ознаками поганих смужок ОЗУ.
Оскільки пам'ять - це не просто блокнот, який містить інформацію, але має розширені функції, такі як кешування, робиться кілька різних тестів. Про це Test #
вказує. MemTest запускає кілька різних тестів, щоб перевірити, чи трапляються помилки.
Деякі (спрощені) приклади тесту:
- Тестові сектори в такому порядку: A, B, C, D, E, F. (Серійний)
- Тестові сектори в такому порядку: A, C, E, B, D, F. (переміщення)
- Заповніть усі сектори візерунком: aaaaaaaa
- Заповніть усі сектори випадковою схемою.
Більш детальний опис усіх тестів з: https://www.memtest86.com/technical.htm#detailed
Тест 0 [Тест адреси, крокуючі, без кешу]
Тестує всі біти адреси у всіх банках пам’яті за допомогою шаблону адрес пішохідної адреси.
Тест 1 [Тест адреси, власна адреса, Послідовна]
Кожна адреса пишеться зі своєю адресою, а потім перевіряється на відповідність. Теоретично попередні тести мали назвати будь-яку пам'ять для вирішення проблем. Цей тест повинен фіксувати будь-які помилки адресації, які якось раніше не були виявлені. Цей тест виконується послідовно з кожним доступним процесором.
Тест 2 [Тест адреси, власна адреса, Паралельний]
Теж, що і тест 1, проте тестування проводиться паралельно з використанням усіх процесорів та з використанням перекриваються адрес.
Тест 3 [Переміщення інверсій, одиниць та нулів, Послідовна]
Цей тест використовує алгоритм зворотної інверсії з візерунками всіх одиниць і нулів. Кеш увімкнено, хоча він певною мірою заважає алгоритму тестування. З увімкненим кешем цей тест не займе багато часу і повинен швидко знайти всі "жорсткі" помилки та деякі більш тонкі помилки. Цей тест - лише швидка перевірка. Цей тест виконується послідовно з кожним доступним процесором.
Тест 4 [Переміщення інверсій, одиниць і нулів, паралель]
Як і тест 3, проте тестування проводиться паралельно з використанням усіх процесорів.
Тест 5 [Переміщення інверсії, 8-бітний погладжування]
Це те саме, що і тест 4, але використовує 8-бітову схему "ходьби" та нулі. Цей тест дозволить краще виявити тонкі помилки в "широких" мікросхемах пам'яті.
Тест 6 [Переміщення інверсій, випадковий зразок]
Тест 6 використовує той же алгоритм, що і тест 4, але шаблон даних є випадковим числом і доповнює його. Цей тест особливо ефективний у пошуку важких для виявлення помилок, чутливих до даних. Послідовність випадкових чисел відрізняється з кожним проходом, тому багаторазові проходи підвищують ефективність.
Тест 7 [Переміщення блоку, 64 ходи]
Цей тест підкреслює пам'ять, використовуючи інструкції блокування переміщення (movsl) і заснований на тесті спалення Роберта Редельмейєра. Пам'ять ініціалізується зі зсувними шаблонами, які інвертуються кожні 8 байт. Потім 4-мегабайт пам'яті переміщується за допомогою інструкції movsl. Після завершення ходу перевіряються шаблони даних. Оскільки дані перевіряються лише після завершення руху пам’яті, неможливо дізнатися, де сталася помилка. Повідомлені адреси є лише там, де виявлено поганий зразок. Оскільки рухи обмежені 8-мегабітровим сегментом пам’яті, відмовна адреса завжди буде менше, ніж 8 Мб від вказаної адреси. Помилки цього тесту не використовуються для обчислення шаблонів BadRAM.
Тест 8 [Переміщення інверсій, 32-бітний пробіг]
Це варіант алгоритму переміщення інверсій, який зміщує шаблон даних, залишений на один біт для кожної послідовної адреси. Початкове положення біта зміщується вліво для кожного проходу. Для використання всіх можливих шаблонів даних потрібно 32 проходи. Цей тест є досить ефективним для виявлення помилок, чутливих до даних, але час виконання тривалий.
Тест 9 [Послідовність випадкових чисел]
Цей тест записує в пам'ять ряд випадкових чисел. Скинувши насіння для випадкового числа, для посилання може бути створена однакова послідовність числа. Початковий зразок перевіряється, а потім доповнюється та перевіряється знову на наступному проході. Однак, на відміну від рухомих інверсійних тестів, написання та перевірка може бути виконана лише у напрямку вперед.
Тест 10 [Модуло 20, одиниці та нулі]
Використання алгоритму Modulo-X повинно виявити помилки, які не виявляються при переміщенні інверсій через кеш і буферні перешкоди з алгоритмом. Як і у тесті, для моделей даних використовуються лише нулі та нулі.
Тест 11 [Біт-тест зникнення, 90 хв., 2 шаблони]
Тест бітового вицвітання ініціалізує всю пам'ять з малюнком, а потім спить протягом 5 хвилин. Потім перевіряється пам'ять, щоб побачити, чи змінилися будь-які біти пам'яті. Використовуються всі ці та нульові структури.
Оскільки погані сектори іноді можуть працювати, а не спрацьовувати іншим разом, я рекомендую дозволити MemTest виконати кілька проходів. Повний пропуск - це завершена тестова серія, яка пройшла. (Наведена вище тестова серія 1-11) Чим більше пропусків ви отримаєте без помилок, тим точніше ваш запуск MemTest. Я звичайно пробігаю близько 5 проходів, щоб бути впевненим.
Кількість помилок для здорової пам'яті має бути 0. Будь-яке число вище 0 може вказувати на пошкоджені / несправні сектори.
Підрахунок помилок ECC слід враховувати лише тоді, коли ECC
встановлено значення off
. ECC розшифровується як виправлення помилок коду і це механізм виявлення та виправлення неправильних бітів у стані пам'яті. Це можна трохи порівняти з перевіркими паритету, зробленими на RAID або оптичних носіях. Ця технологія є досить дорогою і, ймовірно, зустрінеться лише в налаштуваннях сервера. Підрахунок ECC підраховує, скільки помилок було виправлено механізмом ECC пам'яті. ECC не повинен викликати здорову оперативну пам'ять, тому кількість помилок ECC вище 0 також може вказувати на погану пам'ять.
Пояснення помилки
Приклад Memtest, який виявив помилки. Він показує, який сектор / адреса вийшов з ладу.
Перший стовпець ( Tst ) показує, який тест не вдався, число відповідає номеру тесту з уже згаданого списку. Другий колонці ( Pass ) показує , що , якщо тест був пройдений. У випадку прикладу тест 7 не має пропусків.
Третій стовпець ( Failing Address ) показує, яка саме частина пам'яті має помилки. Така частина має адресу, подібно до IP-адреси, яка є унікальною для цього фрагмента зберігання даних. Він показує, яка адреса не вдалася і наскільки великий фрагмент даних. (0,8 МБ у прикладі)
У четвертому ( хорошому ) та п’ятому ( поганому ) стовпцях відображаються записані дані та дані, які були отримані відповідно. Обидва стовпці повинні бути рівними у несправній пам'яті (очевидно).
Шостий стовпець ( Err-Bits ) показує положення точних бітів, які виходять з ладу.
У сьомому стовпці ( кількість ) відображається кількість послідовних помилок з однаковою адресою та бітними помилками.
Нарешті, останній стовпець сьомий ( Chan ) показує канал (якщо в системі використовується декілька каналів), на якому знаходиться смуга пам'яті.
Якщо він виявить помилки
Якщо MemTest виявляє будь-які помилки, найкращий спосіб визначення несправного модуля розкрито в цьому питанні щодо Super User та його прийнятій відповіді:
Скористайтеся процесом усунення - видаліть половину модулів і запустіть тест ще раз ...
Якщо відмов немає, то ви знаєте, що ці два модулі хороші, тому відкладіть їх і повторіть тест.
Якщо виникають збої, то скоротіть їх знову навпіл (до одного з чотирьох модулів пам'яті зараз), а потім повторіть тест.
Але, оскільки один не вдався до тесту, не вважайте, що інший не виходить з ладу (у вас можуть бути два несправні модулі пам'яті) - там, де ви виявили помилку з двома модулями пам'яті, тестуйте кожен з цих двох окремо після цього .
Важлива примітка: Завдяки таким функціям, як перемежування пам’яті та погана схема нумерації розеток модулів пам’яті у деяких постачальників материнських плат, може бути важко дізнатися, який модуль представлений певною адресою.