My best guess is that you have a mismatch in your CUDA version. PGI 14.1 is configured to use CUDA 5.0.
Can i use cusparse.mod, which is given in the include of PGI CUDA as of 15.1, to use for PGI 14.1?
Possible provided you copy the correct module file for the CUDA version. Though not knowing the error, I don’t know if this will solve the problem.
How do you interface to cuSparse with 14.1? Did you write your own cusparse interface module?
Is there a reason why you can’t move to a later PGI version?
Is it right? I thought PGI 14.1 was configured for CUDA 6.0 or 6.5 because CUDA 6.0 or 6.5 was included while installing PGI 14.1.
Yes, it is correct. 14.1 shipped Cuda 5.0 and 5.5 with 5.0 being the default. 14.7 was the first to ship Cuda 6.0 and 14.9 was the first to ship Cuda 6.5.
Perhaps you’re using 14.10 not 14.1?
Because i can’t buy latest PGI version right now.
So i wrote my own module on a basis of PGI 14.1 for cusparse with fortran-c-bindings feature, however it doesn’t work though
Yes, writing a cuSparse module can be tricky.
I’ll have a better solution for you mid-next week once the Supercomputing 16 conference is on it’s way and our product news has been announced, but in the meantime, you should be able copy the 15.1 cuSparse module to the Cuda include directory. Just make sure the correct version is used.
Correct, 14.10 is only supports Cuda 6.0 or 6.5. Though PGI 2015 includes the cuSparse modules for these versions. For example: “$PGI/linux86-64/2015/cuda/6.5/include/cusparse.mod”
To follow-up. We just released a PGI Community Edition which is no-cost so you may consider upgrading to 16.10 using this version. 16.10 includes cusparse modules.