This repository contains a docker image to run the Shallow Water Model.
To run the model for a specific configuration, the model.namelist which contains all configuration need to be available to the model executable. This is achieved by providing the containing directory as a volume to the container. The absolute path to this directory is called ABS_CONF_PATH here. This directory must be mounted as /run inside the container.
docker run -v ABS_CONF_PATH:/run martinclaus/swmWhen running the container, the work directory will be /run and all relative paths within the model namelist will be relative to this directory.
Output must be written to some place within the /run directory to survive the lifetime of the container.
To avoid cluttering, it is recommended to delete the container automatically after finishing the model run by using the --rm flag to docker run
The model make use of shared memory parallelization (aka thread parallelism) via OpenMP.
By default, docker is not binding a container to a particular set of CPUs.
This may cause sever performance penalties, since the container might move between CPUs during runtime.
To avoid this, set the --cpuset-cpus option to a list or range of cores to be available to the container.