MemTest86 vs MemTest86+: Differences and Which One Is Right for You?

Last update: 22/09/2025
Author Isaac
  • MemTest86 and Memtest86+ share a common origin, but differ in licensing, support, and extras.
  • UEFI/BIOS: MemTest86 (UEFI) and Memtest86+ (UEFI and BIOS) cover almost the entire hardware.
  • The battery of tests is very comprehensive; multiple passes increase detection rates.
  • Pro (PassMark) brings ECC injection, DIMM decoding and automation.

Comparison of MemTest86 and MemTest86+

If you've ever experienced random crashes, blue screens, or data corruption, the culprit is likely your RAM, and you've probably come across these two tools: MemTest86 and MemTest86+. They are the go-to RAM tests for validating modules and platforms, and although they share a common origin, they now follow different paths.

Before choosing, it's helpful to understand how they differ, how they operate, and what tests they perform. This comparative guide provides a comprehensive and up-to-date overview , covering everything from history and licensing to UEFI/BIOS compatibility, test algorithms, system integration, and advanced professional features.

What are MemTest86 and MemTest86+

Both utilities are used to check the integrity of RAM by subjecting it to intensive read/write patterns outside the operating system. They run as standalone programs from a bootable medium , allowing direct control of the hardware and preventing the OS or cache from masking errors.

MemTest86 was created in 1994 by Chris Brady and, after years as a benchmark, was acquired by PassMark in 2013. Version 5.0 incorporated UEFI booting, a graphical interface with mouse support, and Secure Boot support, and added modern tests such as "row hammer," as well as DDR4/DDR5 compatibility in recent editions.

Origin, bifurcation and evolution

During the early 2000s, the original MemTest86 branch was inactive (it remained at version 3.0 in 2002), and in that gap, Memtest86+ appeared , the fork driven by Samuel Demeulemeester to provide support for newer CPUs/chipsets . This fork maintained the original philosophy, updating compatibility and fixing bugs.

Over time , MemTest86 has evolved under PassMark with a "freemium" model (free edition and paid Pro edition with extras for laboratory use), while Memtest86+ has remained an open-source project (GPL) . In October 2022, it was rewritten to the 6.x branch to support UEFI and DDR4/DDR5 memory, and by February 2023, it was already at version 6.10 with support for current chipsets and CPUs.

Licensing and distribution model

Memtest86+ continues to be licensed under the GNU GPL v2.0 , which allows you to download, modify, and redistribute it free of charge. It's the preferred choice if you value free software, inclusion in Linux distributions , and code transparency.

MemTest86 (PassMark) adopts a free versus Pro/Site pricing model. The Free edition covers general needs, but the paid editions provide professional features such as DIMM/chip decoding, SPD validation, ECC error injection, configuration file automation , and integration with logic analyzers, among other functions geared towards technical service providers and testing laboratories.

Compatibility, platforms and firmware

On modern platforms, MemTest86 runs from UEFI ( version 10 is UEFI only ) (see how to adjust memory from UEFI or BIOS ). If you need legacy BIOS support, version 4.3.7 remains available for legacy scenarios (included in downloads under "Older Versions"). It also supports Windows , Linux, and macOS as host platforms for creating boot media.

Memtest86+ 6.x supports both UEFI and BIOS , making it especially useful for older and newer systems. Furthermore, it's integrated into distributions like Debian, Ubuntu, and Arch Linux (BIOS mode accessible via GRUB), with patches to maintain functionality and compatibility over the years within the GNU/Linux ecosystem.

  How to create a complete inventory management system in Access

Method of execution and creation of the medium

These tools run without an operating system: you prepare a USB drive /CD and boot the computer from that medium. This approach allows the tester to reserve as much RAM as possible and access the hardware directly, increasing the reliability of the diagnosis.

The typical workflow is simple: you download the appropriate image, write the USB drive using utilities like Rufus, Etcher, or the official installer, and select USB boot from the motherboard menu. Once booted, the test starts automatically and runs multiple passes with varied data patterns.

Quick Start Guide: USB Creation and Options

