Memtest86 is a free, standalone memory testing software for x86 and Arm computers. It boots from USB flash drives to test your computer's RAM for faults, using algorithms that have been in development for over 20 years.

Unreliable RAM can cause a multitude of problems. Corrupted data, crashes and other unexplained behaviour. Bad RAM is one of the most frustrating computer problems to have as symptoms are often random and hard to pin down. MemTest86 can help diagnose faulty RAM (or rule it out as a cause of system instability).

MemTest86 is relied on for industrial use (PC/CPU/motherboard/RAM manufacturers) and consumer use (system builders, overclockers, computer enthusiasts).

MemTest86 supports all current technologies:

  • 13 different RAM testing algorithms - including row hammer fault detection*
  • All RAM types supported (DDR2, DDR3, DDR4, DDR5, SODIMM, XMP, ECC)
  • Self-booting off USB or Network (PXE)* boot, without needing DOS, Linux nor Windows
  • Optimized for UEFI-based x86/ARM systems
  • Native 64-bit code (since version 5)
  • ECC error detection & injection*
  • Secure Boot verified – Code signed by Microsoft
  • Graphical interface with mouse input
  • Save logs and create customizable HTML reports
  • Full test automation via configuration file
  • Support for memory blacklisting in Windows (badmemorylist) and Linux (BADRAM)
  • Multi-language support (Chinese, German, Russian, Spanish & more)

What's New

As MemTest86 V10 supports only the newer UEFI platform, older PCs without UEFI support would be unable to boot MemTest86. In order to run MemTest86, PCs with legacy BIOS platform must use the older V4 release of MemTest86.

New Features

  • Added new experimental memory test as Test 14 [DMA test]. This test exercises the disk controller's DMA hardware to perform memory access, bypassing the CPU. The motivation for this test came from discovering a defective RAM module that did not produce errors when accessed via the CPU, but failed when files were read from disk via DMA. As this test is experimental, it shall be disabled by default.
  • DIMM (Pro edition)/chip-level (Site Edition) error detection on limited number of hardware platforms. This includes mid-test error reporting, graphical UI summary report on test completion and per-DIMM/chip error count table in the HTML report.
  • Added new config file parameter, 'CPUMAP', to specify the DRAM chip labeling map. By default, DRAM chips are labeled consecutively starting from U0 (eg. U0, U1,…, U15)

Fixes / Enhancements

  • Log file name now includes the timestamp
  • Added new blacklist flag 'DISABLE_CPUINFO' for disabling CPU info collection
  • Fixed 'MAXCPUS' config file parameter not being applied
  • Fixed hammer test incorrectly running in single-sided mode in Free version
  • Fixed clock speed measurement failure for ARM chipsets due to cycle count register not being enabled
  • Fixed detection of MAC address used as unique ID for PXE boot
  • Added support for reporting IBECC errors
  • Fixed bug in reading ECC error count registers for various Intel/AMD Ryzen chipsets
  • Fixed reading ECC error status register for Intel Tiger Lake-H and Alder Lake chipsets
  • Fixed ECC detection on Intel Ice Lake-SP chipsets
  • Added ECC detection support for multi-socket Intel Ice Lake-SP chipsets
  • Fixed ECC support for Intel Rocket Lake chipset variant
  • Added ECC support for AMD Ryzen Zen 3 50h-5fh chipset
  • Fixed ECC support for AMD Ryzen Zen 2 chipsets with 2 memory channels
  • Fixed ECC error false positives on Intel Atom C2000 chipsets
  • Added support for retrieving Intel Ice Lake-SP CPU info
  • Added support for retrieving Intel Ice Lake-SP RAM SPD data
  • Added support for retrieving Intel Ice Lake-SP RAM temperature data
  • Added SMBus (SPD) support for Intel Alder Lake-P
  • Enable SMBus on Intel 801-based chipsets if disabled
  • Fixed detection of SPD modules on systems with > 8 SMBus controllers (eg. quad socket systems)
  • Fixed bug in mapping SPD module index to SMBIOS slot index
  • Fixed detection of SPD slot for systems with soldered and removable DIMMs
  • Fixed incorrect calculation of DDR5 transfer bandwidth
  • Fixed DDR5 memory type in SMBIOS not being correctly parsed
  • Fixed identification of data partition in USB flash drive
  • Create 'Benchmark' directory to store RAM benchmark results if it does not already exist
  • Updated blacklist