AI Courseware Alignment Issues Resolved
June 14, 2025Learn and Integrate: Azure and AI Web Development
June 15, 2025We have been showing in earlier blogs how to use EESSI for getting access to highly optimized applications for different cpu architectures, e.g.: Accessing the EESSI Common Stack of Scientific Software using Azure HPC-on-demand | Microsoft Community Hub. Over the last few months, we have been working with the EESSI team and Inuit to extend the EESSI software stack and to make the use of optimized codes for Nvidia gpu’s as simple.
The EESSI install script below takes care of installing cvmfs and configuration of the software.eessi.io repository. Additionally, it will create a common /opt/eessi/nvidia directory, where links to compatible local drivers and CUDA installation are made. This will allow CUDA compiled software to interact with the Nvidia gpu. The below script needs to be run as root, e.g. during start-up of the vm:
yum install -y https://ecsft.cern.ch/dist/cvmfs/cvmfs-release/cvmfs-release-latest.noarch.rpm
yum install -y cvmfs
yum install -y https://github.com/EESSI/filesystem-layer/releases/download/latest/cvmfs-config-eessi-latest.noarch.rpm
bash -c “echo ‘CVMFS_CLIENT_PROFILE=”single”‘ > /etc/cvmfs/default.local”
bash -c “echo ‘CVMFS_QUOTA_LIMIT=10000’ >> /etc/cvmfs/default.local”
cvmfs_config setup
/cvmfs/software.eessi.io/versions/2023.06/scripts/gpu_support/nvidia/link_nvidia_host_libraries.sh
Once the vm is prepared, a user can access the EESSI applications by running the source command; after this, not only the optimized cpu-architecture modules are loaded, but also the gpu enabled applications, see below:
$> source /cvmfs/software.eessi.io/versions/2023.06/init/lmod/bash
$> module avail
As can be seen, GROMACS (https://www.gromacs.org/) is one of the available software packages.
Now it is time to run a model, Carsten Kutzner at the Max Planck Institute provides a set of GROMACS benchmarks that are extremely useful for validation: https://www.mpinat.mpg.de/grubmueller/bench
$> ml avail GROMACS
$> ml load GROMACS/2024.4-foss-2023b-CUDA-12.4.0
$> wget https://www.mpinat.mpg.de/benchPEP-h; unzip benchPEP-h
$> gmx mdrun -s benchPEP-h.tpr -maxh 0.50 -resethway -noconfout -nsteps 100000 -g logfile -pme gpu -update gpu -bonded gpu
During the run, nvidia-smi will show that the gpu is fully utilized:
I hope this shows how accessible Nvidia gpu’s have become for running scientific codes through the use of the EESSI software stack. As this blog is written, only a few combinations of cpu-gpu are fully supported, demonstrating the zen3 + cc80 of the NCas_A100_v4 in this blog.
Some more info can be found at the EESSI blog: GPU Support in EESSI: From Zero to Science in Seconds – European Environment for Scientific Software Installations (EESSI)