Открыть сервис

MemTest86

MemTest86 — это специализированное программное обеспечение для тестирования оперативной памяти (RAM) компьютера на наличие ошибок, работающее независимо от операционной системы. Программа загружается с загрузочного носителя (USB-флеш-накопителя, CD/DVD-диска или по сети) и выполняет серию алгоритмических тестов, направленных на выявление дефектных ячеек памяти, проблем с контроллером памяти, таймингами и напряжением. MemTest86 является одним из наиболее распространённых и авторитетных инструментов для диагностики ОЗУ в среде IT-специалистов, сборщиков компьютеров и энтузиастов.

История

Первая версия MemTest86 была создана американским программистом Крисом Брэди (Chris Brady) в 1994 году. Изначально программа разрабатывалась как загрузочный инструмент для тестирования памяти в системах на базе процессоров Intel 386/486. В 2002 году, начиная с версии 3.0, исходный код был выпущен под лицензией GNU General Public License (GPL), что сделало программу свободной и открытой.

С 2013 года разработка разделилась на две ветви:

  • MemTest86 — проприетарная версия, развиваемая компанией PassMark Software (Австралия). Включает расширенные функции, поддержку UEFI, графический интерфейс и возможность тестирования памяти объёмом более 4 ГБ.
  • Memtest86+ — форк, основанный на последней GPL-версии (5.01), поддерживаемый сообществом. Ориентирован на максимальную совместимость с устаревшим оборудованием и BIOS.

На 2025 год обе версии продолжают развиваться: MemTest86 от PassMark насчитывает более 10 крупных релизов, а Memtest86+ после долгого перерыва получил обновление до версии 7.00 в 2022 году.

Принцип работы

MemTest86 работает на уровне «железа», минуя операционную систему. Это позволяет исключить влияние драйверов, фоновых процессов и утечек памяти, свойственных средам Windows или Linux. Программа загружается в память из загрузочного сектора и начинает выполнение тестовых шаблонов.

Этапы тестирования

  1. Загрузка — программа копирует себя в верхнюю область памяти (обычно в последние 1–2 МБ) и начинает выполнение.
  2. Инициализация — определяются объём, тип и скорость установленной памяти (DDR3, DDR4, DDR5), а также частота шины.
  3. Выполнение тестов — последовательно запускаются от 10 до 13 стандартных тестов (в зависимости от версии), каждый из которых проверяет определённый аспект работы памяти.
  4. Цикличность — тесты повторяются бесконечно, пока пользователь не прервёт процесс. Рекомендуется выполнять не менее 2–3 полных проходов (Pass).

Типы тестов

Номер тестаНазваниеОписание
0Address TestПроверка адресации — запись и чтение уникальных значений в каждую ячейку.
1Moving InversionsЗапись последовательности 0 и 1 со сдвигом.
2Moving Inversions (8-bit)То же, но с байтовым сдвигом.
3Block MoveКопирование блоков данных и проверка целостности.
4Modulo 20Запись шаблонов с шагом 20.
5Bit SpreadРаспространение битовых шаблонов.
6Random Number SequenceГенерация псевдослучайных чисел.
7Block SequentialПоследовательная запись блоков.
8Modulo XВариация теста 4.
9Bit FadeДлительное удержание значения (проверка утечки заряда).
10Hammer TestМногократная запись в соседние строки (проверка Row Hammer).

Каждый тест записывает в память определённые шаблоны данных, затем считывает их и сравнивает с эталоном. Любое несовпадение фиксируется как ошибка.

Форматы и версии

MemTest86 (PassMark)

  • Платная версия (Pro) — включает поддержку многопоточности, тестирование до 64 ядер, возможность сохранения отчётов в PDF, сетевую загрузку (PXE), интеграцию с автоматизированными системами тестирования.
  • Бесплатная версия (Free) — ограничена одним потоком, не поддерживает сохранение отчётов и графический интерфейс, но выполняет все основные тесты.
  • Версия для UEFI — загружается в среде UEFI, поддерживает таблицы разделов GPT, работу с памятью объёмом более 4 ГБ и защищённую загрузку (Secure Boot).

