The General Atomic and Molecular Electronic Structure Systems (GAMESS) program simulates molecular quantum chemistry, allowing users to calculate various molecular properties and dynamics.
Before running the NGC GAMESS container please ensure your system meets the following requirements.
NGC provides access to GAMESS containers targeting the following NVIDIA GPU architectures.
rungms
: primary GAMESS executable
The following examples demonstrate how to run the NGC GAMESS container under the supported runtimes.
To run the cc-h2co example in detached mode, execute the following command.
nvidia-docker run -v $(pwd):/results --rm nvcr.io/hpc/gamess:17.09-r2-libcchem -c "cd /workspace/examples && rungms cc-h2co.inp"
Any simulation will have the following output:
[Running input $JOB on $NCPUS node(s) with $NGPUS gpu(s)]
[Run completed]
Upon completion, a logfile will be written to /results
(container) and the present working directory $(pwd)
(host) and will contain all simulation data.
nvidia-docker run -v $(pwd):/results --rm -it nvcr.io/hpc/gamess:17.09-r2-libcchem
cd /workspace/examples
rungms cc-h2co.inp
Notes on Running Simulation
Any simulation will have the following output:
[Running input $JOB on $NCPUS node(s) with $NGPUS gpu(s)]
[Run completed]
Upon completion, a logfile will be written to /results/
(container) and the present working directory $(pwd)
(host) and will contain all simulation data.
Save the NGC GAMESS container as a local Singularity image file:
singularity build gamess_17.09-r2-libcchem.simg docker://nvcr.io/hpc/gamess:17.09-r2-libcchem
This will save the container to current working directory as gamess_17.09-r2-libcchem.simg
Once the local Singularity image has been pulled the following modes of running are supported.
To run the benchmark examples below the workspace must first be copied to your working directory, to do so execute the following command:
singularity exec --nv gamess_17.09-r2-libcchem.simg cp -r /workspace .
In order to pull NGC images with singularity
version 2.x and earlier, NGC container registry authentication credentials are required.
To set your NGC container registry authentication credentials:
$ export SINGULARITY_DOCKER_USERNAME='$oauthtoken'
$ export SINGULARITY_DOCKER_PASSWORD=<NVIDIA NGC Cloud Services API key>
More information describing how to obtain and use your NVIDIA NGC Cloud Services API key can be found here.
There is currently a bug in Singularity 3.1.x and 3.2.x causing the LD_LIBRARY_PATH
to be incorrectly set within the container environment.
As a workaround The LD_LIBRARY_PATH
must be unset before invoking Singularity:
$ LD_LIBRARY_PATH="" singularity exec ...
To run the cc-h2co example in detached mode, execute the following command.
singularity run --nv -B workspace:/workspace -B $(pwd):/results gamess_17.09-r2-libcchem.simg -c "cd /workspace/examples && rungms cc-h2co.inp"
Any simulation will have the following output:
$ [Running input $JOB on $NCPUS node(s) with $NGPUS gpu(s)]
$ [Run completed]
Upon completion, a logfile will be written to /results/
(container) and the present working directory $(pwd)
(host) and will contain all simulation data.
singularity run --nv -B workspace:/workspace -B $(pwd):/results gamess_17.09-r2-libcchem.simg
cd /workspace/examples
rungms cc-h2co.inp
Notes on Running Simulation
Any simulation will have the following output:
$ [Running input $JOB on $NCPUS node(s) with $NGPUS gpu(s)]
$ [Run completed]
Upon completion, a logfile will be written to /results
(container) and the present working directory $(pwd)-
(host) and will contain all simulation data.
You can provide your own input decks by mapping /path/to/your_workspace
on your host machine to /workspace
in the container. See below for an example of how to do this with an interactive session.
nvidia-docker run -v /path/to/your_workspace:/workspace -v /path/to/results:/results --rm -it nvcr.io/hpc/gamess_17.09-r2-libcchem
or for singularity:
singularity run --nv -B /path/to/your_workspace:/workspace -B /path/to/results:/results gamess_17.09-r2-libcchem.simg
The run-script assumes the file structure below for your own jobs:
/path/to/your_workspace
scratch/
restart/
your_input.inp
To run a job using your own data, you’ll have to navigate to /path/to/your_workspace
before running rungms. See below.
cd /workspace
rungms your_input.inp