summaryrefslogtreecommitdiff
path: root/src/gpgpu-sim/mem_latency_stat.cc
diff options
context:
space:
mode:
authorMahmoud <[email protected]>2020-01-06 17:44:48 -0500
committerMahmoud <[email protected]>2020-01-06 17:44:48 -0500
commitefbc51f171ab79d831a296e1b6b09a704e6e9fd5 (patch)
treef2a346be50852fc06a7f2f2e2750de319e161ffc /src/gpgpu-sim/mem_latency_stat.cc
parentb9cff5a53d576f1b2b953b3ce41b281128708787 (diff)
fixing the dram read/write count
Diffstat (limited to 'src/gpgpu-sim/mem_latency_stat.cc')
-rw-r--r--src/gpgpu-sim/mem_latency_stat.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/gpgpu-sim/mem_latency_stat.cc b/src/gpgpu-sim/mem_latency_stat.cc
index 2141e10..fcc1d18 100644
--- a/src/gpgpu-sim/mem_latency_stat.cc
+++ b/src/gpgpu-sim/mem_latency_stat.cc
@@ -41,6 +41,8 @@
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
+#include <math.h>
+
#include "../../libcuda/gpgpu_context.h"
memory_stats_t::memory_stats_t( unsigned n_shader, const shader_core_config *shader_config, const memory_config *mem_config, const class gpgpu_sim* gpu )
@@ -187,13 +189,13 @@ void memory_stats_t::memlatstat_dram_access(mem_fetch *mf)
bankwrites[mf->get_sid()][dram_id][bank]++;
shader_mem_acc_log( mf->get_sid(), dram_id, bank, 'w');
}
- totalbankwrites[dram_id][bank]++;
+ totalbankwrites[dram_id][bank] += ceil(mf->get_data_size() / m_memory_config->dram_atom_size);
} else {
bankreads[mf->get_sid()][dram_id][bank]++;
shader_mem_acc_log( mf->get_sid(), dram_id, bank, 'r');
- totalbankreads[dram_id][bank]++;
+ totalbankreads[dram_id][bank] += ceil(mf->get_data_size() / m_memory_config->dram_atom_size);
}
- mem_access_type_stats[mf->get_access_type()][dram_id][bank]++;
+ mem_access_type_stats[mf->get_access_type()][dram_id][bank] += ceil(mf->get_data_size() / m_memory_config->dram_atom_size);
}
if (mf->get_pc() != (unsigned)-1)