Skip to content

Commit 817d4b1

Browse files
committed
scaled add bank-level scalar value overhead added
1 parent d5901f9 commit 817d4b1

2 files changed

Lines changed: 26 additions & 26 deletions

File tree

libpimeval/src/pimPerfEnergyBankLevel.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -222,13 +222,13 @@ pimPerfEnergyBankLevel::getPerfEnergyForFunc2(PimCmdEnum cmdType, const pimObjIn
222222
*
223223
* As a result, only one read operation is necessary for the entire pass.
224224
*/
225-
msRead = ((m_tACT + m_tPRE) * 2) * numPass;
225+
msRead = ((m_tACT + m_tPRE) * 2) * numPass + (m_tR + m_tGDL);
226226
msWrite = ((m_tACT + m_tPRE) + (maxGDLItr * m_tGDL)) * (numPass - 1) + ((m_tACT + m_tPRE) + (minGDLItr * m_tGDL));
227227
msCompute = (maxElementsPerRegion * m_blimpLatency * numberOfOperationPerElement * 2 * (numPass - 1)) + (minElementPerRegion * m_blimpLatency * numberOfOperationPerElement * 2);
228228
msRuntime = msRead + msWrite + msCompute;
229229
mjEnergy = (((m_eACT + m_ePRE) * 3) + (maxElementsPerRegion * m_blimpArithmeticEnergy * numberOfOperationPerElement * 2)) * numCoresUsed * (numPass - 1);
230230
mjEnergy += (((m_eACT + m_ePRE) * 3) + (minElementPerRegion * m_blimpArithmeticEnergy * numberOfOperationPerElement * 2)) * numCoresUsed;
231-
mjEnergy += ((m_eR * 2 * maxGDLItr * (numPass-1)) + (m_eR * 2 * minGDLItr)) * numBankPerChip * m_numRanks;
231+
mjEnergy += ((m_eR * 2 * maxGDLItr * (numPass-1)) + (m_eR * 2 * minGDLItr)) * numBankPerChip * m_numRanks + (m_eAP * numCoresUsed + m_eR * numBankPerChip * m_numRanks);
232232
mjEnergy += ((m_eW * maxGDLItr * (numPass-1)) + (m_eW * minGDLItr)) * numBankPerChip * m_numRanks;
233233
mjEnergy += m_pBChip * m_numChipsPerRank * m_numRanks * msRuntime;
234234
totalOp = obj.getNumElements() * 2;

0 commit comments

Comments
 (0)