I’m guessing the answer to this question will be simple, but I’m stumped. I recently got access to some K10 GPUs and so, naturally, I thought I’d recompile my code to try it out, looking at cc30. However, when I try I get (on a sample program):
Ah ha! Answering (partially) my question, I tried:
(1011) > pgfortran -Mcuda=4.2,cc30,ptxinfo matmul.CUF
ptxas info : Compiling entry function 'mmul_kernel' for 'sm_30'
ptxas info : Function properties for mmul_kernel
0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info : Used 21 registers, 2048+0 bytes smem, 356 bytes cmem
Since I’m using PGI 12.8, CUDA 4.1 is the default and since CUDA 4.1 doesn’t handle CC 3.0…boom.
Now I’m a bit confused by:
(1012) > pgfortran -Mcuda=5.0,cc30,ptxinfo matmul.CUF
pgfortran-Error-CUDA version 5.0 is not available in this installation
since the ‘-Mcuda=help’ output above says it’s a viable option and the node has the CUDA 5 driver (as pgaccelinfo says). Did I ask for the wrong driver? (I know CUDA is touchy about exact driver versions.)
CC3.x and CUDA 5 support will be available in the 13.0 release due out shortly. For testing purposes our rcfiles (and thus the help messages) got updated early. Publicly though, these features aren’t available in 12.8.
No worries. I figured that was the reason, but we’ve been doing lots of OS, etc. changes here and I wanted to make sure something didn’t get broken in the change (i.e., we need to re-install PGI to get some autodetection for setup to work).