summaryrefslogtreecommitdiff
path: root/src/gpgpu-sim/gpu-sim.cc
diff options
context:
space:
mode:
authorAndrew M. B. Boktor <[email protected]>2012-05-08 18:19:15 -0800
committerAndrew Boktor <[email protected]>2014-08-14 13:19:38 -0700
commit319d541210cf1c5c00d11f8f9bb41dee7d7d8f76 (patch)
treed524177ffe64642472a0c9e903ed0d90dc9c1296 /src/gpgpu-sim/gpu-sim.cc
parentac470a84b497769d6a16744e582c81e56f78d343 (diff)
A much easier way to attempt to fix the problem targeted by CL12362 is to just print the stats whenever a kernel is done.
This requires decoupling updating the stats from printing them and modifying the printing code to accomodate this change. [git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 12366]
Diffstat (limited to 'src/gpgpu-sim/gpu-sim.cc')
-rw-r--r--src/gpgpu-sim/gpu-sim.cc13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/gpgpu-sim/gpu-sim.cc b/src/gpgpu-sim/gpu-sim.cc
index c96ed9e..ee8f99a 100644
--- a/src/gpgpu-sim/gpu-sim.cc
+++ b/src/gpgpu-sim/gpu-sim.cc
@@ -554,11 +554,14 @@ void gpgpu_sim::init()
icnt_init_grid();
}
-void gpgpu_sim::print_stats()
-{
+void gpgpu_sim::update_stats() {
m_memory_stats->memlatstat_lat_pw();
gpu_tot_sim_cycle += gpu_sim_cycle;
gpu_tot_sim_insn += gpu_sim_insn;
+}
+
+void gpgpu_sim::print_stats()
+{
ptx_file_line_stats_write_file();
gpu_print_stat();
@@ -616,9 +619,9 @@ void gpgpu_sim::gpu_print_stat() const
printf("gpu_sim_cycle = %lld\n", gpu_sim_cycle);
printf("gpu_sim_insn = %lld\n", gpu_sim_insn);
printf("gpu_ipc = %12.4f\n", (float)gpu_sim_insn / gpu_sim_cycle);
- printf("gpu_tot_sim_cycle = %lld\n", gpu_tot_sim_cycle);
- printf("gpu_tot_sim_insn = %lld\n", gpu_tot_sim_insn);
- printf("gpu_tot_ipc = %12.4f\n", (float)gpu_tot_sim_insn / gpu_tot_sim_cycle);
+ printf("gpu_tot_sim_cycle = %lld\n", gpu_tot_sim_cycle+gpu_sim_cycle);
+ printf("gpu_tot_sim_insn = %lld\n", gpu_tot_sim_insn+gpu_sim_insn);
+ printf("gpu_tot_ipc = %12.4f\n", (float)(gpu_tot_sim_insn+gpu_sim_cycle) / (gpu_tot_sim_cycle+gpu_sim_cycle));
printf("gpu_tot_issued_cta = %lld\n", gpu_tot_issued_cta);
// performance counter for stalls due to congestion.