CUDA Visual Profiler 5.0 不会生成时间线,Eror with Cudadevicereset()

CUDA Visual Profiler 5.0 doesn't generate timeline, Eror with Cudadevicereset()

本文关键字:Eror 时间线 with Cudadevicereset Profiler Visual CUDA      更新时间:2023-10-16

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

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

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

你可以这样调用它:

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文件资源管理器查找功能在您的机器上找到该文件)