This repository contains all necessary resources to participate in the 2024 SPINE workshop organized for the SBN and 2x2 ML reconstruction groups. This workshop aims to train new comers to use SPINE, our machine-learning-based particle imaging detector reconstruction chain. You can find the workshop agenda here.
For the workshop, we will use this "Docker container".
Some notes below:
- The image is fairly large (multiple GBs). Please download in advance if you are using it locally. It is used in both NVIDIA GPU and CPU running mode of our software.
- Supported GPUs include those with NVIDIA Volta (e.g. V100), Turing (e.g. RTX 2080Ti), and Ampere architectures (e.g. A100, RTX 3080). If you want an older architectures to be supported, such as Pascal, please contact Kazu.
- We assume basic knowledge about software container, in particular
Docker
. If you are learning for the first time, we recommend to use/learn aboutApptainer
(website) instead ofDocker
.- You can pull a apptainer image as follows
$ apptainer pull docker://deeplearnphysics/larcv2:ub20.04-cuda11.6-pytorch1.13-larndsim
You can now launch a shell inside the apptainer with
$ apptainer exec --bind /path/to/workshop/folder/ larcv2_ub20.04-cuda11.6-pytorch1.13-larndsim.sif bash
For nersc:
$ salloc --nodes 1 --qos shared_interactive --time 00:30:00 --constraint gpu --gpus 1 --account=dune --image=deeplearnphysics/larcv2:ub20.04-cuda11.6-pytorch1.13-larndsim shifter /bin/bash
You can also pull the docker image using docker (easier on Mac and Windows) directly with:
$ docker pull deeplearnphysics/larcv2:ub20.04-cuda11.6-pytorch1.13-larndsim
To see which images are present on your system, you can use docker images. It will look something like this:
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
deeplearnphysics/larcv2 ub20.04-cuda11.6-pytorch1.13-larndsim cd28cb3cd04b 2 months ago 20.8GB
to run a shell in your image, simply do:
$ docker run -i -t cd28cb3cd04b bash
- Ask Francois for questions or a request for a separate tutorial if interested.
-
The configuration files are packages with this repository.
-
You can find data files for the examples used in this workshop under:
- S3DF
/sdf/data/neutrino/public_html/spine_workshop/larcv/ # Example MPV/MPR LArCV files prior to reconstruction
/sdf/data/neutrino/public_html/spine_workshop/reco/ # Reconstructed HDF5 files
- NERSC
/global/cfs/cdirs/dune/users/drielsma/spine_workshop/larcv/ # Example MPV/MPR LArCV files prior to reconstruction
/global/cfs/cdirs/dune/users/drielsma/spine_workshop/reco/ # Reconstructed HDF5 files
- Public
- Small LArCV files (Day 1)
- Small corresponding reconstructed HDF5 files (Day 2)
- Medium reconstructed HDF5 files (Days 3-4)
- BNB nu + cosmics (Day 5)
- BNB nue + cosmics (Day 5)
- The network model parameters for the inference tutorial can be found at:
- S3DF
/sdf/data/neutrino/public_html/spine_workshop/weights/generic_snapshot-4999.ckpt # Generic
/sdf/data/neutrino/public_html/spine_workshop/weights/icarus_snapshot-7999.ckpt # ICARUS
/sdf/data/neutrino/public_html/spine_workshop/weights/sbnd_snapshot-1999.ckpt # SBND
/sdf/data/neutrino/public_html/spine_workshop/weights/2x2_snapshot-3999.ckpt # 2x2
- NERSC
/global/cfs/cdirs/dune/users/drielsma/spine_workshop/weights/generic_snapshot-4999.ckpt # Generic
/global/cfs/cdirs/dune/users/drielsma/spine_workshop/weights/icarus_snapshot-7999.ckpt # ICARUS
/global/cfs/cdirs/dune/users/drielsma/spine_workshop/weights/sbnd_snapshot-1999.ckpt # SBND
/global/cfs/cdirs/dune/users/drielsma/spine_workshop/weights/2x2_snapshot-3999.ckpt # 2x2
- Public
- Generic: generic_snapshot-2999.ckpt
- ICARUS: icarus_snapshot-7999.ckpt
- SBND: sbnd_snapshot-1999.ckpt
- 2x2: 2x2_snapshot-3999.ckpt
Most of the notebooks can be run strictly on CPU. The following notebooks will run significantly slower on CPU, however:
- Training/validation notebook
- Inference and HDF5 file making notebook
For all other notebooks, you can run them locally, provided that you download:
- Apptainer container
- Necessary data
- SPINE v0.1.0
To gain access to GPUs:
- Everyone participating in this workshop should have access to both S3DF or NERSC, if you do not, please reach out to Francois.
- SDF Jupyter ondemand: https://sdf.slac.stanford.edu/public/doc/#/
- S3DF Jupyter ondemand: https://s3df.slac.stanford.edu/public/doc/#/
- SBN collaborators also have access to the Wilson Cluster at FNAL, equipped with GPUs. Below is a few commands to log-in and load
Apptainer
with which you can run a container image for the workshop (see the previous section). For how-to utilize the Wilson Cluster, refer to their website as well as this and that documentation from NOvA (replacenova
withicarus
orsbnd
and most commands should just work).
$ ssh $USER@wc.fnal.gov
$ module load apptainer
$ apptainer --version
apptainer version 3.6.4