Docker images and NERSC's Shifter
The PETSc and FEniCS Dockerfiles and linked images here might be of interest to anyone running at an HPC facility that supports NERSC's Shifter. https://github.com/jedbrown/jedbrown-dockerfiles IMO, Shifter is far superior to any other HPC deployment mechanism and really should be supported everywhere. Using SLURM, it boils down to running (once) shifterimg pull docker:jedbrown/petsc:latest then sbatch --image docker:jedbrown/petsc:latest ... with srun -n 64 shifter ./your-petsc-app No need to futz with HPC build environments, modules, etc. You can build in the Shifter environment on a login node (see README). If you must use Python or other shared libraries, performance at scale is better (https://docs.nersc.gov/development/shifter/overview/) than any other low-hassle Python deployment technique. Comments welcome. I think we should consider automating the publishing of nightly updates for 'maint' and 'master', perhaps with a few common build configurations (int64, etc.). You'll notice that the Dockerfiles have some manual repairs for overzealous RPATH. We should have a configure option to avoid RPATH, and perhaps default to not using RPATH for any paths that don't need it (i.e., those that are already managed by the system ldconfig).
participants (1)
-
Jed Brown