From 8afd2f13e10d9ac9206d0b494b1ff9864844c713 Mon Sep 17 00:00:00 2001 From: Nick Date: Fri, 13 Sep 2019 08:08:34 -0400 Subject: Final pass on power model reformat (comments...) --- src/gpuwattch/array.cc | 14 ++++++------ src/gpuwattch/core.cc | 40 +++++++++++++++++++++-------------- src/gpuwattch/noc.cc | 7 +++--- src/gpuwattch/technology_xeon_core.cc | 4 ++-- 4 files changed, 37 insertions(+), 28 deletions(-) (limited to 'src') diff --git a/src/gpuwattch/array.cc b/src/gpuwattch/array.cc index 6cb2f3b..eea1e67 100644 --- a/src/gpuwattch/array.cc +++ b/src/gpuwattch/array.cc @@ -174,21 +174,21 @@ void ArrayST::optimize_array() { // CAM structures can be heavily pipelined and use // look-ahead techniques, therefore timing can be // relaxed. But McPAT does not model the - // advanced techniques. If continue optimizing, the area efficiency - // will be too low + // advanced techniques. If continue optimizing, the + // area efficiency will be too low // */ // //For CAM and FA, stop opt if area efficiency is too low // if (throughput_overflow==true) // cout<< "Warning: " <<" McPAT stopped optimization on - //throughput for + // throughput for //"<< name // <<" array structure because its area efficiency - //is below + // is below //"<power.readOp.leakage <<" W" << endl; // cout << indent_str_next << "Subthreshold Leakage @@ -6391,10 +6394,14 @@ void Core::displayEnergy(uint32_t indent, int plevel, bool is_tdp) { // << //(long_channel? // undiffCore->power.readOp.longer_channel_leakage:undiffCore->power.readOp.leakage) - //<< " W" << endl; cout << indent_str_next << "Gate Leakage = + //<< " W" << endl; cout << indent_str_next << "Gate + //Leakage + //= //" //<< undiffCore->power.readOp.gate_leakage << " W" << endl; - // // cout << indent_str_next << "Runtime Dynamic = + // // cout << indent_str_next << "Runtime + //Dynamic + //= //" //<< undiffCore->rt_power.readOp.dynamic/executionTime << " W" << endl; // cout @@ -6411,11 +6418,12 @@ void Core::displayEnergy(uint32_t indent, int plevel, bool is_tdp) { << endl; } else { - // cout << indent_str_next << "Instruction Fetch Unit Peak Dynamic + // cout << indent_str_next << "Instruction Fetch Unit Peak + // Dynamic //= //" //<< ifu->rt_power.readOp.dynamic*clockRate << " W" << endl; - //cout + // cout //<< indent_str_next << "Instruction Fetch Unit Subthreshold Leakage = " // << ifu->rt_power.readOp.leakage <<" W" << endl; cout << // indent_str_next << "Instruction Fetch Unit Gate Leakage = " << @@ -6430,7 +6438,7 @@ void Core::displayEnergy(uint32_t indent, int plevel, bool is_tdp) { // << "Load Store Unit Gate Leakage = " << // lsu->rt_power.readOp.gate_leakage //<< " W" << endl; cout << indent_str_next << "Memory Management - //Unit Peak Dynamic = " << mmu->rt_power.readOp.dynamic*clockRate << " W" + // Unit Peak Dynamic = " << mmu->rt_power.readOp.dynamic*clockRate << " W" // << // endl; cout << indent_str_next << "Memory Management Unit // Subthreshold Leakage = " << mmu->rt_power.readOp.leakage << " W" << diff --git a/src/gpuwattch/noc.cc b/src/gpuwattch/noc.cc index 9453ccb..b7ccdb3 100644 --- a/src/gpuwattch/noc.cc +++ b/src/gpuwattch/noc.cc @@ -353,11 +353,12 @@ void NoC::displayEnergy(uint32_t indent, int plevel, bool is_tdp) { cout << endl; } } else { - // cout << indent_str_next << "Instruction Fetch Unit Peak Dynamic + // cout << indent_str_next << "Instruction Fetch Unit Peak + // Dynamic //= //" //<< ifu->rt_power.readOp.dynamic*clockRate << " W" << endl; - //cout + // cout //<< indent_str_next << "Instruction Fetch Unit Subthreshold Leakage = " // << ifu->rt_power.readOp.leakage <<" W" << endl; cout << // indent_str_next << "Instruction Fetch Unit Gate Leakage = " << @@ -372,7 +373,7 @@ void NoC::displayEnergy(uint32_t indent, int plevel, bool is_tdp) { // << "Load Store Unit Gate Leakage = " << // lsu->rt_power.readOp.gate_leakage //<< " W" << endl; cout << indent_str_next << "Memory Management - //Unit Peak Dynamic = " << mmu->rt_power.readOp.dynamic*clockRate << " W" + // Unit Peak Dynamic = " << mmu->rt_power.readOp.dynamic*clockRate << " W" // << // endl; cout << indent_str_next << "Memory Management Unit // Subthreshold Leakage = " << mmu->rt_power.readOp.leakage << " W" << diff --git a/src/gpuwattch/technology_xeon_core.cc b/src/gpuwattch/technology_xeon_core.cc index 86bbd84..6f95cc2 100644 --- a/src/gpuwattch/technology_xeon_core.cc +++ b/src/gpuwattch/technology_xeon_core.cc @@ -1597,8 +1597,8 @@ void init_tech_params(double technology, bool is_tag) { // / Vs Vdsat[1] = 6.64e-2; //V/micron c_g_ideal[1] // = 3.22e-16;//F/micron c_fringe[1] = 0.008e-15; c_junc[1] // = - // 0;//F/micron2 I_on_n[1] = 727.6e-6;//A/micron I_on_p[1] - // = I_on_n[1] / 2; nmos_effective_resistance_multiplier = 1.99; + // 0;//F/micron2 I_on_n[1] = 727.6e-6;//A/micron I_on_p[1] = + // I_on_n[1] / 2; nmos_effective_resistance_multiplier = 1.99; // n_to_p_eff_curr_drv_ratio[1] = 2; // gmp_to_gmn_multiplier[1] = 0.99; // Rnchannelon[1] = nmos_effective_resistance_multiplier * vdd[1] / -- cgit v1.3