new file: l/LAMMPS/LAMMPS-17Jan2018-foss-2017a-CUDA.eb

new file:   l/LAMMPS/LAMMPS-Makefile.intel_cpu_intelmpi.cuda.patch
	new file:   l/LAMMPS/LAMMPS-Makefile.kokkos_cuda_mpi.patch
	new file:   l/LAMMPS/LAMMPS-nvcc_wrapper.patch
	modified:   l/LAMMPS/log.lammps
	new file:   r/RPM/RPM-4.14.0.eb
	deleted:    l/LAMMPS/LAMMPS-17Jan2018-intel-2017a-CUDA.eb
This commit is contained in:
Lukáš Krupčík 2018-01-25 10:30:14 +01:00
parent e4a50668a5
commit 185daea86e
6 changed files with 90 additions and 5 deletions

View File

@ -16,12 +16,15 @@ It can be used to model atoms or, more generically, as a parallel particle simul
meso, or continuum scale.
"""
toolchain = {'name': 'intel', 'version': '2017a'}
toolchain = {'name': 'foss', 'version': '2017a'}
source_urls = ['https://github.com/lammps/lammps/archive']
sources = ['patch_17Jan2018.tar.gz']
patches = [
'LAMMPS-Makefile.kokkos_cuda_mpi.patch',
]
dependencies = [
('tbb', '2017.6.196', '', True),
('CUDA', '9.0.176', '', True),
@ -29,14 +32,17 @@ dependencies = [
builddependencies = [
('Python', '2.7.13', '-base', True),
('CMake', '3.5.2', '', True)
]
commands = "cd src && make lib-gpu args='-b' && make yes-gpu && "
commands += "make yes-kokkos && "
commands += "make yes-user-phonon && "
commands += "make lib-reax args='-m mpi' && make yes-reax &&"
commands += "make yes-kspace && make yes-manybody && make yes-molecule && "
commands += "make yes-qeq && make yes-rigid && make yes-user-misc && "
commands += "make yes-user-reaxc && make yes-user-omp && make yes-user-intel && "
commands += "sed -i -e 's/-no-offload/-qno-offload/g' MAKE/OPTIONS/Makefile.intel_cpu_intelmpi && "
commands += "make -j 16 intel_cpu_intelmpi && mv lmp_intel_cpu_intelmpi lammps"
commands += "make yes-user-reaxc && make yes-user-omp && "
commands += "make -j 16 kokkos_cuda_mpi && mv lmp_kokkos_cuda_mpi lammps"
cmds_map = [('.*', commands)]
@ -49,4 +55,6 @@ sanity_check_paths = {
'dirs': [''],
}
modluafooter = 'add_property("arch","gpu")'
moduleclass = 'chem'

View File

@ -0,0 +1,15 @@
--- src/MAKE/OPTIONS/Makefile.intel_cpu_intelmpi.orig 2018-01-17 21:00:48.000000000 +0100
+++ src/MAKE/OPTIONS/Makefile.intel_cpu_intelmpi 2018-01-19 10:08:34.127634601 +0100
@@ -6,6 +6,12 @@
# compiler/linker settings
# specify flags and libraries needed for your compiler
+KOKKOS_DEVICES = Cuda
+KOKKOS_ARCH = Kepler35,SNB
+KOKKOS_ABSOLUTE_PATH = $(shell cd $(KOKKOS_PATH); pwd)
+export I_MPI_CXX = $(KOKKOS_ABSOLUTE_PATH)/config/nvcc_wrapper
+export I_MPI_CC = $(KOKKOS_ABSOLUTE_PATH)/config/nvcc_wrapper
+
CC = mpiicpc
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
-qopt-zmm-usage=high

View File

@ -0,0 +1,11 @@
--- src/MAKE/OPTIONS/Makefile.kokkos_cuda_mpi.orig 2018-01-22 12:56:16.208436077 +0100
+++ src/MAKE/OPTIONS/Makefile.kokkos_cuda_mpi 2018-01-22 12:58:34.527219956 +0100
@@ -16,7 +16,7 @@
LINK = mpicxx
LINKFLAGS = -g -O3
-LIB =
+LIB = -lgfortran
SIZE = size
ARCHIVE = ar

View File

@ -0,0 +1,11 @@
--- lib/kokkos/config/nvcc_wrapper.orig 2018-01-19 10:12:08.526697304 +0100
+++ lib/kokkos/config/nvcc_wrapper 2018-01-19 10:12:20.600757161 +0100
@@ -18,7 +18,7 @@
#
# The default C++ compiler.
#
-host_compiler=${NVCC_WRAPPER_DEFAULT_COMPILER:-"g++"}
+host_compiler=${NVCC_WRAPPER_DEFAULT_COMPILER:-"icpc"}
#host_compiler="icpc"
#host_compiler="/usr/local/gcc/4.8.3/bin/g++"
#host_compiler="/usr/local/gcc/4.9.1/bin/g++"

View File

@ -0,0 +1,5 @@
LAMMPS (17 Jan 2018)
?
ERROR: Unknown command: ? (../input.cpp:246)
Last command: ?

35
r/RPM/RPM-4.14.0.eb Normal file
View File

@ -0,0 +1,35 @@
# IT4Innovations 2018
easyblock = 'ConfigureMake'
name = 'RPM'
version = '4.14.0'
homepage = 'http://rpm.org'
description = 'The RPM Package Manager (RPM) is a powerful package management system.'
toolchain = {'name': 'dummy', 'version': ''}
source_urls = ['https://github.com/rpm-software-management/rpm/archive']
sources = ['%(namelower)s-%(version)s-release.tar.gz']
dependencies = [
('zlib', '1.2.11'),
]
builddependencies = [
('Autotools', '20150215'),
('pkg-config', '0.29.2'),
]
osdependencies = [('openssl-devel', 'libssl-dev', 'libopenssl-devel')]
preconfigopts = './autogen.sh && '
configopts = '--with-crypto=openssl'
sanity_check_paths = {
'files': ['bin/curl', 'lib/libcurl.a', 'lib/libcurl.%s' % SHLIB_EXT],
'dirs': ['lib/pkgconfig'],
}
moduleclass = 'tools'