larcv2-singularity
This repo is forked from the Deep Learn Physics larcv2-singularity repo. That repo is focused on ubuntu images, here most images are available on top of centos7 instead and designed for an HPC environment.
Singularity build scripts for singularity hub. You can learn about Singularity in our wiki or official doc.
For more fun things to do, you can read our wiki.
What's in the build?
All builds are based on Centos7 with some highlighted packages below
- Python packages:
pipnumpyscipyscikitopencv-pythonh5pytablespandasmatplotlibipythonjupyter notebookpyyamlzmq - Development kit:
g++/gcclibqt4-devpython-devcython - Utility kit :
gitwgetemacsvimasciinema
For the cuda images: cuda-9.0 cudnn-7
We build 3 flavors of image:
- CUDA - bootstrapped from nvidia docker files
- CPU - basic CPU implementations
- MKL-DNN CPU - optimized images for KNL nodes with MKL-DNN
For each flavor of images, there can be (but is not always) a tensorflow or a pytorch build. Both are kept to the latest versions. Pytorch typically comes with the tools needed for Submanifold Sparse Convolutions.
We build 3 types of images for each flavor/framework combination.
-
Base image
-
Core development tools (including upgraded gcc) as well as the basic framework (pytorch/tensorflow) with support for the acceleration as needed.
-
MPI image (include Base)
- Adds MPICH3.2.1, and horovod if possible (not yet working for pytorch GPU, has to be built by hand). Adds NCCL2 for GPU builgs
-
ROOT image (include MPI)
- Additional python package
ROOT
- Additional python package