LAMMPS-17Jan2018-foss-2017a-CUDA.eb 1.64 KB
Newer Older
easybuild's avatar
fix  
easybuild committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# IT4Innovations 2017

easyblock = 'CmdCp'

name = 'LAMMPS'
version = '17Jan2018'
versionsuffix = '-CUDA'


homepage = 'http://lammps.sandia.gov'
description = """LAMMPS is a classical molecular dynamics code,
and an acronym for Large-scale Atomic/Molecular Massively Parallel Simulator.
Has potentials for solid-state materials (metals, semiconductors) and soft
matter (biomolecules, polymers) and coarse-grained or mesoscopic systems.
It can be used to model atoms or, more generically, as a parallel particle simulator at the atomic,
meso, or continuum scale.
"""

19
toolchain = {'name': 'foss', 'version': '2017a'}
easybuild's avatar
fix  
easybuild committed
20
21
22
23

source_urls = ['https://github.com/lammps/lammps/archive']
sources = ['patch_17Jan2018.tar.gz']

24
25
26
27
patches = [
   'LAMMPS-Makefile.kokkos_cuda_mpi.patch',
]

easybuild's avatar
fix  
easybuild committed
28
29
30
31
32
33
34
dependencies = [
    ('tbb', '2017.6.196', '', True),
    ('CUDA', '9.0.176', '', True),
]

builddependencies = [
    ('Python', '2.7.13', '-base', True),
35
    ('CMake', '3.5.2', '', True)
easybuild's avatar
fix  
easybuild committed
36
37
38
]

commands = "cd src && make lib-gpu args='-b' && make yes-gpu && "
39
commands += "make yes-kokkos && "
40
41
commands += "make yes-user-phonon && yes-misc && "
commands += "make lib-reax args='-m mpi' && make yes-reax && "
easybuild's avatar
fix  
easybuild committed
42
43
commands += "make yes-kspace && make yes-manybody && make yes-molecule && "
commands += "make yes-qeq && make yes-rigid && make yes-user-misc && "
44
45
commands += "make yes-user-reaxc && make yes-user-omp && "
commands += "make -j 16 kokkos_cuda_mpi && mv lmp_kokkos_cuda_mpi lammps"
easybuild's avatar
fix  
easybuild committed
46
47
48
49
50
51
52
53
54
55
56
57

cmds_map = [('.*', commands)]

files_to_copy = [
        (['src/lammps'], 'bin'),
]

sanity_check_paths = {
    'files': ['bin/lammps'],
    'dirs': [''],
}

58
59
modluafooter = 'add_property("arch","gpu")'

easybuild's avatar
fix  
easybuild committed
60
moduleclass = 'chem'