I am using HPC SDK 20.9 compiling code with NVFORTRAN. I am getting the following error:
NVFORTRAN-S-0155-Compiler failed to translate accelerator region (see -Minfo messages): Unknown variable reference (mycode.for: 2919)
ludcmp:
2903, Generating acc routine seq
Generating Tesla code
NVFORTRAN-F-0704-Compilation aborted due to previous errors. (mycode.for)
NVFORTRAN/x86-64 Linux 20.9-0: compilation aborted
where line 2918/2919 is:
d=1.
do 12 i=1,n
I was able to compile the code a few weeks ago, so I am not sure why I am getting this error now.
Unfortunately, this is a very generic error so is difficult to tell what’s going on. Can you provide minimal reproducing example which recreates the error so I can investigate?
This error only occurs when I try to run my code with GPU. If I run it with CPU, it runs fine, just slower. I think it is within an OpenACC loop, do I need to add a path to the library? I added a path to openmpi and cuda, but not openacc.
Could it be the newer version of HPC SDK would work?
This error only occurs when I try to run my code with GPU. If I run it with CPU, it runs fine, just slower. I think it is within an OpenACC loop, do I need to add a path to the library?
It’s definitely a compiler issue with the OpenACC code generation where it’s loosing track of some variable, but it’s very generic and there’s not enough info to help determine what’s causing the issue.
Also, there’s no library so no path to add.
Could it be the newer version of HPC SDK would work?
Possibly? If someone else reported a similar issue or if we found it internally, we could have fixed it already. Though without a reproducer, I can’t be sure.
Thanks for the reply. I tried updating to the newest version and now I get a different error:
NVFORTRAN-F-0004-Unable to open MODULE file openacc_cublas.mod (mycode.for: 3763)
I traced the file to the compilers/include/ folder. I tried including that path in the .bashrc, but that didn’t do it. Is there something else I should do?
Unfortunately, cuBLAS deprecated support for calling BLAS routines from device code and removed this support in recent CUDA versions. Hence, the device side interface module, openacc_cublas, is no longer available.
To help, we did add some support for using the matmul intrinsic in device code so you assuming you’re just using GEMM, you might be able to use matmul instead. The caveat being we don’t support integer data types, and we don’t support noncontiguous leading dimensions. We do support matmul(transpose(a),b) without a temp.
Hello,
I am using HPC SDK 22.7 compiling code with NVFORTRAN, I am getting the following error:
senl@senl-computer:~/wepcuda/cudadaima$ make
nvfortran -Mcuda -c init_Weplspace.f90 -o init_Weplspace.o
NVFORTRAN-S-0155-sum is use associated and cannot be redeclared (init_Weplspace.f90: 5130)
0 inform, 0 warnings, 1 severes, 0 fatal for reads_sediment_para
make: *** [Makefile:40:init_Weplspace.o] error 2
Hi Mat,
I encountered an nvfortran error:nvfortran-f-0155-compiler failed to translate accelerator region (see-minfo message):device compiler exited with error status code,can you help me?
Hi eb1064,
I encountered an nvfortran error:nvfortran-f-0155-compiler failed to translate accelerator region (see-minfo message):device compiler exited with error status code,can you help me?