summaryrefslogtreecommitdiff
path: root/src/sim/power
diff options
context:
space:
mode:
authorDavid Guillen Fandos <david.guillen@arm.com>2016-06-06 17:16:44 +0100
committerDavid Guillen Fandos <david.guillen@arm.com>2016-06-06 17:16:44 +0100
commit12714040a2699d4eff001956649597345243a591 (patch)
tree9e2b540fce4b58e05e2fd2577e63aaed56ac79c6 /src/sim/power
parent7cfb59d6e580bac0d663bc22da315aed7746fdeb (diff)
downloadgem5-12714040a2699d4eff001956649597345243a591.tar.xz
pwr: Closing power and thermal feedback loop
This patch makes thermal models use the power figures calculated by power models. Since there is a circular dependency between power and thermal (and thermal was pushed before) this patch closes that loop. Change-Id: I8bd5acf6a5026fdbbcfac47e33d27397f24a6f7d Reviewed-by: Stephan Diestelhorst <stephan.diestelhorst@arm.com>
Diffstat (limited to 'src/sim/power')
-rw-r--r--src/sim/power/thermal_domain.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/sim/power/thermal_domain.cc b/src/sim/power/thermal_domain.cc
index 208c5bab4..11f48371e 100644
--- a/src/sim/power/thermal_domain.cc
+++ b/src/sim/power/thermal_domain.cc
@@ -110,7 +110,8 @@ LinearEquation
ThermalDomain::getEquation(ThermalNode * tn, unsigned n, double step) const
{
LinearEquation eq(n);
+ double power = subsystem->getDynamicPower() + subsystem->getStaticPower();
if (tn == node)
- eq[eq.cnt()] = 1.75f; // Fake 1.75 Watts for now, to be changed to PM
+ eq[eq.cnt()] = power;
return eq;
}