NVIDIA Nsight 警告:OpenACC 注入初始化失败。 PGI 运行时版本是不是大于 15.7?

Posted

技术标签:

【中文标题】NVIDIA Nsight 警告:OpenACC 注入初始化失败。 PGI 运行时版本是不是大于 15.7?【英文标题】:NVIDIA Nsight waring: OpenACC injection initialization failed. Is the PGI runtime version greater than 15.7?NVIDIA Nsight 警告:OpenACC 注入初始化失败。 PGI 运行时版本是否大于 15.7? 【发布时间】:2021-01-11 14:33:50 【问题描述】:

我正在尝试在我的 Ubuntu 18.04 上使用 OpenACC 指令加速我的 Fortran 2003 程序。配备 Nvidia GeForce RTX 2070 卡的工作站。为此,我安装了 Nvidia HPC-SDK 版本 20.7,它应该附带我需要的编译器(来自 Portland Group 和 Nvidia 的 Fortran 2003(两者都是版本 20.7-0))以及分析器(nvprof 和 Nvidia Nsight Sytems (2020.3.3))。 1))。

在安装后出现一些小故障后,主要是在 Robert Cravella (https://***.com/users/1695960/robert-crovella) 和 Mat Colgrove (https://***.com/users/3204484/mat-colgrove) 的帮助下,我设法让事情顺利进行,这让我非常高兴。

我的工作流程如下所示:

编译我的程序:

pgfortran -acc -Minfo=accel -o my_program ./my_program.f90

我通过分析器运行它:

nsys profile ./my_program

然后用File -> Open导入nsight-sys并选择report1.qdrep

我相信这是一个合适的工作流程。但是,在打开报告文件时,nsight-sys 给了我警告:“OpenACC 注入初始化失败。PGI 运行时版本是否大于 15.7?”这很不幸,因为我使用 OpenACC 来加速我的程序。

我不太确定 PGI 运行时是什么,也不知道如何检查或更改它?我认为它与 Portland Group(编译器)有关,但我使用的是 Nvidia 的 HPC-SDK 随附的套件编译器,因此我不希望与同一软件包中随附的分析器工具不兼容。

是否可以选择或完全可以更新 PGI 运行时的东西?

请给点建议?

干杯

【问题讨论】:

【参考方案1】:

与您之前的帖子相同的答案。 Nsight-Systems 版本 2020.3 存在一个已知问题,在分析 OpenACC 时有时可能会导致注入错误。有人告诉我,这已在 2020.4 版本中修复,因此解决方法是下载并安装 2020.4 或使用之前的版本。

https://developer.nvidia.com/nsight-systems

2020.3 版是我们随 NVHPC 20.7 SDK 一起提供的版本。我不确定我们是否有足够的时间在即将发布的 20.9 版本中更新到 2020.4,但如果没有,我们将在以后的版本中捆绑它。

【讨论】:

【参考方案2】:

谢谢马特,

与此同时,我设法让一切正常运行。我做了如下:

    首先安装了 CUDA 工具包,它附带了我的 Nvidia RTX 2070 卡的最新驱动程序,准确地说是 11.1。它需要重新启动,但没关系。为了使 CUDA 工具包正常工作,我必须将 LD_LIBRARY_PATH 设置为其库。

    然后我安装了 Fortran 2003 编译器所需的 Nvidia HPC-SDK。 HPC-SDK 是为 CUDA 11.0 版本构建的,并带有自己的库,LD_LIBRARY_PATH 应该指向不同于 CUDA 工具包的库。

    但是,我保留了 LD_LIBRARY_PATH 以指向 CUDA 工具包,然后编译器和分析器完美协调工作:-)

再次感谢,你和罗伯特帮助我把事情办好。

【讨论】:

以上是关于NVIDIA Nsight 警告:OpenACC 注入初始化失败。 PGI 运行时版本是不是大于 15.7?的主要内容,如果未能解决你的问题,请参考以下文章

Nvidia Nsight - 如何连接到本地主机?

NSight (NVIDIA) 无法在 Visual Studio 中使用“暂停和捕获帧”功能正常工作

Nvidia Nsight 与 localhost 的连接失败

NVIDIA Parallel Nsight 和 OpenCL

如何测量 NVIDIA nsight 系统中复制的数据量?

NVIDIA Nsight Systems CLI 未获取内存统计信息