summaryrefslogtreecommitdiff
path: root/src/gpgpu-sim/gpu-sim.cc
diff options
context:
space:
mode:
authorJin Wang <[email protected]>2014-11-15 02:09:24 -0500
committerJin Wang <[email protected]>2016-07-06 02:17:17 -0400
commita31392370bc7b23e115160b170e95b117597ebc4 (patch)
tree1a12298a5058574812617dc50ad3a3a19b81edf2 /src/gpgpu-sim/gpu-sim.cc
parent9c0384c1626205b4a9ed97f998b3d4d8e7758198 (diff)
ADD: add stats for kernel launching and complete cycle
Diffstat (limited to 'src/gpgpu-sim/gpu-sim.cc')
-rw-r--r--src/gpgpu-sim/gpu-sim.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gpgpu-sim/gpu-sim.cc b/src/gpgpu-sim/gpu-sim.cc
index 81c9c9a..27362cf 100644
--- a/src/gpgpu-sim/gpu-sim.cc
+++ b/src/gpgpu-sim/gpu-sim.cc
@@ -531,6 +531,7 @@ kernel_info_t *gpgpu_sim::select_kernel()
unsigned idx = (n+m_last_issued_kernel+1)%m_config.max_concurrent_kernel;
if( kernel_more_cta_left(m_running_kernels[idx]) ){
m_last_issued_kernel=idx;
+ m_running_kernels[idx]->start_cycle = gpu_sim_cycle;
// record this kernel for stat print if it is the first time this kernel is selected for execution
unsigned launch_uid = m_running_kernels[idx]->get_uid();
if (std::find(m_executed_kernel_uids.begin(), m_executed_kernel_uids.end(), launch_uid) == m_executed_kernel_uids.end()) {
@@ -560,6 +561,7 @@ void gpgpu_sim::set_kernel_done( kernel_info_t *kernel )
std::vector<kernel_info_t*>::iterator k;
for( k=m_running_kernels.begin(); k!=m_running_kernels.end(); k++ ) {
if( *k == kernel ) {
+ kernel->end_cycle = gpu_sim_cycle;
*k = NULL;
break;
}