diff options
author | Anton | 2019-04-28 01:19:40 +0300 |
---|---|---|
committer | Anton | 2019-04-28 01:19:40 +0300 |
commit | 8bb4504281a2a590a8f1cafd939f2a9c9f69ac08 (patch) | |
tree | c1cd472b49f61e49f0e379dced1161283e4ada7d | |
parent | 249bf1d08a5a9a14f5bac93ef78072db2cf47466 (diff) | |
download | aur-8bb4504281a2a590a8f1cafd939f2a9c9f69ac08.tar.gz |
added libxc and libint support, several fixes and prettifies
-rw-r--r-- | .SRCINFO | 14 | ||||
-rw-r--r-- | PKGBUILD | 28 | ||||
-rw-r--r-- | basic.ssmp | 30 | ||||
-rw-r--r-- | basic_cuda.ssmp | 50 | ||||
-rw-r--r-- | basic_cuda_plumed.ssmp | 52 | ||||
-rw-r--r-- | basic_plumed.ssmp | 32 |
6 files changed, 151 insertions, 55 deletions
@@ -1,7 +1,7 @@ pkgbase = cp2k pkgdesc = A quantum chemistry and solid state physics software package for atomistic simulations of solid state, liquid, molecular, periodic, material, crystal, and biological systems. pkgver = 6.1.0 - pkgrel = 1 + pkgrel = 2 url = https://www.cp2k.org arch = x86_64 license = GPL2 @@ -14,6 +14,8 @@ pkgbase = cp2k depends = fftw depends = gcc-libs depends = glibc + depends = libxc>=4.0.4 + depends = libint>=1.1.4 optdepends = cuda: GPU calculations support optdepends = plumed: enhanced sampling support source = https://github.com/cp2k/cp2k/archive/v6.1.0.tar.gz @@ -21,11 +23,11 @@ pkgbase = cp2k source = basic_cuda.ssmp source = basic_plumed.ssmp source = basic_cuda_plumed.ssmp - md5sums = 071d4e0716f3b646911522f6a72aae2d - md5sums = 214e5ccb988fb2603168d3eb73e84cce - md5sums = 3aae24738a4841d5ff4f367d310edb72 - md5sums = 8affc94195f762c3b8dd5e636d6c98e2 - md5sums = 82dee44b58d0f108d736574221c59ec5 + md5sums = d7dd5f164e1e51d2dcb8c7d927b99f6ac1d0f8de4a665bd9daee1a14864c30ae + md5sums = dd91990853df6aa45719c6b991db19beb1a8dce556a25149e90bb562e7ba9ff9 + md5sums = 961ff801e2f4de80faffb84b6c46a457f2c149f32d88daeda5afd992841741b0 + md5sums = c30512606e0d3857cba7f29febebfc71ea6e658b56784ab5befb2aaeb2dfb006 + md5sums = 39e3ef335cf51d4cfe436bd4cb1d21a4b9b33af3718bcaf737fbf307c85945fb pkgname = cp2k @@ -1,11 +1,12 @@ pkgname=cp2k pkgver=6.1.0 -pkgrel=1 +pkgrel=2 pkgdesc="A quantum chemistry and solid state physics software package for atomistic simulations of solid state, liquid, molecular, periodic, material, crystal, and biological systems." arch=("x86_64") url="https://www.cp2k.org" license=("GPL2") -depends=('lapack' 'blas' 'fftw' 'gcc-libs' 'glibc') +depends=('lapack' 'blas' 'fftw' 'gcc-libs' 'glibc' + 'libxc>=4.0.4' 'libint>=1.1.4') makedepends=('gcc' 'gcc-fortran' 'python2' 'make') optdepends=('cuda: GPU calculations support' 'plumed: enhanced sampling support') @@ -14,11 +15,11 @@ source=("https://github.com/cp2k/cp2k/archive/v${pkgver}.tar.gz" "basic_cuda.ssmp" "basic_plumed.ssmp" "basic_cuda_plumed.ssmp") -md5sums=('071d4e0716f3b646911522f6a72aae2d' - '214e5ccb988fb2603168d3eb73e84cce' - '3aae24738a4841d5ff4f367d310edb72' - '8affc94195f762c3b8dd5e636d6c98e2' - '82dee44b58d0f108d736574221c59ec5') +md5sums=('d7dd5f164e1e51d2dcb8c7d927b99f6ac1d0f8de4a665bd9daee1a14864c30ae' + 'dd91990853df6aa45719c6b991db19beb1a8dce556a25149e90bb562e7ba9ff9' + '961ff801e2f4de80faffb84b6c46a457f2c149f32d88daeda5afd992841741b0' + 'c30512606e0d3857cba7f29febebfc71ea6e658b56784ab5befb2aaeb2dfb006' + '39e3ef335cf51d4cfe436bd4cb1d21a4b9b33af3718bcaf737fbf307c85945fb') _buildmode=0 _version="basic" @@ -52,11 +53,20 @@ case $_buildmode in ;; esac +prepare() { + cd $srcdir/$pkgname-$pkgver + + mv ../${_version}.ssmp arch/ + # A fix for Kepler GPUs + sed -i 's/P100/K20X/g' src/dbcsr/libsmm_acc/libcusmm/generate.py + sed -i 's/largeDB(/largeDB1(/g' src/dbcsr/libsmm_acc/libcusmm/parameters_K20X.txt + sed -i 's/triples += combinations(6,7,8)/#triples += combinations(6,7,8)/g' src/dbcsr/libsmm_acc/libcusmm/generate.py + sed -i 's/triples += combinations(13,14,25,26,32)/#triples += combinations(13,14,25,26,32)/g' src/dbcsr/libsmm_acc/libcusmm/generate.py +} build() { cd ${srcdir}/${pkgname}-${pkgver} - - cp ${srcdir}/${_version}.ssmp arch/ + cd makefiles make ARCH=$_version VERSION=ssmp } diff --git a/basic.ssmp b/basic.ssmp index 54b14313e2dd..17463a824ca0 100644 --- a/basic.ssmp +++ b/basic.ssmp @@ -1,17 +1,29 @@ CC = gcc CXX = g++ -CPP = -AR = ar -r +CPP = FC = gfortran LD = gfortran +NVCC = nvcc +# +AR = ar -r +# +DFLAGS = -D__FFTW3 \ + -D__LIBINT -D__LIBINT_MAX_AM=6 -D__LIBDERIV_MAX_AM1=5 -D__MAX_CONTR=4 \ + -D__LIBXC +# +INCS = -I/usr/include # -DFLAGS = -D__FFTW3 +OPTFLAGS = -O3 -march=native -fopenmp # -WFLAGS = -Werror=aliasing -Werror=ampersand -Werror=c-binding-type -Werror=intrinsic-shadow -Werror=intrinsics-std -Werror=line-truncation -Werror=tabs -Werror=target-lifetime -Werror=underflow -Werror=unused-but-set-variable -Werror=unused-variable -Werror=unused-dummy-argument -Werror=conversion -Werror=zerotrip -Wno-maybe-uninitialized -Wuse-without-only +CFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) +CXXFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) -std=c++11 +CPPFLAGS = +FCFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) -ffree-form -ffree-line-length-none # -FCDEBFLAGS = -ffree-form -std=f2003 -fimplicit-none -CFLAGS = -march=native -fno-omit-frame-pointer -g -O3 -funroll-loops -ffast-math $(PROFOPT) -fopenmp -I'/usr/include' $(DFLAGS) -FCFLAGS = -march=native -fno-omit-frame-pointer -g -O3 -funroll-loops -ffast-math $(PROFOPT) -fopenmp -I'/usr/include' $(FCDEBFLAGS) $(WFLAGS) $(DFLAGS) +LDFLAGS = $(FCFLAGS) # -LDFLAGS = $(FCFLAGS) -llapack -lblas -Wl,--enable-new-dtags -L'/usr/lib' -Wl,-rpath='/usr/lib' -LIBS = -lfftw3 -lfftw3_omp -lstdc++ +LIBS = -lblas -llapack \ + -lfftw3 -lfftw3_threads \ + /usr/lib/libderiv.a \ + /usr/lib/libint.a \ + -lstdc++ -lpthread -lm -ldl -lz diff --git a/basic_cuda.ssmp b/basic_cuda.ssmp index b6bbca5e87a5..5c02a9600983 100644 --- a/basic_cuda.ssmp +++ b/basic_cuda.ssmp @@ -1,20 +1,48 @@ CC = gcc CXX = g++ -CPP = -AR = ar -r +CPP = FC = gfortran LD = gfortran +NVCC = nvcc +# +GPUVER = K20X +# +AR = ar -r +# +DFLAGS = -D__FFTW3 \ + -D__LIBINT -D__LIBINT_MAX_AM=6 -D__LIBDERIV_MAX_AM1=5 -D__MAX_CONTR=4 \ + -D__LIBXC \ + -D__ACC -D__DBCSR_ACC -D__PW_CUDA # -DFLAGS = -D__FFTW3 -D__ACC -D__DBCSR_ACC -D__PW_CUDA +INCS = -I/usr/include \ + -I/opt/cuda/include # -WFLAGS = -Werror=aliasing -Werror=ampersand -Werror=c-binding-type -Werror=intrinsic-shadow -Werror=intrinsics-std -Werror=line-truncation -Werror=tabs -Werror=target-lifetime -Werror=underflow -Werror=unused-but-set-variable -Werror=unused-variable -Werror=unused-dummy-argument -Werror=conversion -Werror=zerotrip -Wno-maybe-uninitialized -Wuse-without-only +OPTFLAGS = -O3 -march=native -fopenmp # -FCDEBFLAGS = -ffree-form -std=f2003 -fimplicit-none -CFLAGS = -march=native -fno-omit-frame-pointer -g -O3 -funroll-loops -ffast-math $(PROFOPT) -fopenmp -I'/usr/include' $(DFLAGS) -FCFLAGS = -march=native -fno-omit-frame-pointer -g -O3 -funroll-loops -ffast-math $(PROFOPT) -fopenmp -I'/usr/include' $(FCDEBFLAGS) $(WFLAGS) $(DFLAGS) +CFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) +CXXFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) -std=c++11 +CPPFLAGS = +FCFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) -ffree-form -ffree-line-length-none +NVFLAGS = $(DFLAGS) -O3 -Xcompiler="-fopenmp" \ + -gencode arch=compute_30,code=sm_30 \ + -gencode arch=compute_32,code=sm_32 \ + -gencode arch=compute_35,code=sm_35 \ + -gencode arch=compute_50,code=sm_50 \ + -gencode arch=compute_52,code=sm_52 \ + -gencode arch=compute_53,code=sm_53 \ + -gencode arch=compute_60,code=sm_60 \ + -gencode arch=compute_61,code=sm_61 \ + -gencode arch=compute_62,code=sm_62 \ + -gencode arch=compute_70,code=sm_70 \ + -gencode arch=compute_72,code=sm_72 \ + -gencode arch=compute_75,code=sm_75 # -LDFLAGS = $(FCFLAGS) -llapack -lblas -Wl,--enable-new-dtags -L'/usr/lib' -Wl,-rpath='/usr/lib' -L'/opt/cuda/lib' -LIBS = -lfftw3 -lfftw3_omp -lstdc++ -lcudart -lcublas -lcufft -lnvrtc -lrt +LDFLAGS = $(FCFLAGS) # -NVCC = nvcc -Xcompiler=--std=c++11 -NVFLAGS = -gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_53,code=sm_53 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_61,code=sm_61 -gencode arch=compute_62,code=sm_62 -gencode arch=compute_70,code=sm_70 -gencode arch=compute_72,code=sm_72 -gencode arch=compute_75,code=sm_75 $(DFLAGS) +LIBS = -L/opt/cuda/lib64 -lcudart -lcublas -lcufft -lrt -lnvrtc \ + -lblas -llapack \ + -lfftw3 -lfftw3_threads \ + /usr/lib/libderiv.a \ + /usr/lib/libint.a \ + -lxcf03 -lxc \ + -lstdc++ -lpthread -lm -ldl -lz diff --git a/basic_cuda_plumed.ssmp b/basic_cuda_plumed.ssmp index dd21a9332d6d..ad24e65ee874 100644 --- a/basic_cuda_plumed.ssmp +++ b/basic_cuda_plumed.ssmp @@ -1,22 +1,52 @@ CC = gcc CXX = g++ -CPP = -AR = ar -r +CPP = FC = gfortran LD = gfortran +NVCC = nvcc +# +GPUVER = K20X +# +AR = ar -r +# +DFLAGS = -D__FFTW3 \ + -D__LIBINT -D__LIBINT_MAX_AM=6 -D__LIBDERIV_MAX_AM1=5 -D__MAX_CONTR=4 \ + -D__LIBXC \ + -D__ACC -D__DBCSR_ACC -D__PW_CUDA \ + -D__PLUMED2 # -DFLAGS = -D__FFTW3 -D__ACC -D__DBCSR_ACC -D__PW_CUDA -D__PLUMED2 +INCS = -I/usr/include \ + -I/opt/cuda/include # -WFLAGS = -Werror=aliasing -Werror=ampersand -Werror=c-binding-type -Werror=intrinsic-shadow -Werror=intrinsics-std -Werror=line-truncation -Werror=tabs -Werror=target-lifetime -Werror=underflow -Werror=unused-but-set-variable -Werror=unused-variable -Werror=unused-dummy-argument -Werror=conversion -Werror=zerotrip -Wno-maybe-uninitialized -Wuse-without-only +OPTFLAGS = -O3 -march=native -fopenmp # -FCDEBFLAGS = -ffree-form -std=f2003 -fimplicit-none -CFLAGS = -march=native -fno-omit-frame-pointer -g -O3 -funroll-loops -ffast-math $(PROFOPT) -fopenmp -I'/usr/include' $(DFLAGS) -FCFLAGS = -march=native -fno-omit-frame-pointer -g -O3 -funroll-loops -ffast-math $(PROFOPT) -fopenmp -I'/usr/include' $(FCDEBFLAGS) $(WFLAGS) $(DFLAGS) +CFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) +CXXFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) -std=c++11 +CPPFLAGS = +FCFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) -ffree-form -ffree-line-length-none +NVFLAGS = $(DFLAGS) -O3 -Xcompiler="-fopenmp" \ + -gencode arch=compute_30,code=sm_30 \ + -gencode arch=compute_32,code=sm_32 \ + -gencode arch=compute_35,code=sm_35 \ + -gencode arch=compute_50,code=sm_50 \ + -gencode arch=compute_52,code=sm_52 \ + -gencode arch=compute_53,code=sm_53 \ + -gencode arch=compute_60,code=sm_60 \ + -gencode arch=compute_61,code=sm_61 \ + -gencode arch=compute_62,code=sm_62 \ + -gencode arch=compute_70,code=sm_70 \ + -gencode arch=compute_72,code=sm_72 \ + -gencode arch=compute_75,code=sm_75 # -LDFLAGS = $(FCFLAGS) -llapack -lblas -Wl,--enable-new-dtags -L'/usr/lib' -Wl,-rpath='/usr/lib' -L'/opt/cuda/lib' -LIBS = -lfftw3 -lfftw3_omp -lstdc++ -lcudart -lcublas -lcufft -lnvrtc -lrt -lz -ldl -lplumed +LDFLAGS = $(FCFLAGS) # -NVCC = nvcc -Xcompiler=--std=c++11 -NVFLAGS = -gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_53,code=sm_53 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_61,code=sm_61 -gencode arch=compute_62,code=sm_62 -gencode arch=compute_70,code=sm_70 -gencode arch=compute_72,code=sm_72 -gencode arch=compute_75,code=sm_75 $(DFLAGS) +LIBS = -L/opt/cuda/lib64 -lcudart -lcublas -lcufft -lrt -lnvrtc \ + -lblas -llapack \ + -lfftw3 -lfftw3_threads \ + /usr/lib/libderiv.a \ + /usr/lib/libint.a \ + -lxcf03 -lxc \ + -lplumed \ + -lstdc++ -lpthread -lm -ldl -lz # include /usr/lib/plumed/src/lib/Plumed.inc diff --git a/basic_plumed.ssmp b/basic_plumed.ssmp index fd5e6fbe7729..7efe698ff2bd 100644 --- a/basic_plumed.ssmp +++ b/basic_plumed.ssmp @@ -1,19 +1,33 @@ CC = gcc CXX = g++ -CPP = -AR = ar -r +CPP = FC = gfortran LD = gfortran +NVCC = nvcc +# +AR = ar -r +# +DFLAGS = -D__FFTW3 \ + -D__LIBINT -D__LIBINT_MAX_AM=6 -D__LIBDERIV_MAX_AM1=5 -D__MAX_CONTR=4 \ + -D__LIBXC \ + -D__PLUMED2 +# +INCS = -I/usr/include # -DFLAGS = -D__FFTW3 -D__PLUMED2 +OPTFLAGS = -O3 -march=native -fopenmp # -WFLAGS = -Werror=aliasing -Werror=ampersand -Werror=c-binding-type -Werror=intrinsic-shadow -Werror=intrinsics-std -Werror=line-truncation -Werror=tabs -Werror=target-lifetime -Werror=underflow -Werror=unused-but-set-variable -Werror=unused-variable -Werror=unused-dummy-argument -Werror=conversion -Werror=zerotrip -Wno-maybe-uninitialized -Wuse-without-only +CFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) +CXXFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) -std=c++11 +CPPFLAGS = +FCFLAGS = $(DFLAGS) $(INCS) $(OPTFLAGS) -ffree-form -ffree-line-length-none # -FCDEBFLAGS = -ffree-form -std=f2003 -fimplicit-none -CFLAGS = -march=native -fno-omit-frame-pointer -g -O3 -funroll-loops -ffast-math $(PROFOPT) -fopenmp -I'/usr/include' $(DFLAGS) -FCFLAGS = -march=native -fno-omit-frame-pointer -g -O3 -funroll-loops -ffast-math $(PROFOPT) -fopenmp -I'/usr/include' $(FCDEBFLAGS) $(WFLAGS) $(DFLAGS) +LDFLAGS = $(FCFLAGS) # -LDFLAGS = $(FCFLAGS) -llapack -lblas -Wl,--enable-new-dtags -L'/usr/lib' -Wl,-rpath='/usr/lib' -LIBS = -lfftw3 -lfftw3_omp -lstdc++ -lz -ldl -lplumed +LIBS = -lblas -llapack \ + -lfftw3 -lfftw3_threads \ + /usr/lib/libderiv.a \ + /usr/lib/libint.a \ + -lplumed \ + -lstdc++ -lpthread -lm -ldl -lz # include /usr/lib/plumed/src/lib/Plumed.inc |