2012-10-14 41 views
3

如果我編譯這個如何編譯cuda內核而不進行優化?

__global__ void dummy_kernel(float *a, int N, float* b, int N2){ 
    unsigned int i = blockIdx.y*blockDim.y + threadIdx.y; 
    unsigned int j = blockIdx.x*blockDim.x + threadIdx.x; 
} 

我得到這個空PTX代碼

.entry _Z9dummy_kernelPfiS_i(
.param .u64 _Z9dummy_kernelPfiS_i_param_0, 
.param .u32 _Z9dummy_kernelPfiS_i_param_1, 
.param .u64 _Z9dummy_kernelPfiS_i_param_2, 
.param .u32 _Z9dummy_kernelPfiS_i_param_3 
) 
{ 

ret; 
} 

有沒有辦法強制編譯器不會在所有優化生成PTX?

回答

4

嘗試-g -G開關 ,看看它拿出 我不知道,這將覆蓋所有可能的優化

+0

這只是工作!無論如何,'-G'標誌就足夠了。 – ahmad