diff options
author | Viktor Drobot | 2020-11-21 21:33:49 +0300 |
---|---|---|
committer | Viktor Drobot | 2020-11-21 21:33:49 +0300 |
commit | 7afcb31a74743069432e3ccdd969dfa875b52738 (patch) | |
tree | 9b15e53d9236e81bd7a43454d0709653b8ab33b8 | |
parent | b8a3956d0d865619e30f952078255965eba13361 (diff) | |
download | aur-7afcb31a74743069432e3ccdd969dfa875b52738.tar.gz |
Add CUDA 11.1 support
-rw-r--r-- | .SRCINFO | 16 | ||||
-rw-r--r-- | PKGBUILD | 20 | ||||
-rw-r--r-- | cuda-11.1.patch | 52 |
3 files changed, 73 insertions, 15 deletions
@@ -1,7 +1,7 @@ pkgbase = pmemd pkgdesc = PMEMD module of AMBER software package pkgver = 20 - pkgrel = 5 + pkgrel = 6 url = http://ambermd.org/ arch = x86_64 license = custom @@ -28,12 +28,14 @@ pkgbase = pmemd source = pmemd.MPI source = pmemd.cuda source = pmemd.cuda.MPI - md5sums = 8c1fe81833796a9cb823019e02c522e0 - md5sums = 559d5b7b872344c268a62ebd5d33f71d - md5sums = 44632310820b4d915a169d13d6a60be2 - md5sums = 9e030fb76a31f133a59b33734e674ac1 - md5sums = eba440f07f04c80d2cb22752bea01d65 - md5sums = 14a2068da46e104553224fb523ea5bd4 + source = cuda-11.1.patch + sha256sums = b1e1f8f277c54e88abc9f590e788bbb2f7a49bcff5e8d8a6eacfaf332a4890f9 + sha256sums = a4c53639441c8cc85adee397933d07856cc4a723c82c6bea585cd76c197ead75 + sha256sums = 8bd1f818e0b55e866b906ecd497831f674b9a7b995c85899f6c4adc77a908f51 + sha256sums = d454d03f3c88efe231a2282758c0e6b655396d00af40fd4b3ecfb1d8641009b7 + sha256sums = 2a4a139923fcecbe319ae6728a860e8e64835c1dd2d9e626eb5125116a0d790c + sha256sums = df8b260dc4782a0fd0935ba1fdec8eb013b17c1082cfecff60e933a38a38d5a0 + sha256sums = b666b2f186c5fd40b0be71a52b854060deea690205dbca24606c13c97cbf07de pkgname = pmemd @@ -4,7 +4,7 @@ pkgname=pmemd pkgver=20 _toolsver=20 _gccver=9.3.0 -pkgrel=5 +pkgrel=6 pkgdesc="PMEMD module of AMBER software package" url="http://ambermd.org/" license=(custom) @@ -25,18 +25,22 @@ source=("local://AmberTools${_toolsver}.tar.bz2" "pmemd" "pmemd.MPI" "pmemd.cuda" - "pmemd.cuda.MPI") -md5sums=('8c1fe81833796a9cb823019e02c522e0' - '559d5b7b872344c268a62ebd5d33f71d' - '44632310820b4d915a169d13d6a60be2' - '9e030fb76a31f133a59b33734e674ac1' - 'eba440f07f04c80d2cb22752bea01d65' - '14a2068da46e104553224fb523ea5bd4') + "pmemd.cuda.MPI" + "cuda-11.1.patch") +sha256sums=('b1e1f8f277c54e88abc9f590e788bbb2f7a49bcff5e8d8a6eacfaf332a4890f9' + 'a4c53639441c8cc85adee397933d07856cc4a723c82c6bea585cd76c197ead75' + '8bd1f818e0b55e866b906ecd497831f674b9a7b995c85899f6c4adc77a908f51' + 'd454d03f3c88efe231a2282758c0e6b655396d00af40fd4b3ecfb1d8641009b7' + '2a4a139923fcecbe319ae6728a860e8e64835c1dd2d9e626eb5125116a0d790c' + 'df8b260dc4782a0fd0935ba1fdec8eb013b17c1082cfecff60e933a38a38d5a0' + 'b666b2f186c5fd40b0be71a52b854060deea690205dbca24606c13c97cbf07de') prepare() { cd ${srcdir}/amber${pkgver}_src ./update_amber --update + + patch -Np0 -i "${srcdir}/cuda-11.1.patch" } build() { diff --git a/cuda-11.1.patch b/cuda-11.1.patch new file mode 100644 index 000000000000..c5f68a5719ab --- /dev/null +++ b/cuda-11.1.patch @@ -0,0 +1,52 @@ +--- cmake/CudaConfig.cmake 2020-10-16 14:43:24.152111622 +0300 ++++ cmake/CudaConfig.cmake 2020-10-16 14:56:02.361337230 +0300 +@@ -17,12 +17,12 @@ + + if(CUDA) + + set(CUDA_HOST_COMPILER ${CMAKE_CXX_COMPILER}) + +- #Note at present we do not include SM3.5 or SM3.7 since they sometimes show performance +- #regressions over just using SM3.0. ++ #SM8.6 -- not currently used, but should be tested on Cuda 11.1 ++ set(SM86FLAGS -gencode arch=compute_86,code=sm_86) + #SM8.0 = A100 + set(SM80FLAGS -gencode arch=compute_80,code=sm_80) + #SM7.5 = RTX20xx, RTX Titan, T4 and Quadro RTX + set(SM75FLAGS -gencode arch=compute_60,code=sm_75) + #SM7.0 = V100 and Volta Geforce / GTX Ampere? +@@ -37,11 +37,11 @@ + set(SM53FLAGS -gencode arch=compute_53,code=sm_53) + #SM5.2 = GM200 = GTX-Titan-X, M6000 etc. + set(SM52FLAGS -gencode arch=compute_52,code=sm_52) + #SM5.0 = GM204 = GTX980, 970 etc + set(SM50FLAGS -gencode arch=compute_50,code=sm_50) +- #SM3.7 = GK210 = K80 ++ #SM3.7 = GK210 = K80 -- not currently used, since SM3.0 may be better + set(SM37FLAGS -gencode arch=compute_37,code=sm_37) + #SM3.5 = GK110 + 110B = K20, K20X, K40, GTX780, GTX-Titan, GTX-Titan-Black, GTX-Titan-Z + set(SM35FLAGS -gencode arch=compute_35,code=sm_35) + #SM3.0 = GK104 = K10, GTX680, 690 etc. + set(SM30FLAGS -gencode arch=compute_30,code=sm_30) +@@ -67,13 +67,19 @@ + elseif(${CUDA_VERSION} VERSION_EQUAL 11.0) + # Implement the standard compilation rather than a warp-synchronous one, which is deprecated as of CUDA 11 + set(SM70FLAGS -gencode arch=compute_70,code=sm_70) + set(SM75FLAGS -gencode arch=compute_75,code=sm_75) + message(STATUS "Configuring for SM3.5, SM5.0, SM5.2, SM5.3, SM6.0, SM6.1, SM7.0, SM7.5 and SM8.0") +- list(APPEND CUDA_NVCC_FLAGS ${SM35FLAGS} ${SM50FLAGS} ${SM52FLAGS} ${SM53FLAGS} ${SM60FLAGS} ${SM61FLAGS} ${SM70FLAGS} ${SM75FLAGS} ${SM80FLAGS} -Wno-deprecated-gpu-targets -Wno-deprecated-declarations) ++ list(APPEND CUDA_NVCC_FLAGS ${SM35FLAGS} ${SM50FLAGS} ${SM52FLAGS} ${SM53FLAGS} ${SM60FLAGS} ${SM61FLAGS} ${SM70FLAGS} ${SM75FLAGS} ${SM80FLAGS} -Wno-deprecated-gpu-targets -Wno-deprecated-declarations) ++ elseif(${CUDA_VERSION} VERSION_EQUAL 11.1) ++ # Implement the standard compilation rather than a warp-synchronous one, which is deprecated as of CUDA 11 ++ set(SM70FLAGS -gencode arch=compute_70,code=sm_70) ++ set(SM75FLAGS -gencode arch=compute_75,code=sm_75) ++ message(STATUS "Configuring for SM3.5, SM5.0, SM5.2, SM5.3, SM6.0, SM6.1, SM7.0, SM7.5 and SM8.6") ++ list(APPEND CUDA_NVCC_FLAGS ${SM35FLAGS} ${SM50FLAGS} ${SM52FLAGS} ${SM53FLAGS} ${SM60FLAGS} ${SM61FLAGS} ${SM70FLAGS} ${SM75FLAGS} ${SM80FLAGS} -Wno-deprecated-gpu-targets -Wno-deprecated-declarations) + else() +- message(FATAL_ERROR "Error: Unsupported CUDA version. AMBER requires CUDA version >= 7.5 and <= 11.0. ++ message(FATAL_ERROR "Error: Unsupported CUDA version. AMBER requires CUDA version >= 7.5 and <= 11.1. + Please upgrade your CUDA installation or disable building with CUDA.") + endif() + + set(CUDA_PROPAGATE_HOST_FLAGS FALSE) + |