Configure MPI access on your deployment
All users can access MPI clusters by default. Your Domino Administrator may set theShortLived.MpiClustersEnabled feature flag to false to disable the on-demand MPI functionality. The flag is true by default.
Contact Domino Support if you are not able to access MPI On-demand functionality, as it may not be enabled for your deployment.
Create a base Open MPI cluster environment
Domino does not include an Open MPI compatible compute environment for use with the components of the cluster, by default. You can not create a cluster unless you have a compatible compute environment.When using on-demand MPI in Domino, you have one environment for the MPI cluster (cluster compute environment) and one for the workspace/job execution (compute environment). These environments must have the same version of Open MPI installed.
-
To setup base image, click Start from a custom base image and enter an image URI for a deployable MPI image.
For workloads using Horovod, Tensorflow, or Pytorch, Domino recommends basing both the cluster and compute environments on an NGC image containing Open MPI. An example is TensorFlow. The current URI is
nvcr.io/nvidia/tensorflow:22.02-tf2-py3. You can use other Open MPI images such as Horovod. For simple, CPU-only workloads not needing ML libraries, use the pre-built Domino MPI images:quay.io/domino/mpi:Mpi4.1.2-Py3.8.12. -
To enable the environment for use when creating MPI clusters from workspaces and jobs, click MPI in the Supported Clusters list.
The Automatically make compatible with Domino checkbox is removed when you click MPI in the Supported Clusters list.
- For visibility, set this attribute to the same value as any other compute environment.
- To create the environment, click Create Environment. See Manage dependencies to add packages to the environment.
Prepare your Open MPI execution compute environment
You must also configure the Open MPI compute environments for workspaces and jobs that connect to your cluster. For an Open MPI compute environment you can:- Recommended: Use the same base image as the cluster environment to create a new environment.
- Enhance the Docker Instructions section of an existing compute environment.
Create a new environment with the same image as the cluster environment:
-
For your base image, click Start from a custom base image and enter a deployable MPI image.
If you are using Horovod, Tensorflow, or Pytorch, Domino recommends basing both the cluster and compute environments on a suitable NGC image containing Open MPI. An example of this is TensorFlow. The current URI is
nvcr.io/nvidia/tensorflow:22.02-tf2-py3. For simple, CPU-only workloads not needing ML libraries, use the pre-built Domino MPI image:quay.io/domino/mpi:Mpi4.1.2-Py3.8.12. - Check Automatically make compatible with Domino unless you are using a Domino image.
- For visibility, set this attribute to the same value as any other compute environment.
- To create the environment, click Create Environment. See Manage dependencies to add packages to the environment.
Add Open MPI to an existing environment
- Open the environment and click Edit Definition.
-
Add the following instructions to the Dockerfile Instructions, editing the instructions as needed:
- Click Build.