[CP2K:8300] Problem in Compiling CUDA Version of CP2K 4.1

Ole Schütt o... at schuett.name
Tue Oct 25 22:37:55 UTC 2016


Dear Chi-Duen,

the problem with Cuda 8.0 has been fixed in SVN revision 17473. 
Unfortunately, the issue only came to our attention shortly after the 
CP2K 4.1 release.

-Ole


On 2016-10-25 21:27, Chi-Duen Poon wrote:
> I have no problem compiling sopt and ssmp of CP2K 4.1 in CentOS 7.2.
>  However, I am getting the following error to add CUDA support.
>  CUDA is at version 8.0.
> 
> <command-line>:0:0: warning: "__GNUC_MINOR__" redefined [enabled by
> default]
> <built-in>:0:0: note: this is the location of the previous definition
> 1 error detected in the compilation of
> "/tmp/tmpxft_000031e7_00000000-5_libcusmm_part03.cpp4.ii".
> make[3]: *** [libcusmm_part03.o] Error 2
> /nas02/data/thl/packages/el7/BUILD/x86_64/cp2k-4.1/src/dbcsr/libsmm_acc/libcusmm/./kernels/cusmm_common.h(15):
> error: function "atomicAdd(double *, double)" has already been defined
> 
> /nas02/data/thl/packages/el7/BUILD/x86_64/cp2k-4.1/src/dbcsr/libsmm_acc/libcusmm/./kernels/cusmm_common.h(15):
> error: function "atomicAdd(double *, double)" has already been defined
> 
> /nas02/data/thl/packages/el7/BUILD/x86_64/cp2k-4.1/src/dbcsr/libsmm_acc/libcusmm/./kernels/cusmm_common.h(15):
> error: function "atomicAdd(double *, double)" has already been defined
> 
> 1 error detected in the compilation of
> "/tmp/tmpxft_0000321b_00000000-5_libcusmm_part05.cpp4.ii".
> make[3]: *** [libcusmm_part05.o] Error 2
> 1 error detected in the compilation of
> "/tmp/tmpxft_000031fc_00000000-5_libcusmm_part04.cpp4.ii".
> make[3]: *** [libcusmm_part04.o] Error 2
> 1 error detected in the compilation of
> "/tmp/tmpxft_00003223_00000000-5_libcusmm_part06.cpp4.ii".
> make[3]: *** [libcusmm_part06.o] Error 2
> make[2]: *** [all] Error 2
> make[1]: *** [ssmp] Error 2
> make: *** [all] Error 2
> 
> The arch file has the following listing.
> 
> CC          = gcc
> CXX         = g++
> CPP         =
> AR          = ar -r
> FC          = gfortran
> LD          = gfortran
> #
> DFLAGS      = -D__ACC -D__DBCSR_ACC -D__PW_CUDA  -D__LIBXSMM
>  -D__FFTW3  -D__LIBINT -D__LIBINT_MAX_AM=6 -D__LIBDERIV_MAX_AM1=5
> -D__LIBXC  
> #
> WFLAGS      = -Werror=aliasing -Werror=ampersand
> -Werror=c-binding-type -Werror=intrinsic-shadow -Werror=intrinsics-std
> -Werror=line-truncation -Werror=tabs -Werror=realloc-lhs-all
> -Werror=target-lifetime -Werror=underflow
> -Werror=unused-but-set-variable -Werror=unused-variable
> -Werror=unused-dummy-argument -Werror=conversion -Werror=uninitialized
> -Wno-maybe-uninitialized  
> #
> FCDEBFLAGS  = -ffree-form -std=f2003 -fimplicit-none 
> CFLAGS      = -march=native -fno-omit-frame-pointer -g  -O3
> -funroll-loops -ffast-math $(PROFOPT) -fopenmp $(DFLAGS)
> FCFLAGS     = -march=native -fno-omit-frame-pointer -g  -O3
> -funroll-loops -ffast-math $(PROFOPT) -fopenmp $(FCDEBFLAGS) $(WFLAGS)
> $(DFLAGS) -I'/usr/lib64/gfortran/modules'
> #
> LDFLAGS     = $(FCFLAGS) -Wl,--enable-new-dtags
> CUDAPATH    = /usr/local/cuda/lib64/
> LIBS        = -lxsmmf -lxsmm -lxcf90 -lxc -lderiv -lint -lfftw3
> -lfftw3_omp -lopenblaso -lstdc++ $(CUDAPATH)/libcudart.so
> $(CUDAPATH)/libcufft.so $(CUDAPATH)/libcublas.so -lrt 
> #
> NVCC        = /usr/local/cuda/bin/nvcc -D__GNUC__=4
> -D__GNUC_MINOR__=9 -Xcompiler=--std=gnu++98
> NVFLAGS     = -arch sm_35 $(DFLAGS)
> 
> Has anyone seen this before?  If you have, how would you fix the
> problem?  It looks like it has something to do with libcusmm.
> 
> CD.
> 
>  --
>  You received this message because you are subscribed to the Google
> Groups "cp2k" group.
>  To unsubscribe from this group and stop receiving emails from it,
> send an email to cp2k+uns... at googlegroups.com.
>  To post to this group, send email to cp... at googlegroups.com.
>  Visit this group at https://groups.google.com/group/cp2k [1].
>  For more options, visit https://groups.google.com/d/optout [2].
> 
> 
> Links:
> ------
> [1] https://groups.google.com/group/cp2k
> [2] https://groups.google.com/d/optout



More information about the CP2K-user mailing list