building cp2k 4.1 on a cray with cuda: DBCSR issues

Ada Sedova ada.a.... at gmail.com
Thu Sep 7 20:46:15 UTC 2017


Hi all,

I have been having some trouble getting cp2k 4.1 to build on a cray HPC 
system using cuda and cudatoolkit 7.5. I was wondering if the libsmm 
library must be in place to use the DBCSR library. I am trying to see if 
the build will work without libsmm first. However, if I use -D__ACC and 
-D__DBCSR-ACC, I get the following errors right away:

...cp2k/src/dbcsr/mm/dbcsr_acc_operations.F:188.54:

      istat = libsmm_acc_transpose_cu(acc_devmem_cptr(trs_stack), &
                                                      1
Error: Type mismatch in argument 'this' at (1); passed 
TYPE(acc_devmem_type) to INTEGER(4)
.../cp2k_4_titan/cp2k_redo/cp2k/src/dbcsr/mm/dbcsr_acc_operations.F:191.54:

                                      acc_devmem_cptr(buffer), &
                                                      1
Error: Type mismatch in argument 'this' at (1); passed 
TYPE(acc_devmem_type) to INTEGER(4)
.../cp2k_4_titan/cp2k_redo/cp2k/src/dbcsr/mm/dbcsr_acc_operations.F:195.54:

                                      acc_stream_cptr(stream))
                                                      1
Error: Type mismatch in argument 'this' at (1); passed 
TYPE(acc_stream_type) to INTEGER(4)
.../cp2k_4_titan/cp2k_redo/cp2k/src/dbcsr/mm/dbcsr_acc_operations.F:188.38:

      istat = libsmm_acc_transpose_cu(acc_devmem_cptr(trs_stack), &
                                      1

And so on. If I remove the ACC and DBCSR-ACC flags, it builds, but now I 
get a bunch of warnings such as these:

.../cp2k_4_titan/cp2k_redo/cp2k/src/dbcsr/libsmm_acc/libcusmm/./kernels/cusmm_dnt_medium.h(\
304): warning: subscript out of range
          detected during instantiation of "void 
cusmm_dnt_medium<m,n,k,M,N,bsize,grouping,minblocks>(\
const int *, int, int, double *, double *, double *) [with m=9, n=9, k=32, 
M=2, N=2, bsize=96, groupin\
g=16, minblocks=12]"

Which is troubling because it seems it could lead to a seg fault, and also, 
I'm wondering why anything in .../src/dbcsr is even being touched when I 
did not use the flag. I ran make distclean between the two attempts. 

Finally, I would really like to use the DBCSR, if possible.
I'm using the gnu PrgEnv, with gnu 4.9.3, and I have fftw3.3.4 loaded, as 
well as cray libsci 16.11.1.

Thanks so much.
Ada
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cp2k.org/archives/cp2k-user/attachments/20170907/f8eb13b7/attachment.htm>


More information about the CP2K-user mailing list