Memtest86+ is a free, open-source, stand-alone memory tester for x86, x86-64, ARM64, and LoongArch64 architecture computers. It provides a much more thorough memory check than that provided by BIOS memory tests.
It is also able to access almost all the computer's memory, not being restricted by the memory used by the operating system and not depending on any underlying software like UEFI libraries.
Memtest86+ can be loaded and run either directly by a PC BIOS (legacy or UEFI) or via an intermediate bootloader that supports the Linux 16-bit, 32-bit, 64-bit, or EFI handover boot protocol. It should work on any Pentium class or later 32-bit or 64-bit CPU.
What's New
ARM64 (AArch64) Now Supported!
Memtest86+ now runs on ARM64 platforms supporting UEFI and ACPI! Aarch64 support has currently been tested on Qualcommm Snapdragon X laptop, Raspberry Pi 4 & 5 (with community UEFI firmware) and QEMU.
Save Report to USB Drive
Writing reports to USB drive was probably the most wanted feature. Press F6 to save a full-text report with system information, memory modules and testing results to a FAT32-formatted USB drive. Each saved report will have its own number, so previous reports won't be overwritten.
Redesigned Test Algorithms
Memtest86+ tests have been reworked to detect errors faster, and optimized to find more complex failures.
SIMD Tests on 64-bit CPUs
Along with the new Bus stress test (see below), the old random-sequence moving test has been converted to SIMD to benefit from larger vectors instructions. Both use non-temporal stores that bypass the CPU caches and write to the main memory directly, resulting in significantly higher memory access/traffic than scalar tests.
Bus Stress Test
This new test targets common bus interface weaknesses on modern era plaform (DDR5+) while still being demanding on older architecture. The sequence keeps switching between write-bursts and read-checks while also inserting idle periods to create load transitions on the PMIC of the module (which can't be corrected by on-die ECC). This can uncover interface-related faults like signal integrity failures due to electrical noise or voltage drops, or XMP/EXPO training issues. This is exactly what an unstable overclocked DDR5 kit (or high density server motherboards) may show in real-world.
Improved Bit Fade Test
In addition to the previous 0s and 1s bit fills, the final test on a pass includes a new random sequence. Every DRAM cell is now filled with random date while its adjacent neighbor carry the opposite charge. All CPU Cores now charge and verify the memory cells simultaneously.
Rowhammer
Target Row Refresh (tRR) is a feature in modern DIMMs that defeats the classic double sided hammer . This test uses Blacksmith-style patterns from recent 2022 research with non-uniform, many-sided, and synchronized with DRAM refresh. It infers memory row layout from access timing ('DRAMA-lite' approach). Errors are reported but not included in BadRAM patterns.
Serial Log for Automation
The log= boot parameter allows for one line of machine-parsable output to be produced for each event during the test: start, system information, pass and progress through the tests, and errors. These lines are easy to parse but still human-readable. In addition to the new maxpasses= option (restart after N passes), Memtest86+ can now be run headlessly in test lab environments and CI build systems.
SPD Integrity Check
Checksum/CRC of the SPD of each memory module (DDR5, DDR4, and older) is now verified, and bad memory modules are marked as BAD CRC!. A corrupted SPD could lead to hanging of some motherboards during POST, but most utilities don't pay attention to that. Memtest86+ detects it. It can be turned off by the nospdcrc boot parameter.
Memory Info from DMI When SPD Is Unavailable
On some platforms (eg: laptops, desktops from big OEMs, ARM boards), reading the SPD data is unavailable due to SMBus being locked or inaccessible. Memtest86+ now uses SMBIOS data as a fallback to display infos about the memory module (size, type, speed, and model number).
Misc. Improvements & Bug Fixes
- 100+ new DRAM brands detected
- Support for new platforms (eg: Intel Wildcat Lake)
- Fixed random hangs in x2APIC SMP mode
- Better CPU Temperature reporting on Server platforms (eg: EPYC)
- Various bug fixes (cache detection, USB and keyboard handling, etc.)

