CUDA Visual Profiler 5.0不生成时间轴,Eud with Cudadevicereset()

时间:2014-07-15 02:22:00

标签: c++ cuda

我使用CUDA Visual Profiler来分析我的CUDA项目,但它是消息

  

“无法读取整个会话时间线。显示的时间线可能为空或不完整,因为应用程序在退出之前中止或无法刷新配置文件数据。应用程序应调用cudaDeviceReset()以确保刷新所有配置文件数据。”

如何调用cudaDeviceReset(),当我在项目结束时调用它时,VS 2012会发生错误。我需要哪些库,方法或参数?

1 个答案:

答案 0 :(得分:2)

call it like this

cudaDeviceReset();

假设您使用nvcc编译项目(即它是一个CUDA项目,在.cu文件中),则不需要任何库,方法或参数。

如果您的项目是C ++项目(.cpp文件),那么您需要添加

#include <cuda_runtime.h> 

到源代码,您需要将CUDA包含文件的相应路径添加到编译器规范中,并将CUDA库的相应路径添加到链接器规范中。通过查看一些示例项目,可以为特定的Visual Studio安装发现这些路径。

顺便说一句,visual studio 2012不是CUDA 5.0官方支持的环境。您可以通过查看文件CUDA_Toolkit_Release_Notes.pdf来发现这一点(使用Windows文件浏览器查找功能在您的计算机上找到该文件。)