ext, mem: Pull DRAMPower SHA 90d6290 and rebase
authorRadhika Jagtap <radhika.jagtap@arm.com>
Mon, 19 Dec 2016 10:32:40 +0000 (10:32 +0000)
committerAndreas Sandberg <andreas.sandberg@arm.com>
Thu, 16 Nov 2017 16:39:19 +0000 (16:39 +0000)
commit290a7e7c5c059c1309ca3d02ea3158e2ca9ac338
treef04a5c7aa0f5247d467e1bb8b2139d0e11baf532
parent0757bef15d934b22555c396bcbcb91c0a1dffbe5
ext, mem: Pull DRAMPower SHA 90d6290 and rebase

This patch syncs the DRAMPower library of gem5 to the
external github (https://github.com/ravenrd/DRAMPower).

The version pulled in is the commit:
90d6290f802c29b3de9e10233ceee22290907ce6
from 30th Oct. 2016.

This change also modifies the DRAM Ctrl interaction with the
DRAMPower, due to changes in the lib API in the above version.

Previously multiple functions were called to prepare the power
lib before calling the function that would calculate the enery. With
the new API, these functions are encompassed inside the function to
calculate the energy and therefore should now be removed from the
DRAM controller.

The other key difference is the introduction of a new function called
calcWindowEnergy which can be useful for any system that wants
to do measurements over intervals. For gem5 DRAM ctrl that means we
now need to accumulate the window energy measurements into the total
stat.

Change-Id: I3570fff2805962e166ff2a1a3217ebf2d5a197fb
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/5724
Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com>
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
24 files changed:
ext/drampower/README.md
ext/drampower/SConscript
ext/drampower/src/CAHelpers.cc [new file with mode: 0644]
ext/drampower/src/CmdHandlers.cc [new file with mode: 0644]
ext/drampower/src/CommandAnalysis.cc
ext/drampower/src/CommandAnalysis.h
ext/drampower/src/MemBankWiseParams.cc [new file with mode: 0644]
ext/drampower/src/MemBankWiseParams.h [new file with mode: 0644]
ext/drampower/src/MemCommand.h
ext/drampower/src/MemPowerSpec.cc
ext/drampower/src/MemPowerSpec.h
ext/drampower/src/MemTimingSpec.cc
ext/drampower/src/MemTimingSpec.h
ext/drampower/src/MemoryPowerModel.cc
ext/drampower/src/MemoryPowerModel.h
ext/drampower/src/TraceParser.cc
ext/drampower/src/TraceParser.h
ext/drampower/src/libdrampower/LibDRAMPower.cc
ext/drampower/src/libdrampower/LibDRAMPower.h
ext/drampower/test/libdrampowertest/Makefile
ext/drampower/test/libdrampowertest/commands.trace
ext/drampower/test/libdrampowertest/lib_test.cc
src/mem/dram_ctrl.cc
src/mem/dram_ctrl.hh