2014-12-29 60 views

回答

1

我解釋你的問題:

有沒有辦法在一個__host__ __device__函數知道是否該代碼它被在設備上或在主機上執行?

截至今天沒有運行正式可靠招檢測到它。反正你可以使用__CUDACC__宏「專業」你的設備和/或主機代碼:

__host__ __device__ void yourfunction() { 
    #ifdef __CUDACC__ 
    // Device code branch 
    #else 
    // Host code branch 
    #endif 
} 

參考:http://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#host

+0

謝謝你,它的工作原理 – Alex