DDR DRAM FAQs And Troubleshooting Guide

What Are XMP, AMP, DOCP And EOCP?

All of these are approaches used by motherboard manufacturers to ease the installation and setup of DRAM.

Let’s start with XMP, or Extreme Memory Profile, a standard developed by Intel that allows DRAM manufacturers to place data in the SPD of the memory (SPD, or serial presence detect, is information stored on your DRAM module). XMP provides “one-click” configuration of nonstandard data rates, timings and voltage levels, replacing previous “automatic overclocking” technologies like Nvidia’s EPP 2.0.

Not to be outdone, AMD developed AMP (often called AMD Memory Profile), which is used primarily with its own Radeon DRAM lines (the Value, Entertainment, Performance and Gamer series). The need for an AMD-specific technology emerged as DRAM companies began phasing out EPP 2.0 profiles in favor of Intel’s XMP.

Most high-performance memory lacks AMP, but that doesn’t mean XMP profiles are useless. Many motherboard manufacturers initially enabled XMP profiles on AMD motherboards with great success. The problem is that this Intel technology is optimized for Intel’s memory controllers, and as these have gotten better, the higher frequencies and tighter timings have often become unstable or nonfunctional.

Motherboard manufacturer Asus appears to have seen this coming, first naming its XMP for AMD program “DOCP” (DRAM Overclock Profiles). Gigabyte joined the group with EOCP (Extended Overclock Profiles). These motherboards now use the XMP profiles in the SPD to adapt to AMD hardware. The BIOS is often programmed to set higher timings than those found in the SPD. My Crosshair Formula takes 2400 MT/s DRAM with XMP profiles of 2400 10-12-12-31 or 11-13-13-31 and sets it to 11-13-13-35 — a little looser than the timings Intel rigs use.

Here is an example of the BIOS showing the DOCP:

PnP, which stands for "plug and play," is a feature that has been available in motherboards for some time, going back (for our purposes, at least) to the introduction of the LGA 1155 interface. Until fairly recently, PnP has been a nonentity as far as DRAM goes. Then, Kingston came out with its HyperX Fury line of DRAM. When installed at boot-up, the DRAM configures itself to the highest data rate it can run. The link shows the chipsets supported by PnP for this line of DRAM.

  • Nuckles_56
    Thank you for this useful and informative article
    Reply
  • das_stig
    With AMD motherboards, you should set the memory to unganged mode for a tiny performance improvement unless you're running a webserver.
    Reply
  • vicstead
    Thank you Jim for this very informative article, an enjoyable read.
    Reply
  • Mahruay
    Nice read although could you explain what real world improvements can be seen in faster RAM.
    Reply
  • boju
    Nice article, answers a lot for people and definitely will link for future references. I need to ask though, is there any reason to discriminate DDR3 as per title?
    Reply
  • TechyInAZ
    Wow this is very informative thank you for this!!
    Reply
  • MPA2000
    Lost me after Virtual v Physical.
    Reply
  • clonazepam
    I hope the next part covers performance when using say 3 sticks, where 2 are dual channel, 1 is single channel. Some real world results would be stellar (maybe as a follow-up?)

    I'd also like to see RAM drives covered. Suppose you allocate 4GB out of 16 for a RAM drive. How does the software create the 4GB? Is it using a single chunk of memory, is it taking 1GB from each of the 4 sticks? Is it from the beginning, middle or end of the 16GB of memory?

    Covering how to identify true "memory leaks" versus a more common scenario where RAM usage grows intentionally from the caching of more and more assets.
    Reply
  • damric
    Great article, Tradesman! I give it Two thumbs up and two big toes up too!

    Only 1 issue:

    Ganged vs Unganged: that actually doesn't have to do with single or dual channel.

    Quote AMD:
    Ganged mode means that there is a single 128bit wide dual-channel DRAM Controller (DCT)
    enabled. Unganged mode enables two 64bit wide DRAM Controllers (DCT0 and DCT1).
    The recommended setting in most cases is the Unganged memory mode. Ganged mode may allow slightly
    higher Memory performance tuning and performs well in single-threaded benchmarks.
    Depending on the motherboard and BIOS, it may be required manually setting the timing parameters for each
    DCT (in Unganged mode) when performance tuning the memory or fine tuning the timings. Some BIOS
    versions apply the same timings automatically for both DCTs in an Unganged mode.

    Unganged is like a normal divided highway with two directions. Ganged let's traffic use all of the lanes in one direction at a time. Unganged is said to be more efficient but no one really ever tested this thoroughly to see if any applications would be better served in ganged instead. You could still have unganged single channel or dual channel, and ganged single channel or dual channel. If that's confusing I'll try to explain with more complicated interstate highway anecdote.

    Lastly, I see you have a new AMD rig. Did your head explode when you saw how much more difficult it is to tune memory on that platform than on your past intel rigs?


    Reply
  • Shankovich
    Awesome article! These kinds of articles is what brought me to Tom's in the first place years ago!
    Reply