This hands on tutorial is aimed to introduce the user in the mpi and gpu job management through the Molecular Dynamics solver called NAMD. This software scales very well and is not memory intensive. You can download and upload the hands-on files here.
For our Hands On we will equilibrate a water drop through different architectures(STD nodes and GPU node).
H2O Molecule
- Copy namd.tar.gz to your /scratch directory .
- Enter the namd_tutorial and check the files. You will see an slm file and also 3 more files into water folder (your simulation inputs).
- Open the water_std.slm file and check the SLURM directives( #SBATCH ... ).
- Modify the water_std.slm file to request 24 tasks, 3900Mb/core, reservation "curs" , and 10 min. time on standard nodes
Modify the water_std.slm file to work on $SCRATCH directory (it requieres to move inputs to $SCRATCH).
- Modify the water_std.slm file to launch namd/2.13 by mpi (srun command) using the input files provided in namd_tutorial folder.
Modify the water_std.slm file to move the output to a folder called outputs inside the original namd_tutorial folder.
- Launch the job. You can check the progress by the command “squeue”.
More specific
- Modify the water_std.slm file to run only on one node and 48 cores
GPU Version
- Now, you would to launch NAMD code on GPU (because you discovered that provides better performance). Copy namd_std.slm to namd_gpu.slm and edit it to run on one GPU. Remember that you need 24 tasks on 1 Node, the GPU partition and request a GPU as a generic resource.
Edit your “Executable” and final sections to adapt it to a threaded GPU run (not MPI).
Compare the results between architectures. Which one is faster?