summaryrefslogtreecommitdiff
path: root/src/gpgpu-sim
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpgpu-sim')
-rw-r--r--src/gpgpu-sim/gpu-sim.cc2
-rw-r--r--src/gpgpu-sim/shader.cc2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/gpgpu-sim/gpu-sim.cc b/src/gpgpu-sim/gpu-sim.cc
index 0b4b2f6..363fe5a 100644
--- a/src/gpgpu-sim/gpu-sim.cc
+++ b/src/gpgpu-sim/gpu-sim.cc
@@ -1513,8 +1513,10 @@ void gpgpu_sim::cycle()
try_snap_shot(gpu_sim_cycle);
spill_log_to_file (stdout, 0, gpu_sim_cycle);
+#if (CUDART_VERSION >= 5000)
//launch device kernel
launch_one_device_kernel();
+#endif
}
}
diff --git a/src/gpgpu-sim/shader.cc b/src/gpgpu-sim/shader.cc
index b9caf18..59a2d8b 100644
--- a/src/gpgpu-sim/shader.cc
+++ b/src/gpgpu-sim/shader.cc
@@ -846,7 +846,7 @@ void scheduler_unit::cycle()
while( !warp(warp_id).waiting() && !warp(warp_id).ibuffer_empty() && (checked < max_issue) && (checked <= issued) && (issued < max_issue) ) {
const warp_inst_t *pI = warp(warp_id).ibuffer_next_inst();
//Jin: handle cdp latency;
- if(pI->m_is_cdp && warp(warp_id).m_cdp_latency > 0) {
+ if(pI && pI->m_is_cdp && warp(warp_id).m_cdp_latency > 0) {
assert(warp(warp_id).m_cdp_dummy);
warp(warp_id).m_cdp_latency--;
break;