diff options
| author | Mahmoud <[email protected]> | 2019-06-24 15:31:06 -0400 |
|---|---|---|
| committer | Mahmoud <[email protected]> | 2019-06-24 15:31:06 -0400 |
| commit | 44ba06730c4e14681eb285e01930148fdd8fabbb (patch) | |
| tree | 9fb312b4ce174dfa39225dfa78c0f887444b99f9 /libcuda/cuda_runtime_api.cc | |
| parent | f23a5de2c7eec680fc8f5c6ba45c64fcd9544e65 (diff) | |
| parent | a1e2c4273542ca78098c9f4f25eebc087e0aec37 (diff) | |
Merge branch 'dev' of https://github.com/gpgpu-sim/gpgpu-sim_distribution into dev-private
Diffstat (limited to 'libcuda/cuda_runtime_api.cc')
| -rw-r--r-- | libcuda/cuda_runtime_api.cc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libcuda/cuda_runtime_api.cc b/libcuda/cuda_runtime_api.cc index 97396ac..c70a570 100644 --- a/libcuda/cuda_runtime_api.cc +++ b/libcuda/cuda_runtime_api.cc @@ -1501,6 +1501,17 @@ __host__ cudaError_t CUDARTAPI cudaLaunch( const char *hostFun ) sscanf(mode,"%u", &g_ptx_sim_mode); gpgpusim_ptx_assert( !g_cuda_launch_stack.empty(), "empty launch stack" ); kernel_config config = g_cuda_launch_stack.back(); + { + dim3 gridDim = config.grid_dim(); + dim3 blockDim = config.block_dim(); + if (gridDim.x * gridDim.y * gridDim.z == 0 || blockDim.x * blockDim.y * blockDim.z == 0) + { + //can't launch + printf("can't launch a empty kernel\n"); + g_cuda_launch_stack.pop_back(); + return g_last_cudaError = cudaErrorInvalidConfiguration; + } + } struct CUstream_st *stream = config.get_stream(); if(g_stream_manager->is_blocking()) stream = 0; |
