What Is XMP? Why Your RAM Runs Slower Than Advertised

XMP (Intel Extreme Memory Profile) is a set of faster speed, timing and voltage settings stored on a RAM module, which you switch on in the BIOS to make the memory run at the speed printed on the box. Without it, the RAM boots at the slower JEDEC standard settings; a DDR5-6400 kit, for example, runs at DDR5-4800 until XMP is enabled.

XMP is an overclock: tested by the memory manufacturer, but above the standard speed and often above what the CPU maker officially supports.

Why RAM runs slower than advertised

Every memory module has a small chip, the SPD (Serial Presence Detect), that tells the motherboard how to run it. It holds a conservative default that any compatible system can boot with, plus the faster XMP profiles. Kingston's datasheet for its FURY Beast DDR5-6400 module (KF564C32BBE-16) lists exactly what's inside:

ProfileSpeedTimingsVoltage
Default (JEDEC)DDR5-4800CL40-39-391.1 V
XMP Profile #1DDR5-6400CL32-39-391.4 V
XMP Profile #2DDR5-6000CL30-36-361.4 V
EXPO Profile #0DDR5-6400CL32-39-391.4 V
EXPO Profile #1DDR5-6000CL30-36-361.4 V

The datasheet says plainly: "The SPDs are programmed to JEDEC standard latency DDR5-4800 timing of 40-39-39 at 1.1V." The 6400 on the label is the XMP profile. Intel describes the same behaviour from its side: XMP modules first boot at standard JEDEC settings so the system starts reliably, and you select the profile afterwards.

The numbers mean: DDR5-6400 is 6,400 megatransfers per second (MT/s); CL32 is the CAS latency in clock cycles. Lower CL at the same speed is quicker. The profile runs the module 33% faster (6400 vs 4800 MT/s) at 0.3 V more.

XMP is an overclock: what the CPU officially supports

The CPU's memory controller has its own rated maximum. Intel's specification page for the Core i9-14900K lists memory types "Up to DDR5 5600 MT/s" and "Up to DDR4 3200 MT/s". A DDR5-6400 XMP profile on that CPU runs the memory controller 800 MT/s above Intel's rating. Most systems handle it, but it is not guaranteed, which is why Intel's XMP page warns: "Altering clock frequency or voltage may void any product warranties and reduce stability." Intel lists XMP among those alterations.

Look up your own CPU's supported memory speed on the manufacturer's specification page before deciding how far to push it.

XMP versions: 2.0 and 3.0

VersionMemoryProfilesNotes
XMP 2.0DDR42Fixed vendor profiles
XMP 3.0DDR5Up to 5 (3 vendor, 2 rewritable)Adds module voltage control; you can save your own profiles

Source: Intel's XMP page. The rewritable slots in XMP 3.0 let enthusiasts store their own tuned settings on the module itself.

XMP vs EXPO

EXPO is AMD's profile format for DDR5, and it does the same job: a stored, tested overclock you enable in the BIOS. Many kits carry both, like the Kingston module above, which "supports AMD EXPO v1.1 and Intel Extreme Memory Profiles". On an AMD AM5 board, pick the EXPO profile if the kit has one. The name of the toggle in the BIOS depends on the board.

How to check your current RAM speed

On Windows, PowerShell reads the values straight from the module's SPD data via WMI:

Get-CimInstance Win32_PhysicalMemory | Select-Object Manufacturer, PartNumber, Speed, ConfiguredClockSpeed

Example output, from a laptop with two DDR5-5600 modules:

Manufacturer PartNumber           Speed ConfiguredClockSpeed
------------ ----------           ----- --------------------
Kingston     KF556S40-32           5600                 5200
Kingston     KF556S40-32           5600                 5200

Speed is the module's rated speed and ConfiguredClockSpeed is what it is running at now. Here the modules run 400 MT/s below their rating. On a desktop, a ConfiguredClockSpeed equal to the JEDEC default (such as 4800 for DDR5) usually means XMP is off.

A caveat on units: Microsoft's documentation lists Speed in nanoseconds and ConfiguredClockSpeed in MHz, but on the system above both report the data rate in MT/s, matching the "556" (5600) in the part number. Don't divide or multiply them.

How to enable XMP

  1. Restart and enter the BIOS/UEFI setup. The key is shown briefly at boot and listed in the motherboard manual.
  2. Find the memory setting. The name and location vary by board maker (Intel notes menus differ and points you to the motherboard manufacturer). Look for XMP, EXPO, or a memory profile option.
  3. Select Profile 1 (the rated speed).
  4. Save and exit.

Afterwards, rerun the PowerShell command and confirm ConfiguredClockSpeed matches the profile.

If the system won't boot or crashes after enabling XMP

  • Won't boot at all: clear the CMOS as described in the motherboard manual. That resets the BIOS settings, XMP included, and the RAM goes back to its JEDEC default.
  • Random crashes or errors: try the slower profile (Profile 2, DDR5-6000 on the kit above), or set the speed one step lower manually and keep the profile's timings.
  • Check the CPU limit: if the profile is far above your CPU's rated memory speed (see the specification page), a speed closer to that rating is more likely to be stable.

Test stability with a memory test before trusting the machine with real work. If you're still deciding how much memory to buy, see how much RAM you need.

Frequently asked questions

Is it safe to enable XMP?
XMP profiles are tested by the memory maker, and the module still boots at standard JEDEC settings if the profile fails. The risks are instability (crashes, failed boots) if your CPU or motherboard can't hold the speed, and warranty: Intel states that altering clock frequency or voltage may void product warranties and reduce stability, and counts XMP as such a change. Check the system is stable after enabling it.
Does XMP work on AMD systems?
Often, yes. AMD's equivalent profile format for DDR5 is EXPO, and many DDR5 kits ship with both XMP and EXPO profiles; the Kingston DDR5-6400 module cited here has two of each. Use the EXPO profile on an AMD board if the kit has one.
Will XMP make my games faster?
Sometimes, and by an amount that depends on the game, the CPU and how far the profile is above the JEDEC default. There is no fixed percentage; measure your own workload before and after.
Why does Task Manager show a different number than the box?
Usually because XMP is off and the RAM is running at its JEDEC default. It can also be because the CPU's memory controller or the motherboard can't run the rated speed with your number of modules, so the BIOS picked a lower one. Compare the configured speed with the kit's rated speed using the PowerShell command in this article.

Sources