Crude fix for bandwidth calculations with pseudo-channels
This commit is contained in:
@@ -506,11 +506,13 @@ def memory_utilisation_in_Gibps_without_idle(connection):
|
|||||||
def memory_utilisation_percent_including_idle(connection):
|
def memory_utilisation_percent_including_idle(connection):
|
||||||
cursor = connection.cursor()
|
cursor = connection.cursor()
|
||||||
cursor.execute("""SELECT SUM(DataStrobeEnd - DataStrobeBegin) FROM Phases""")
|
cursor.execute("""SELECT SUM(DataStrobeEnd - DataStrobeBegin) FROM Phases""")
|
||||||
active = cursor.fetchone()
|
active = cursor.fetchone()[0]
|
||||||
|
if getPseudoChannelMode(connection):
|
||||||
|
active /= 2
|
||||||
cursor = connection.cursor()
|
cursor = connection.cursor()
|
||||||
cursor.execute("""SELECT MAX(DataStrobeEnd) FROM Phases""")
|
cursor.execute("""SELECT MAX(DataStrobeEnd) FROM Phases""")
|
||||||
total = cursor.fetchone()
|
total = cursor.fetchone()[0]
|
||||||
return (active[0] / total[0]) * 100
|
return (active / total) * 100
|
||||||
|
|
||||||
|
|
||||||
# def refreshMissDecision(connection, calculatedMetrics):
|
# def refreshMissDecision(connection, calculatedMetrics):
|
||||||
|
|||||||
@@ -115,6 +115,11 @@ void ControllerRecordable::controllerMethod()
|
|||||||
|
|
||||||
uint64_t windowNumberOfBeatsServed = numberOfBeatsServed - lastNumberOfBeatsServed;
|
uint64_t windowNumberOfBeatsServed = numberOfBeatsServed - lastNumberOfBeatsServed;
|
||||||
lastNumberOfBeatsServed = numberOfBeatsServed;
|
lastNumberOfBeatsServed = numberOfBeatsServed;
|
||||||
|
|
||||||
|
// FIX: HBM pseudo-channels
|
||||||
|
// maybe better solution in the future?
|
||||||
|
windowNumberOfBeatsServed /= memSpec.pseudoChannelsPerChannel;
|
||||||
|
|
||||||
sc_time windowActiveTime =
|
sc_time windowActiveTime =
|
||||||
activeTimeMultiplier * static_cast<double>(windowNumberOfBeatsServed);
|
activeTimeMultiplier * static_cast<double>(windowNumberOfBeatsServed);
|
||||||
double windowAverageBandwidth = windowActiveTime / windowSizeTime;
|
double windowAverageBandwidth = windowActiveTime / windowSizeTime;
|
||||||
|
|||||||
Reference in New Issue
Block a user