0

Running a simple application on nvidia Visual Profiler shows the error:

Encountered invalid option : --openacc-profiling
======== Use "nvprof --help" to get more information.

Any gpu applicatiion I try to profile gets the same error.

I tried to uncheck the option "Enable OpenACC profiling" and got the same error.

Versions:

nvprof --version
nvprof: NVIDIA (R) Cuda command line profiler
Copyright (c) 2013 - 2014 NVIDIA Corporation
Release version 6.5.14 (21)

And

NVIDIA Visual Profiler
Version: 6.5
Rodolfo
  • 1,091
  • 3
  • 13
  • 35
  • 2
    You may have a corrupted configuration -- a newer version of `nvvp` attempting to use an older version of `nvprof`, for example. Which version of `nvvp` are you using? Are you on linux or windows? What is the reported version of `nvprof` when you invoke it from a command line? – Robert Crovella Apr 08 '17 at 16:20
  • The `nvvp` version you are using is not version 6.5 Version 6.5 did not have a checkbox for "Enable OpenACC profiling". You have a mixed or corrupted configuration. – Robert Crovella Apr 08 '17 at 18:01
  • 1
    The "Enable OpenACC profiling" checkbox did not appear until [CUDA 8](https://devblogs.nvidia.com/parallelforall/cuda-8-features-revealed/). When you have `nvvp` open which has that OpenACC checkbox, do Help...About Visual Profiler to find out the version. – Robert Crovella Apr 08 '17 at 18:09
  • You're right @robert-crovella it looks like I have two versions of nvvp instaled 6.5 and 8.0, thank you. – Rodolfo Apr 08 '17 at 18:26

1 Answers1

2

It appears (based on comments above) that the issue here was a mixed configuration - a CUDA 8 version of nvvp (the visual profiler) calling a CUDA 6.5 version of nvprof.

The visual profiler performs some of its work by calling nvprof to do low-level profiling. As a result, it is passing command-line switches to nvprof, and so nvprof is expected to match, version-wise, the version of nvvp that is being used. If that is not the case, problems like this can occur.

The solution is to have a consistent install. It should be possible to have both CUDA 6.5 and CUDA 8 installed on the same machine, but it's necessary for the PATH and LD_LIBRARY_PATH variables to be set in such a way that the CUDA 8 version of nvvp will find/invoke the CUDA 8 version of nvprof, for example. Generally, the instructions contained in the linux install guide for setting of these variables should be sufficient, but care should be taken, for example, to be sure that there is not some previous version of nvprof that will be found due to the PATH setting when using CUDA 8. It's not possible cover all the possible ways in which this may happen, so some rudimentary linux administration skills will be necessary to ensure such a configuration is internally consistent.

Otherwise, if these skills don't exist, the linux install instructions may provide the best solution - remove all previous versions of CUDA when installing a new version. That is another possible approach which, if done correctly, should absolutely prevent a problem such as this from occurring.

Robert Crovella
  • 143,785
  • 11
  • 213
  • 257