In MemTest86 (PassMark), you download a .zip package containing a tool to write the image to your USB drive. After booting, you'll see a menu with options such as System Info, Test Selection, RAM Benchmark , and fine-tuning. The UEFI interface is graphical and mouse-friendly, making navigation easy.

Memtest86+ includes a Windows installer that automates the process: you select the USB drive, accept formatting, and the bootable media is created. On very old computers, you can also use a CD or floppy disk , although USB is strongly recommended nowadays. If your BIOS doesn't boot from USB, check the boot order or use the correct version for your firmware.

How memory tests work

The methodology involves writing specific patterns to all memory addresses and verifying that there are no discrepancies when reading . This detects defective cells, addressing errors, interference problems, and intermittent failures dependent on data or temperature.

Memtest86+ details a battery of extremely effective classic tests. A standard run covers tests 0 through 8, and test 9 ("bit fade") is manually triggered. The execution is cyclical and infinite , so you can leave it running for hours to increase statistical confidence.

Test details (Memtest86+ 0–9)

  • Test 0 – Address test, walking ones, no cache: It walks through all addressable bits in a "walking ones" pattern through all banks, identifying addressing errors.
  • Test 1 – Address test, own address: write the own address in each cell and checks for differences. It is more stringent than Test 0 and is complementary to locating addressing errors.
  • Test 2 – Moving inversions, ones and zeros: Fast algorithm that alternates 1s and 0s; often uncovers faults in memory subsystems badly damaged.
  • Test 3 – Moving inversions, 8-bit pattern: designed to detect errors by interference between adjacent cells.
  • Test 4 – Moving inversions, random pattern: Same as 3, but with pseudorandom number and its complement; uses ~60 different patterns per pass, so multiple passes increase efficiency.
  • Test 5 – Block move, 64 moves: It uses block copy instructions (movsl) based on the old "burnBX". It usually uncovers subtle errors.
  • Test 6 – Moving inversions, 32-bit pattern: slower, but very effective after 32 pattern passes; detects data errors difficult.
  • Test 7 – Random number sequence: writes random numbers, complements them and checks them again. It can surface intermittent faults.
  • Test 8 – Module 20, ones and zeros: "Modulo-X" algorithm designed to minimize the impact of caches that could hide errors in previous tests.
  • Test 9 – Bit fade (90 min, 2 patterns): Initializes all RAM, leaves it idle for 90 minutes, and checks for variations. It runs twice (all 0s and all 1s) and lasts ~3 hours; it is not in the standard cycle and must be activated manually.
  How to change CPU thermal paste to lower temperature

Keep in mind that tests 4 and 7, due to their random nature, can reveal CPU instabilities in addition to RAM issues. Therefore, multiple runs are recommended: each iteration uses different patterns that increase coverage.

Advanced Testing, UEFI and SIMD

The modern branch of MemTest86 integrates additional tests into UEFI, including row hammer detection and numbered tests #11 and #12 that use SSE/Neon instructions to move 64/128 bits per operation. These modes strain bandwidth and data paths, useful for discovering errors under high pressure.

In addition, the UEFI interface provides compatibility with Secure Boot and improved peripheral support (e.g., USB keyboards on systems that do not properly emulate certain I/O ports), facilitating interaction on newer platforms.

Exporting Errors and BadRAM

Since MemTest86 2.3 and Memtest86+ 1.60, both tools can generate a list of bad regions in a format compatible with the Linux kernel's BadRAM patch . GRUB2 allows this information to be injected even without patching the kernel, making BadRAM unnecessary in many cases.

Windows offers something similar via "badmemorylist/badmemoryaccess", but it requires manual conversion. Clicking here allows system integration to help isolate bad memory blocks and keep your machine operational while you manage the damaged hardware.

Pro Features and Lab Utilities (MemTest86)

In professional environments, MemTest86 Pro adds capabilities such as DIMM/chip decoding to map an incorrect address to a specific physical slot (depending on the hardware), SPD validation, automation via configuration file, and support for logic analyzers (e.g., Keysight U4164A) using error triggers.

