Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lammps update to separate lammps + gpu and lammps + kokkos #131

Merged
merged 29 commits into from
Feb 10, 2025
Merged
Show file tree
Hide file tree
Changes from 13 commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
3a12cce
added gpu and kokkos views.
nickjbrowning Jul 17, 2024
99e4818
rename
nickjbrowning Jul 17, 2024
a1de04d
docs update
nickjbrowning Jul 17, 2024
a19a1e0
update to include 2 envs
nickjbrowning Jul 17, 2024
10ae477
docs update
nickjbrowning Jul 17, 2024
ae967e0
Merge branch 'eth-cscs:main' into lammps_update
nickjbrowning Oct 1, 2024
7e7b786
updated recipe
nickjbrowning Oct 1, 2024
efe2be8
docs update
nickjbrowning Oct 1, 2024
7088ea5
update env.yaml
nickjbrowning Nov 13, 2024
0de27f7
updates to env and docs
nickjbrowning Nov 25, 2024
bd52cfd
Merge branch 'main' into lammps_update
nickjbrowning Nov 25, 2024
a12ce66
added plumed, replica, and changed pin version.
nickjbrowning Nov 25, 2024
db6ad18
initial reframe config.
nickjbrowning Nov 25, 2024
9915e0d
Merge branch 'main' into lammps_update
nickjbrowning Nov 26, 2024
3f696e8
Merge branch 'lammps-reframe' into lammps_update
nickjbrowning Dec 5, 2024
eeaa608
merging lammps_reframe update to here.
nickjbrowning Dec 5, 2024
8d828b2
updated views
nickjbrowning Dec 5, 2024
7073df5
Update reframe.yaml
nickjbrowning Dec 10, 2024
cba48bf
Merge branch 'main' into lammps_update
nickjbrowning Dec 10, 2024
8bb3cb6
update with new recipe, removed repo.
nickjbrowning Jan 21, 2025
9e1b333
cuda_mps
nickjbrowning Jan 21, 2025
2fc6e55
extra-molecule
nickjbrowning Jan 21, 2025
2a636d6
typo.
nickjbrowning Jan 21, 2025
5eafe6b
cuda12
nickjbrowning Jan 21, 2025
e3388fe
cuda12.1
nickjbrowning Jan 21, 2025
4394b91
reframe update with run-gpu.
nickjbrowning Jan 21, 2025
443a887
updated reframe with CC
nickjbrowning Jan 21, 2025
64fe22a
Merge branch 'main' into lammps_update
nickjbrowning Jan 21, 2025
6e78e76
Update uenv-lammps.md
nickjbrowning Feb 10, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 11 additions & 3 deletions docs/uenv-lammps.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,30 @@

## Running

We provide two versions of LAMMPS, one with the kokkos package enabled, and one with the GPU packaged enabled. These can be loaded as follows:
```bash
uenv start <LAMMPS_UENV>
uenv view lammps
uenv view lammps:kokkos
```

or

```bash
uenv start <LAMMPS_UENV>
uenv view lammps:gpu
```

!!! warning
[LAMMPS] is built with GPU-aware MPI. Make sure to set `MPICH_GPU_SUPPORT_ENABLED=1` when running [LAMMPS].

## Building from source

The [LAMMPS] `uenv` provides all the dependencies required to build [LAMMPS] from source, including kokkos. You can follow these steps to build [LAMMPS] from source:
The [LAMMPS] `uenv` provides all the dependencies required to build [LAMMPS] from source. You can follow these steps to build [LAMMPS] from source:

```bash
# Start uenv and load develop view
uenv start <LAMMPS_UENV>
uenv view develop
uenv view lammps:develop-kokkos # or uenv view lammps:develop-gpu, if building using the GPU package

# cd to LAMMPS source directory
cd <PATH_TO_LAMMPS_SOURCE>
Expand Down
2 changes: 1 addition & 1 deletion recipes/lammps/2024/gh200/config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ description: lammps build targetting GH200
spack:
repo: https://github.com/spack/spack.git
commit: v0.22.0
modules: true
modules: false
56 changes: 48 additions & 8 deletions recipes/lammps/2024/gh200/environments.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
lammps:
lammps-kokkos:
compiler:
- toolchain: gcc
spec: [email protected]
Expand All @@ -11,16 +11,56 @@ lammps:
- cmake
- cuda@12
- [email protected] +wrapper +cuda cuda_arch=90
- mpi
- cray-mpich
- [email protected] +cuda cuda_arch=90 +python +kokkos
# lammps + kokkos package
- [email protected] +kokkos +cuda cuda_arch=90 +python +extra-dump +plumed +replica
variants:
- +mpi
- +cuda
- cuda_arch=90
views:
develop:
link: roots
develop-kokkos:
link: all
exclude: ["lammps"]
lammps:
link: roots
uenv:
add_compilers: true
prefix_paths:
LD_LIBRARY_PATH: [lib, lib64]
kokkos:
link: all
uenv:
add_compilers: true
prefix_paths:
LD_LIBRARY_PATH: [lib, lib64]
lammps-gpu:
compiler:
- toolchain: gcc
spec: [email protected]
mpi:
spec: cray-mpich
gpu: cuda
unify: true
specs:
- [email protected]
- cmake
- cuda@12
# lammps + GPU package, MPS enabled
- [email protected] ~kokkos +cuda cuda_arch=90 +python +extra-dump +cuda_mps +plumed +replica
variants:
- +mpi
- +cuda
- cuda_arch=90
views:
develop-gpu:
link: all
exclude: ["lammps"]
uenv:
add_compilers: true
prefix_paths:
LD_LIBRARY_PATH: [lib, lib64]
gpu:
link: all
uenv:
add_compilers: true
prefix_paths:
LD_LIBRARY_PATH: [lib, lib64]