34c34,38
< * Authors: Matthias Jung, Omar Naji
---
> * Authors: Matthias Jung
> * Omar Naji
> * Subash Kannoth
> * Éder F. Zulian
> * Felipe S. Prado
44,45c48,50
< counters(CommandAnalysis(memSpec.memArchSpec.nbrOfBanks)),
< includeIoAndTermination(includeIoAndTermination)
---
> counters(memSpec),
> includeIoAndTermination(includeIoAndTermination),
> mpm(MemoryPowerModel())
46a52,53
> MemBankWiseParams p (100,100,false,0,false,static_cast<unsigned>(memSpec.memArchSpec.nbrOfBanks));
> libDRAMPower DRAMPower = libDRAMPower(memSpec, 0, p);
48a56,63
> libDRAMPower::libDRAMPower(const MemorySpecification& memSpec, bool includeIoAndTermination, const Data::MemBankWiseParams& bwPowerParams) :
> memSpec(memSpec),
> counters(CommandAnalysis(memSpec)),
> includeIoAndTermination(includeIoAndTermination),
> bwPowerParams(bwPowerParams)
> {
> }
>
59c74
< void libDRAMPower::updateCounters(bool lastUpdate)
---
> void libDRAMPower::updateCounters(bool lastUpdate, int64_t timestamp)
61c76
< counters.getCommands(memSpec, cmdList, lastUpdate);
---
> counters.getCommands(cmdList, lastUpdate, timestamp);
67c82,83
< mpm.power_calc(memSpec, counters, includeIoAndTermination);
---
> updateCounters(true);
> mpm.power_calc(memSpec, counters, includeIoAndTermination, bwPowerParams);
69a86,94
> void libDRAMPower::calcWindowEnergy(int64_t timestamp)
> {
> doCommand(MemCommand::NOP, 0, timestamp);
> updateCounters(false, timestamp);
> mpm.power_calc(memSpec, counters, includeIoAndTermination, bwPowerParams);
> clearCounters(timestamp);
> }
>
>