Base build environments for HPC applications organized by Compiler, MPI, and GPU platform (CMG).
228
Copyright 2021 Fluid Numerics LLC
This repository contains Dockerfile definitions for images that are used as the base build environments for modern HPC applications that need to target traditional CPU only platforms and GPU accelerated platforms from multiple vendors.
Container recipes included in this repository leverage spack environments to help keep recipes as simple as possible.
This repository is motivated by the view that modern HPC applications can be built for cpu-only (serial and parallel), gpu, and multi-gpu platforms.
For GPU platforms, hip and hipfort enable builds for AMD and Nvidia hardware. Because of this, there are a number of build environments that are needed for building modern HPC application containers that can be deployed on a variety of hardware
Build environments in this repository are organized by {compiler}/{mpi}/{platform}. For serial or single gpu builds, {mpi} is replaced with serial. {platform} always references {cpu_platform}-{gpu_platform}; if a {gpu_platform} is not targeted in the build environment, {platform}={cpu_platform}.
Currently available build environments are
gcc-10.2.0/serial/x86gcc-10.2.0/serial/x86-hccgcc-10.2.0/serial/x86-nvccgcc-10.2.0/openmpi-4.0.2/x86gcc-10.2.0/openmpi-4.0.2/x86-hccgcc-10.2.0/openmpi-4.0.2/x86-nvccPlanned build environments include
You can build Docker images using the Dockerfiles in any of the env/ subdirectories.
If you are working on Google Cloud Platform, you can use the provided cloudbuild.yaml file to build the build environments and post the resulting images to your container registry, e.g.
gcloud builds submit . --substitutions=_COMPILER=gcc-10.2.0,_MPI=serial,_PLATFORM=x86-hcc --async
We welcome contributions from you on this repository!
If you have another compiler, MPI flavor, or target platform you would like to contribute:
To obtain support, simply post a new issue to this repository.
The HigherOrderMethods organization is a (new) community driven organization started by Fluid Numerics LLC that aims to provide open-source tools for modern HPC and Scientific Computing applications. As a community organization, support of this repository depends on volunteerism from the community. Become a member of this community
Contributors to this repository contribute on a volunteer basis. We will do our best to respond to issues as they arise. Keep in mind that the open-source license applied to this repository releases Fluid Numerics LLC and HigherOrderMethods from any liability related to the usage of this code. Additionally, the license, like all open-source licenses, does not provide any guarantee of support.
Content type
Image
Digest
Size
676.6 MB
Last updated
over 5 years ago
docker pull higherordermethods/cmg-base:gcc-10.2.0-serial-x86_hdf5