2

我正在尝试使用 NVIDIA 工具扩展来使用 Visual Profiler 对 CUDA 代码执行更准确的性能评估。我正在使用 Visual Studio 2010 来开发代码。

要为此功能设置 Visual Studio 2010,我添加了

Properties -> Linker -> General -> Additional Library Directories -> $(NVTOOLSEXT_PATH)\lib\$(Platform);

Properties -> Linker -> General -> Input -> Additional Dependencies -> nvToolsExt32_1.lib;

但是,当我使用

#include <nvToolsExt>

编译器说

Error   1   error C1083: Cannot open include file: 'nvToolsExt': No such file or directory

环境变量NVTOOLSEXT_PATH设置为

NVTOOLSEXT_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\nvToolsExt\

但我的系统上不存在该目录C:\Program Files\NVIDIA GPU Computing Toolkit\nvToolsExt\,因此我认为未安装 NVIDIA 工具扩展。

我有两个问题:

1) 上述为 NVIDIA 工具扩展功能设置 Visual Studio 2010 的过程是否正确?2)如何安装工具?

提前致谢。

4

1 回答 1

7

Visual Studio 2.2 的 Nsight 用户指南 \ NVIDIA 工具扩展库\ 第 5 节。将 NVTX 添加到项目中具有以下说明:

NVTX API 由 NVIDIA Nsight “主机”安装程序(默认)安装到以下位置:

在 32 位系统上:C:\Program Files\NVIDIA GPU Computing Toolkit\nvToolsExt

在 64 位系统上:C:\Program Files (x86)\NVIDIA GPU Computing Toolkit\nvToolsExt

头文件和库文件本身(.lib、.dll)都位于此路径下。

默认情况下,NVIDIA Nsight 安装程序将设置环境变量 NVTOOLSEXT_PATH 以指向与系统位匹配的上述位置。

5.1 C++项目

为了在 Visual Studio 中使用 NVTX 支持编译您的项目,请使用以下步骤相应地设置您的项目:

  1. 打开项目属性对话框。
  2. 导航到配置 > 属性 > C/C++ > 常规。将以下路径添加到附加包含目录:$(NVTOOLSEXT_PATH)\include
  3. 导航到配置属性 > 链接器 > 常规。将以下路径添加到附加库目录:$(NVTOOLSEXT_PATH)\lib\$(Platform)
  4. 导航到配置 > 属性 > 链接器 > 输入。将 nvToolsExt32_1.lib 或 nvToolsExt64_1.lib(根据您的系统规范)添加到 Additional Dependencies。

5.2 CUDA(.cu 文件)

如果您使用 NVTX 注释 .cu 文件中的代码,还请确保设置了以下配置(这是上一节中讨论的步骤的补充):

  1. 打开项目属性对话框。导航到配置属性 > CUDA C/C++ > 通用。> 将以下路径添加到
  2. 其他包含目录:$(NVTOOLSEXT_PATH)\include

在问题中,您已跳过将 NVTX 添加到附加包含路径的步骤 5.1.2。如果没有更新的包含路径,编译器将无法找到 NvToolsExt.h。

第 5.3 节和第 5.4 节建议将 NVTX 库移动到您的源代码树中(与使用默认位置相比)并添加部署到步骤以将 DLL 复制到项目 bin 目录。

于 2013-02-06T01:09:17.640 回答