It also incorporates ECC error injection to validate correction and reporting mechanisms . Support depends on the CPU/chipset/BIOS and, in the case of some retail AMD systems, may be disabled by default; it is a key tool for technical support and post-assembly validation.

CPU and core compatibility

Both branches support modern multi-core x86 architectures . MemTest86 Free uses up to 16 cores and the Pro edition scales up to 512, while Memtest86+ has been updated to work with current Intel and AMD CPUs , including DDR4/DDR5 in its 6.x rewrite.

As a side note, ECC reporting on ARM is not supported in MemTest86 and certain functions (such as DIMM decoding and timings recovery from BIOS/SMBIOS) depend on the chipset and exposed tables, so availability varies.

ECC Error Injection: Supported Chipsets (MemTest86)

ECC injection allows for simulated faults to verify system error handling. Compatibility depends on the hardware/BIOS and covers a wide range of AMD and Intel platforms across various generations.

  • AMD: Bulldozer/Steamroller/Jaguar/Ryzen (17h–1Ah; usually disabled in retail), Steppe Eagle SoC, Merlin Falcon SoC
  • Intel: Nehalem, Lynnfield, Westmere, Core 2nd–13th Gen and Xeon E3/W/Scalable equivalents, including mobile (Tiger Lake-H) and SoC (Silvermont, Apollo Lake, Elkhart Lake) series, as well as W-2400/3400

The goal here is to validate that the stack (controller, ECC, firmware, and system) responds correctly to error conditions , something critical in production and data centers.

  How to Delete Facebook Pixel

Test execution and duration tips

The recommended duration is "as many runs as your level of rigor allows." The tests are virtually limitless , and leaving them running for several hours increases the likelihood of encountering intermittent or data/temperature-dependent errors. Test 9 ("bit fade") adds another layer of analysis after leaving the RAM idle for 90 minutes.

If red lines appear on the screen ( reported errors ), the module is likely faulty. On systems with multiple DIMMs, test each module and each slot separately, as a fault could be due to the socket or the channel in addition to the stick itself.

Factors that can alter the results

RAM is sensitive to physical and environmental variables: thermal fluctuations, interference, power supply, and "soft errors" caused by cosmic rays or small radioactive sources in materials. This isn't science fiction: it's documented in IBM's technical literature, and its impact on reliability is significant.

Thermal errors: These sometimes appear after the 3rd or 4th pass due to overheating. Ensure good ventilation over the DIMMs, and even active cooling if you plan to perform prolonged stress tests . In overclocked systems, reduce the frequency/voltage to stable values ​​before concluding that the RAM is damaged.

Interferences, feeding and false positives

Although uncommon today, mutual/external interference can degrade signals at certain MHz frequencies. Similarly, power supply anomalies (unstable power supply or dirty electrical grid) can generate false positives; monitor PSU voltages during testing.

When using mixed kits or memory modules from different manufacturers/latency/voltages, the likelihood of instability increases. Ideally, the modules should be identical in specifications ; mixing batches can complicate diagnostics and the XMP/EXPO profile.

Linux integration and boot options

Memtest86+ is included in many Linux distributions (Debian, Ubuntu, Arch) and appears in the GRUB menu on BIOS installations, making it easy to run a test without downloading anything extra. These distributions have maintained patches to keep the legacy code functional with newer versions of tools and build strings.

MemTest86, meanwhile, continues to offer updated images and compatibility with macOS as a platform for creating the USB drive . In UEFI, it supports Secure Boot and modern peripherals, which is useful with recent hardware.

When to use each

If you're looking for a free, BIOS/UEFI compatible, and highly up-to-date option for modern hardware, Memtest86+ 6.x is a solid choice . If you need professional features (ECC injection, DIMM decoding, automation, instrumentation integration), MemTest86 Pro offers a toolset that's hard to beat.

For home users and enthusiasts, the free versions of both are usually sufficient. However, in modern UEFI environments, MemTest86 Free offers a polished interface, Secure Boot, and advanced testing capabilities, while Memtest86+ stands out for its cross -BIOS/UEFI support and its availability in Linux distributions.

detect ram memory failure in windows 11-3
Related articles:
How to detect RAM failures in Windows 11