05e9773741
- `remove_container_after_exit` is now defaulted enabled - Move to CentOS-HPC 7.3 for ib recipes |
||
---|---|---|
.. | ||
config | ||
docker | ||
README.md |
README.md
OpenFOAM-TCP-OpenMPI
This recipe shows how to run OpenFOAM on Linux using OpenMPI over TCP in an Azure Batch compute pool. Execution of this distributed workload requires the use of multi-instance tasks.
Configuration
Please see refer to this set of sample configuration files for this recipe.
Pool Configuration
The pool configuration should enable the following properties:
inter_node_communication_enabled
must be set totrue
max_tasks_per_node
must be set to 1 or omitted
Global Configuration
The global configuration should set the following properties:
docker_images
array must have a reference to a valid OpenFOAM image that can be run with MPI in a Docker container context. This can bealfpark/openfoam:4.0-gcc-openmpi
oralfpark/openfoam:v1606plus-gcc-openmpi
which are published on Docker Hub.docker_volumes
must be populated with the following:shared_data_volumes
should contain an Azure File Docker volume driver, a GlusterFS share or a manually configured NFS share. Batch Shipyard has automatic support for setting up Azure File Docker Volumes and GlusterFS, please refer to the Batch Shipyard Configuration doc.
Jobs Configuration
The jobs configuration should set the following properties within the tasks
array which should have a task definition containing:
image
should be the name of the Docker image for this container invocation. For this example, this should bealfpark/openfoam:4.0-gcc-openmpi
.command
should contain thempirun
command. If using the samplerun_sample.sh
script then the command should be simply:/opt/OpenFOAM/run_sample.sh
shared_data_volumes
should have a valid volume name as defined in the global configuration file. Please see the previous section for details.multi_instance
property must be definednum_instances
should be set topool_specification_vm_count_dedicated
,pool_vm_count_low_priority
,pool_current_dedicated
, orpool_current_low_priority
coordination_command
should be unset ornull
resource_files
array can be empty
Dockerfile and supplementary files
The Dockerfile
for the Docker image can be found here. Please
note that you must agree with the
OpenFOAM license before using this Docker
image.