I’ve just deployed nvhpc-22.2 on a Redhat8 OS. The hardware is Zen2 cpu and A100 GPU. I’m trying to build a large fortran code based on mix parallelism MPI + OpenMP. My goal is to start whith the GPU using OpenMP directives for offloading (no offloading yet).
But I’m unable to build the CPU binary with this version of mpifort/nfvortran. I’m stuck with a strange error message that I do not understand at all at compile time for one file:
/opt/nvidia/hpc_sdk/Linux_x86_64/22.2/compilers/share/llvm/bin/opt: /tmp/nvfortranxnW3f34dyQW_.ll:102919:21: error: use of undefined value '%L.LB26_8163'
br i1 %862, label %L.LB26_8163, label %L.LB26_9035, !dbg !308090
- I’ve tried to remove the
-g option (may be the “dbg” part could be related to this option
- I’ve tried to set
-tp=zen2 to set the right cpu flavor
My main options used are:
-mp=gpu -gpu=cc80 -target=gpu -Mstandard -Mpreprocess
These are the ones I used for my smalls tests cases using OpenMP offloading before working on this large code
Thanks for your help
It’s a compiler issue though exactly what’s causing it is unclear. Are you able to provide a reproducing example that I can use to report the issue to our engineers?
Quite difficult for me as it is a very large file (near 9000 lines) with a lot of dependancies (31 fortran modules are used). Moreover:
- if I remove the last 2 subroutines, compilation is successfull
- if I remove all but the last 2 subroutines compilation is successfull too…
Could the size of the file be responsible of the problem ? I will try to split the file to go further.
It’s preferred if it can be a minimal reproducer, but not required. Do your best, but if you need to send the entire project, that’s fine.
I’m encountered the same problem like yours, either i commented the last 4 functions or all the functions in the file but last 4, it will pass the compilation. while my program is a c++ program
Do you find out anything further about this?
Do you have reproducing example you can share?