diff options
author | Matthew Poremba <matthew.poremba@amd.com> | 2019-05-01 11:32:49 -0700 |
---|---|---|
committer | Matthew Poremba <matthew.poremba@amd.com> | 2019-06-06 19:55:38 +0000 |
commit | f2be9f195c5aa226fa546e79c9acf95c8a800915 (patch) | |
tree | dcfe73963c796bb17001b1967f66474661ead9ce /configs/common | |
parent | f5cf6d5f5ef8df0fedcba9d3cf3c16d76a6dceae (diff) | |
download | gem5-f2be9f195c5aa226fa546e79c9acf95c8a800915.tar.xz |
mem: Option to toggle DRAM low-power states
Adding an option to enable DRAM low-power states. The low power
states can have a significant impact on application performance
(sim_ticks) on the order of 2-3x, especially for compute-gpu apps.
The options allows for it to easily be enabled/disabled to compare
performance numbers. The option is disabled by default.
Change-Id: Ib9bddbb792a1a6a4afb5339003472ff8f00a5859
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/18548
Reviewed-by: Wendy Elsasser <wendy.elsasser@arm.com>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Jason Lowe-Power <jason@lowepower.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Diffstat (limited to 'configs/common')
-rw-r--r-- | configs/common/MemConfig.py | 5 | ||||
-rw-r--r-- | configs/common/Options.py | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/configs/common/MemConfig.py b/configs/common/MemConfig.py index 29c41388c..d09869285 100644 --- a/configs/common/MemConfig.py +++ b/configs/common/MemConfig.py @@ -224,6 +224,11 @@ def config_mem(options, system): if issubclass(cls, m5.objects.DRAMCtrl) and opt_mem_ranks: mem_ctrl.ranks_per_channel = opt_mem_ranks + # Enable low-power DRAM states if option is set + if issubclass(cls, m5.objects.DRAMCtrl): + mem_ctrl.enable_dram_powerdown = \ + options.enable_dram_powerdown + if opt_elastic_trace_en: mem_ctrl.latency = '1ns' print("For elastic trace, over-riding Simple Memory " diff --git a/configs/common/Options.py b/configs/common/Options.py index 4279b8006..f6fa0d031 100644 --- a/configs/common/Options.py +++ b/configs/common/Options.py @@ -104,6 +104,8 @@ def addNoISAOptions(parser): parser.add_option("--mem-size", action="store", type="string", default="512MB", help="Specify the physical memory size (single memory)") + parser.add_option("--enable-dram-powerdown", action="store_true", + help="Enable low-power states in DRAMCtrl") parser.add_option("--memchecker", action="store_true") |