  Main memory (DRAM) consumes as much as half of the total system power in a
computer today, resulting in a growing need to develop new DRAM architectures
and systems that consume less power. Researchers have long relied on DRAM power
models that are based off of standardized current measurements provided by
vendors, called IDD values. Unfortunately, we find that these models are highly
inaccurate, and do not reflect the actual power consumed by real DRAM devices.
  We perform the first comprehensive experimental characterization of the power
consumed by modern real-world DRAM modules. Our extensive characterization of
50 DDR3L DRAM modules from three major vendors yields four key new observations
about DRAM power consumption: (1) across all IDD values that we measure, the
current consumed by real DRAM modules varies significantly from the current
specified by the vendors; (2) DRAM power consumption strongly depends on the
data value that is read or written; (3) there is significant structural
variation, where the same banks and rows across multiple DRAM modules from the
same model consume more power than other banks or rows; and (4) over successive
process technology generations, DRAM power consumption has not decreased by as
much as vendor specifications have indicated.
  Based on our detailed analysis and characterization data, we develop the
Variation-Aware model of Memory Power Informed by Real Experiments (VAMPIRE).
We show that VAMPIRE has a mean absolute percentage error of only 6.8% compared
to actual measured DRAM power. VAMPIRE enables a wide range of studies that
were not possible using prior DRAM power models. As an example, we use VAMPIRE
to evaluate a new power-aware data encoding mechanism, which can reduce DRAM
energy consumption by an average of 12.2%. We plan to open-source both VAMPIRE
and our extensive raw data collected during our experimental characterization.
