2017-01-07 36 views
0

我得到「CudaDeviceSynchronize返回錯誤代碼75運行一些內核後」CUDA cudaDeviceSynchronize complete錯誤代碼參考?

(聽起來像一些簡單的失蹤在我的代碼)

但我沒能找到任何參考/ Q &關於該代碼和cuda-memcheck ony的主題涉及其他錯誤,而不是生成錯誤代碼75的錯誤。

我想知道是否有任何CUDA內置函數來描述此代碼?

或列出錯誤代碼的任何官方/非官方(在線)參考?

謝謝! :)

回答

0
  1. 在cuda doc中查找函數。 CudaDeviceSynchronize描述here爲:

__host__ ​ __device__ ​cudaError_t cudaDeviceSynchronize (void)

  • 所以你的錯誤代碼75是cudaError_t類型。

  • 查找cudaError_t在cuda頭文件中定義枚舉。它在include/driver_types.h。並得到了錯誤75

  • /** 
    * While executing a kernel, the device encountered an instruction 
    * which can only operate on memory locations in certain address spaces 
    * (global, shared, or local), but was supplied a memory address not 
    * belonging to an allowed address space. 
    * The context cannot be used, so it must be destroyed (and a new one should be created). 
    * All existing device memory allocations from this context are invalid 
    * and must be reconstructed if the program is to continue using CUDA. 
    */ 
    cudaErrorInvalidAddressSpace   =  75, 
    
    +0

    你剛剛得知一個人如何釣魚:)謝謝!我將一個本地聲明的非指針變量賦值給全局數組的一個元素。 – Ardeshir81