summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Rogers <[email protected]>2011-06-29 08:47:20 -0800
committerTim Rogers <[email protected]>2011-06-29 08:47:20 -0800
commit1592469eb917df0f679b4eb7b5e6e7ac3301d148 (patch)
tree64261609cf990141baaea22586d52c0c6ee58601
parentc2a975d32edc505adccfb9179c874b1d934fafec (diff)
Adding back stat for memory divergence
[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 9681]
-rw-r--r--src/abstract_hardware_model.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/abstract_hardware_model.cc b/src/abstract_hardware_model.cc
index 1cce2f2..428e9a9 100644
--- a/src/abstract_hardware_model.cc
+++ b/src/abstract_hardware_model.cc
@@ -2,6 +2,7 @@
#include "cuda-sim/memory.h"
#include "option_parser.h"
#include "cuda-sim/ptx_ir.h"
+#include "cuda-sim/ptx-stats.h"
#include <algorithm>
unsigned mem_access_t::sm_next_access_uid = 0;
@@ -82,6 +83,8 @@ void warp_inst_t::generate_mem_accesses()
if( m_warp_active_mask.count() == 0 )
return; // predicated off
+ const size_t starting_queue_size = m_accessq.size();
+
assert( is_load() || is_store() );
assert( m_per_scalar_thread_valid ); // need address information per thread
@@ -315,6 +318,7 @@ void warp_inst_t::generate_mem_accesses()
m_accessq.push_back( mem_access_t(access_type,a->first,cache_block_size,is_write,a->second,byte_mask) );
}
+ ptx_file_line_stats_add_uncoalesced_gmem( pc, m_accessq.size() - starting_queue_size );
m_mem_accesses_created=true;
}