I’m continuing with the development I referenced in another forums post. With the help of the forums and others I’ve managed to resolve that issue.
Now I’m running into a nvlink error. I have tried to make as simple a reproduction as practical. You can find the code for the reproduction here. Simply git clone that and type make
in the directory on a linux workstation with PGI 15.10 and you should get the same error. The error I get is:
pgf95 -module build -Ibuild -acc -Minfo=acc -g t1.f90 build/bl_types.o build/bl_constants.o build/vddot.o build/idamax.o build/dscal.o build/daxpy.o build/dgefa.o build/dgesl.o build/bdf.o -o t1.exe
t1.f90:
nvlink error : Undefined reference to 'cudaMalloc' in 'build/bdf.o'
nvlink error : Undefined reference to 'cudaFree' in 'build/bdf.o'
pgacclnk: child process exit status 2: /opt/pgi/linux86-64/15.10/bin/pgnvd
Makefile:13: recipe for target 't1.exe' failed
make: *** [t1.exe] Error 2
Beyond the fact that there’s an error occurring in bdf.f90, I cannot really parse exactly what’s causing this problem. I’m using OpenACC, so I have no real explicit control over any cudaMalloc or other such calls generated by the compiler. I’m hoping someone here can assist me in locating what about bdf.f90 is causing this nvlink error. Thank you for your assistance.