R. N
R. N

Reputation: 759

How to fix openacc warning/error about unknown driver

I try to compile a C++ OpenACC code (unchanged) that was working before my distribution update (from Ubuntu 20 to 22). And as you could guess, this compilation is not working anymore. Therefore, I think to the problem is more a setup problem that a code problem. So now my compiler is: nvc++ 22.11-0 on Ubuntu 22.04.

The compilation returns the following error message:

nvc++-Warning-unknown driver variable assigned on the command line: /home/user/src/file.cpp
nvc++-Warning-No files to process

And unfortunately, I found nothing about this error message on the Internet nor in the compiler documentation.

The code is big and I did not manage to create a MWE from it, but simple examples from nvc++ documentation are working fine (otherwise, it would be too easy to reproduce this error...).

So if you have any idea about how to solve this error, or a comprehension of about what the message means or a test to reproduce the error, I would be glad; because now I fill like blocked in a dead-end.

Upvotes: 0

Views: 292

Answers (2)

R. N
R. N

Reputation: 759

Ok, as weird as it can seems, the problem was in the path to the file: it contained a = character.

nvc++ is disturbed by such symbol in the path to the file. Nothing to do with the drivers. A misleading error message...

Upvotes: 0

Mat Colgrove
Mat Colgrove

Reputation: 5646

I've seen this once before and it had to do with the order in which the compiler flags were listed on the command line. I don't remember the details but thought it was specific to the "-ta=tesla:managed" flag and moving this towards the beginning of the command line fixed the issue.

What command line flags are you using and what is the order in which they appear ?

The "-ta" flag is deprecated in favor of the "-gpu" flag. "-ta" is specific to OpenACC but with nvc++ now also supporting OpenMP target offload and standard language parallelism, we decided to move the GPU specific sub-options under a common flag. Hence I recommend moving from using "-ta=tesla:managed" to "-acc -gpu=managed".

Upvotes: 1

Related Questions