checkCudaErrors没有打印错误信息
checkCudaErrors is not printing error information
我在代码中的每个CUDA调用中都包含了helper_cuda.h
和checkCudaErrors
宏。我通过以下代码强制执行了一个错误:
checkCudaErrors(cudaMalloc(&GPUCameraData, sizeof(float) /*<-- Should be HCameraData */ ));
checkCudaErrors(cudaMemcpy(GPUCameraData, CPUCameraData, sizeof(HCameraData)
, cudaMemcpyHostToDevice));
应用程序只是简单地退出,并返回错误代码1,但不会打印任何信息。如果我在第一行中断并进入第二行,我会看到helper_cuda.h
中的_cudaGetErrorEnum()
确实返回"cudaErrorInvalidValue"
,但输出中没有打印任何信息。
我使用的开发环境是Visual Studio 2013,我已经在调试和发布模式下测试了它。
注意:OpenGL和glGetError也有同样的问题。似乎任何来自不直接在我自己的文件结构中的代码的fprintf(stderr, ...);
调用都不会打印任何内容。
原因可能是您正在创建除默认C++应用程序之外的其他类型的应用程序(在您的情况下重新分级CUDA和OpenGL),即您是否将此代码编译到一个库中以用于另一个非C++项目,或是某种链接问题(您有哪种类型的项目…需要信息!)。当我将cuda代码编译到Matlab Mex文件时,我也遇到了同样的问题,该文件将使用命令"mexPrintf"而不是"checkCudaErrors"中使用的"fprintf"进行打印。您可以测试将helper_cuda.h中的打印命令从fprintf更改为一个确实打印信息的命令,以防您从程序中调用它。
相关文章:
- 提升异常的错误信息
- 我可以复制构造一个带有错误信息的提升::异常吗?
- androidndk和eclipse给出了关于c++getline()函数的不同错误信息
- 如何从lex / yacc获取更多解析错误信息
- Lua+Luabind,"runtime error"后堆栈顶部没有错误信息
- 如何使用Boost获取SyntaxError、NameError等的Python错误信息
- 用户输入数字的错误信息/向量
- 如何在MSBuild中定制c++编译器错误信息
- 程序崩溃,没有错误信息
- 在正确嵌套错误信息时遇到麻烦
- 错误信息c++
- 改进了dll丢失错误信息
- 关于隐式删除虚析构函数的错误信息是什么?
- 如何在c++中解释以下错误信息
- 如何解释显示在控制台上的c++错误信息
- 在我用c++编写的程序中显示错误信息
- visual studio中错误信息后面的消息是什么意思?
- c++汽车仪表模拟器.我一直收到这些错误信息
- Xcode 3.2断点错误信息
- 分割错误(core dumps) c++代码编译时的错误信息