CUresult vs cudaError-如何获得可读的错误描述?

CUresult vs cudaError-如何获得可读的错误描述?,cuda,Cuda,我想获得cuInit返回的结果的可读描述。我找到的每个页面都使用cudaGetErrorString进行推荐,但这会导致错误: error: cannot convert CUresult {aka cudaError_enum} to cudaError_t {aka cudaError} for argument 1 to const char* cudaGetErrorString(cudaError_t) CUresult和cudaError之间有什么区别?我可以使用什么函数来解释前

我想获得cuInit返回的结果的可读描述。我找到的每个页面都使用cudaGetErrorString进行推荐,但这会导致错误:

error: cannot convert CUresult {aka cudaError_enum} to cudaError_t 
{aka cudaError} for argument 1 to const char* cudaGetErrorString(cudaError_t)
CUresult和cudaError之间有什么区别?我可以使用什么函数来解释前者

LIBRARY         RETURN TYPE     VALUES
CUDA Driver     CUresult        enum cudaError_enum    in cuda.h
CUDA Runtime    cudaError_t     enum cudaError         in driver_types.h
CUDA运行时提供函数cudaGetErrorString,用于将cudaError枚举值转换为字符串

CUDA驱动程序API不提供返回字符串的函数

CUresult和cudaError\t的错误名称和值不匹配


NVIDIA目前没有提供用于返回CUresult的错误字符串的库。将cuda.h中的数据转换为函数只需几分钟。

当前的驱动程序API在编写时支持将CUresult转换为其字符串表示和描述

从驱动程序API文档:

CUresult cuGetErrorName ( CUresult error, const char** pStr )
    Gets the string representation of an error code enum name. 
CUresult cuGetErrorString ( CUresult error, const char** pStr )
    Gets the string description of an error code. 

请参见下面Kratz的回答,这实际上是在最近的CUDA驱动程序版本中添加的。如果我包含
CUDA.h
编译器找不到symbol
cuGetErrorString
,您需要做些什么才能让这些函数正常工作?我正在使用CUDA 6.0,这应该足够好了,对吗?