Skip to content

Commit

Permalink
Merge pull request argonne-lcf#328 from cjknight/updates
Browse files Browse the repository at this point in the history
small updates: git, ss11
  • Loading branch information
cjknight authored Jan 26, 2024
2 parents 5f3ec1b + e525c89 commit ad3d2b4
Show file tree
Hide file tree
Showing 3 changed files with 49 additions and 12 deletions.
37 changes: 36 additions & 1 deletion docs/aurora/getting-started-on-aurora.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,42 @@ Host my.awesome.machine.edu
$ ssh [email protected]
```

Additional guidance on scp and transfering files to Aurora is available [here](./sunspot-to-aurora.md#Transferring-files-to-Aurora).
Additional guidance on scp and transfering files to Aurora is available and [here](./data-management/lustre/gecko.md).

## Working with Git repos

The default SSH port is currently blocked on Aurora; by default, this prevents communicate with Git remotes that are SSH URLs such as the following.

```
git clone [user@]server:project.git
```
For a workaround for GitHub, GitLab, and Bitbucket, the following can be added to your `~.ssh/config` file. This requires updating your environment with the above proxy settings.

```
Host github.com
User git
hostname ssh.github.com
Host gitlab.com
User git
hostname altssh.gitlab.com
Host bitbucket.org
User git
hostname altssh.bitbucket.org
Host github.com gitlab.com bitbucket.org
Port 443
ProxyCommand /user/bin/socat - PROXY:proxy.alcf.anl.gov:%h:%p,proxyport=3128
```

If you need to use soemthing besides your default SSH key on Aurora for authentication to GitHub in conjunction with the above SSH workaround, you may set

```
export GIT_SSH_COMMAND="ssh -i ~/.ssh/specialGitKey -F /dev/null"
```

where specialGitKey is the name of the private key in your `.ssh` directory, for which you have uploaded the public key to GitHub.

## Hardware Overview

Expand Down
22 changes: 12 additions & 10 deletions docs/polaris/applications-and-libraries/applications/lammps.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,11 @@ LAMMPS is an open-source code, which can be downloaded from the LAMMPS [website]

After LAMMPS has been downloaded and unpacked an ALCF filesystem, users should see a directory whose name is of the form `lammps-<version>`. One should then see the Makefile `lammps-<version>/src/MAKE/MACHINES/Makefile.polaris` in recent versions that can be used for compilation on Polaris. A copy of the Makefile is also available in the ALCF GettingStarted repo [here](https://github.com/argonne-lcf/GettingStarted/tree/master/Applications/Polaris/LAMMPS). For older versions of LAMMPS, you may need to take an existing Makefile (e.g. Makefile.mpi) for your specific version of LAMMPS used and edit the top portion appropratiately to create a new Makefile.polaris files.

The top portion of `Makefile.polaris_kokkos_nvidia` used to build LAMMPS with the KOKKOS package using the NVIDIA compilers is shown as an example.
The top portion of `Makefile.polaris_nvhpc_kokkos` used to build LAMMPS with the KOKKOS package using the NVIDIA compilers is shown as an example.

```
# polaris_nvidia = Flags for NVIDIA A100, NVIDIA Compiler, Cray MPICH, CUDA
# module load craype-accel-nvidia80
# make polaris_kokkos_nvidia -j 16
# polaris_nvhpc_kokkos = Flags for NVIDIA A100, NVIDIA Compiler, MPICH, CUDA
# make polaris_nvhpc_kokkos -j 16
SHELL = /bin/sh
Expand All @@ -34,30 +33,33 @@ SHELL = /bin/sh
KOKKOS_DEVICES = Cuda,OpenMP
KOKKOS_ARCH = Ampere80
KOKKOS_ABSOLUTE_PATH = $(shell cd $(KOKKOS_PATH); pwd)
KOKKOS_CUDA_OPTIONS = "enable_lambda,disable_malloc_async"
export NVCC_WRAPPER_DEFAULT_COMPILER = nvc++
CRAY_INC = $(shell CC --cray-print-opts=cflags)
CRAY_LIB = $(shell CC --cray-print-opts=libs)
#$(info CRAY_INC = ${CRAY_INC})
#$(info CRAY_LIB = ${CRAY_LIB})
CC = $(KOKKOS_ABSOLUTE_PATH)/bin/nvcc_wrapper
CCFLAGS = -g -O3 -mp -DLAMMPS_MEMALIGN=64 -DLAMMPS_BIGBIG
CCFLAGS = -g -O3 -mp -DLAMMPS_MEMALIGN=64
CCFLAGS += $(CRAY_INC)
SHFLAGS = -fPIC
DEPFLAGS = -M
LINK = $(CC)
LINKFLAGS = $(CCFLAGS)
LIB = $(CRAY_LIB)
LIB =
LIB += $(CRAY_LIB)
SIZE = size
```

With the appropriate LAMMPS Makefile in place an executable can be compiled as in the following example, which uses the NVIDIA compilers.

```
module load craype-accel-nvidia80
cd lammps-<version>/src
make yes-KOKKOS
make polaris_kokkos_nvidia -j 16
make polaris_nvhpc_kokkos -j 16
```

[//]: # (ToDo: get all LAMMPS Makefiles into repos and update links)
Expand Down Expand Up @@ -88,7 +90,7 @@ NGPUS=4
NTOTRANKS=$(( NNODES * NRANKS ))
EXE=/home/knight/bin/lammps_polaris_kokkos_nvidia
EXE=/home/knight/bin/lmp_polaris_nvhpc_kokkos
EXE_ARG="-in in.reaxc.hns -k on g ${NGPUS} -sf kk -pk kokkos neigh half neigh/qeq full newton on "
# OMP settings mostly to quiet Kokkos messages
Expand Down
2 changes: 1 addition & 1 deletion docs/polaris/hardware-overview/machine-overview.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Polaris
Polaris is a 560 node HPE Apollo 6500 Gen 10+ based system. Each node has a single 2.8 GHz AMD EPYC Milan 7543P 32 core CPU with 512 GB of DDR4 RAM and four NVIDIA A100 GPUs connected via NVLink, a pair of local 1.6TB of SSDs in RAID0 for the users use, and a pair of Slingshot network adapters. They are currently Slingshot 10, but are scheduled to be upgraded to Slingshot 11 in 2023. There are two nodes per chassis, seven chassis per rack, and 40 racks for a total of 560 nodes. More detailed specifications are as follows:
Polaris is a 560 node HPE Apollo 6500 Gen 10+ based system. Each node has a single 2.8 GHz AMD EPYC Milan 7543P 32 core CPU with 512 GB of DDR4 RAM and four NVIDIA A100 GPUs connected via NVLink, a pair of local 1.6TB of SSDs in RAID0 for the users use, and a pair of Slingshot 11 network adapters. There are two nodes per chassis, seven chassis per rack, and 40 racks for a total of 560 nodes. More detailed specifications are as follows:

## Polaris Compute Nodes
| POLARIS COMPUTE | DESCRIPTION | PER NODE | AGGREGATE |
Expand Down

0 comments on commit ad3d2b4

Please sign in to comment.