Memtest86+ (Open Source)

  • Распространяется под лицензией GPL v2.
  • Поддерживает как BIOS, так и UEFI (начиная с версии 7.00).
  • Включает все основные тесты, аналогичные проприетарной версии.
  • Не имеет встроенного графического интерфейса — вывод осуществляется в текстовом режиме.
  • Активно используется в дистрибутивах Linux (входит в состав SystemRescue, Hiren’s Boot CD).

Применение

MemTest86 применяется в следующих случаях:

  • Диагностика нестабильности системы — если компьютер выдает синие экраны смерти (BSOD), зависает, перезагружается без видимой причины, особенно при работе с большими объёмами данных (видеомонтаж, 3D-рендеринг, компиляция).
  • Разгон памяти (overclocking) — после изменения частоты, таймингов или напряжения ОЗУ необходимо проверить стабильность. MemTest86 позволяет выявить даже единичные ошибки, которые могут не проявляться в обычной работе, но вызывать сбои при длительной нагрузке.
  • Сборка и ремонт ПК — после замены или установки новых модулей памяти рекомендуется прогнать тест для подтверждения совместимости и исправности.
  • Проверка б/у комплектующих — при покупке подержанной оперативной памяти MemTest86 позволяет быстро оценить её состояние.
  • Тестирование серверов — в корпоративной среде используется для валидации памяти перед вводом оборудования в эксплуатацию.

Интерпретация результатов

Ошибки

Если в ходе тестирования обнаружена хотя бы одна ошибка, модуль памяти считается неисправным или нестабильным в текущих условиях. Программа выводит:

  • Errors — общее количество ошибок.
  • Failing Address — физический адрес ячейки, в которой произошла ошибка (например, 0x00000001A2B3C4D5).
  • Test — номер теста, на котором возникла ошибка.

Ложные срабатывания

Ошибки могут быть вызваны не только дефектом модуля, но и:

  • Перегревом — при недостаточном охлаждении.
  • Несовместимостью — использование планок разных производителей или с разными таймингами.
  • Некорректными настройками BIOS — например, слишком агрессивные тайминги или завышенная частота.
  • Неисправностью материнской платы — проблемы с разъёмом DIMM или контроллером памяти.

Рекомендации при обнаружении ошибок

  1. Проверить правильность установки модулей (плотность посадки, порядок в слотах).
  2. Сбросить настройки BIOS до стандартных (Load Optimized Defaults).
  3. Протестировать каждый модуль по отдельности, в разных слотах.
  4. Снизить частоту или увеличить тайминги (CAS Latency, tRCD, tRP, tRAS).
  5. При сохранении ошибок — заменить модуль памяти.

Интересные факты

  • MemTest86 является одним из старейших активно используемых инструментов диагностики — его возраст превышает 30 лет.
  • В версии 10.0 (2023) от PassMark добавлена поддержка памяти DDR5 и тестирование на ошибки типа Row Hammer (атака на соседние строки памяти).
  • Программа может работать без графического интерфейса — управление осуществляется клавишами C (конфигурация), S (пропуск теста), Space (пауза).
  • В некоторых дистрибутивах Linux (например, Ubuntu) Memtest86+ автоматически добавляется в меню GRUB при установке.
  • При тестировании памяти объёмом 32 ГБ на частоте 3200 МГц один полный проход (Pass) занимает около 2–3 часов.

Критика

  • Отсутствие поддержки новых процессоров — Memtest86+ долгое время не обновлялся, что приводило к проблемам с памятью DDR5 и процессорами AMD Ryzen 7000/Intel Core 13-го поколения. В версии 7.00 эта проблема частично решена.
  • Медленная скорость — тестирование больших объёмов памяти (64 ГБ и выше) может занимать более 12 часов, что неудобно для быстрой диагностики.
  • Ограниченная функциональность в бесплатной версии — отсутствие многопоточности и сохранения отчётов затрудняет использование в профессиональной среде.
  • Ложные ошибки на некоторых материнских платах — из-за особенностей реализации контроллера памяти программа может фиксировать ошибки при полностью исправном оборудовании.

Источники

  • PassMark Software. MemTest86 User Manual. — 2024.
  • Brady, Chris. MemTest86: A Memory Diagnostic Tool. — 1994.
  • Memtest86+ Project. Release Notes for Version 7.00. — 2022.
  • Intel Corporation. DDR5 Memory Technology Overview. — 2023.
  • AMD. Ryzen Memory Overclocking Guide. — 2022.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →