summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMahmoud <[email protected]>2018-03-28 15:22:33 -0400
committertgrogers <[email protected]>2018-04-05 10:32:26 -0400
commit038df10118351d44f8950065ddeb698ae3e390a1 (patch)
tree5916b68db8aee1a65f2bc04e3371e96349bd4bac /src
parent60a32420caa0e79c7d5133ff67a55c02333b1dc2 (diff)
adding new stats counter
Diffstat (limited to 'src')
-rw-r--r--src/gpgpu-sim/gpu-sim.cc16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/gpgpu-sim/gpu-sim.cc b/src/gpgpu-sim/gpu-sim.cc
index 95951a8..da35dc3 100644
--- a/src/gpgpu-sim/gpu-sim.cc
+++ b/src/gpgpu-sim/gpu-sim.cc
@@ -92,6 +92,8 @@ unsigned long long partiton_reqs_in_parallel = 0;
unsigned long long partiton_reqs_in_parallel_total = 0;
unsigned long long partiton_reqs_in_parallel_util = 0;
unsigned long long partiton_reqs_in_parallel_util_total = 0;
+unsigned long long gpu_sim_cycle_parition_util = 0;
+unsigned long long gpu_tot_sim_cycle_parition_util = 0;
unsigned long long partiton_replys_in_parallel = 0;
unsigned long long partiton_replys_in_parallel_total = 0;
@@ -754,6 +756,7 @@ void gpgpu_sim::init()
partiton_reqs_in_parallel = 0;
partiton_replys_in_parallel = 0;
partiton_reqs_in_parallel_util = 0;
+ gpu_sim_cycle_parition_util = 0;
reinit_clock_domains();
set_param_gpgpu_num_shaders(m_config.num_shader());
@@ -793,11 +796,14 @@ void gpgpu_sim::update_stats() {
partiton_reqs_in_parallel_total += partiton_reqs_in_parallel;
partiton_replys_in_parallel_total += partiton_replys_in_parallel;
partiton_reqs_in_parallel_util_total += partiton_reqs_in_parallel_util;
+ gpu_tot_sim_cycle_parition_util += gpu_sim_cycle_parition_util ;
gpu_sim_cycle = 0;
partiton_reqs_in_parallel = 0;
partiton_replys_in_parallel = 0;
partiton_reqs_in_parallel_util = 0;
+ gpu_sim_cycle_parition_util = 0;
+ gpu_tot_sim_cycle = 0;
gpu_sim_insn = 0;
m_total_cta_launched = 0;
}
@@ -987,8 +993,10 @@ void gpgpu_sim::gpu_print_stat()
printf("partiton_level_parallism_total = %12.4f\n", (float)(partiton_reqs_in_parallel+partiton_reqs_in_parallel_total) / (gpu_tot_sim_cycle+gpu_sim_cycle) );
printf("partiton_reqs_in_parallel_util = %lld\n", partiton_reqs_in_parallel_util);
printf("partiton_reqs_in_parallel_util_total = %lld\n", partiton_reqs_in_parallel_util_total );
- printf("partiton_level_parallism_util = %12.4f\n", (float)partiton_reqs_in_parallel_util / gpu_sim_cycle);
- printf("partiton_level_parallism_util_total = %12.4f\n", (float)(partiton_reqs_in_parallel_util+partiton_reqs_in_parallel_util_total) / (gpu_tot_sim_cycle+gpu_sim_cycle) );
+ printf("gpu_sim_cycle_parition_util = %lld\n", gpu_sim_cycle_parition_util);
+ printf("gpu_tot_sim_cycle_parition_util = %lld\n", gpu_tot_sim_cycle_parition_util );
+ printf("partiton_level_parallism_util = %12.4f\n", (float)partiton_reqs_in_parallel_util / gpu_sim_cycle_parition_util);
+ printf("partiton_level_parallism_util_total = %12.4f\n", (float)(partiton_reqs_in_parallel_util+partiton_reqs_in_parallel_util_total) / (gpu_sim_cycle_parition_util+gpu_tot_sim_cycle_parition_util) );
printf("partiton_replys_in_parallel = %lld\n", partiton_replys_in_parallel);
printf("partiton_replys_in_parallel_total = %lld\n", partiton_replys_in_parallel_total );
printf("L2_BW = %12.4f GB/Sec\n", ((float)(partiton_replys_in_parallel * 32) / (gpu_sim_cycle * m_config.icnt_period)) / 1000000000);
@@ -1448,8 +1456,10 @@ void gpgpu_sim::cycle()
}
}
partiton_reqs_in_parallel += partiton_reqs_in_parallel_per_cycle;
- if(partiton_reqs_in_parallel_per_cycle > 0)
+ if(partiton_reqs_in_parallel_per_cycle > 0){
partiton_reqs_in_parallel_util += partiton_reqs_in_parallel_per_cycle;
+ gpu_sim_cycle_parition_util++;
+ }
if (clock_mask & ICNT) {
icnt_transfer();