Link to the application: https://github.com/hep-lbdl/CaloGAN
References:
-
Get the SBI-FAIR repository
git clone --depth 1 https://github.com/DSC-SPIDAL/sbi-fair SBI_FAIR_DIR=${PWD}/sbi-fair
-
Create a directory for downloading datasets and store results
mkdir calogan cd calogan mkdir output
-
Get the datasets for training
${SBI_FAIR_DIR}/tools/scripts/load_dataset.py ${SBI_FAIR_DIR}/datasets/calogan/datasets.yaml calogan_eplus
You can use any of the following datasets:
- calogan_eplus
- calogan_gamma
- calogan_piplus
-
Create a file with parameters
# Few epochs for testing echo 'epochs: 2' > options.yaml
We will update the list of available options here, in the meantime please refer to the original repository https://github.com/hep-lbdl/CaloGAN for the list of all options.
-
Build Docker container
cd ${SBI_FAIR_DIR}/models/calogan ./build_docker.sh cd - # Go back to results directory
-
Run Training
At the moment the provided containers are likely to fail to using GPU with recent systems due to CUDA incompatibilities. We are working to fix that.
GPU_SWITCH='' # or '--runtime=nvidia --gpus all' for GPU workloads # Mount the directories with the dataset VOLUME_MOUNTS='-v ./calogan_eplus/default/eplus.hdf5:/input/train_dataset -v ./output:/output -v ./options.yaml:/input/options.yaml' docker run ${GPU_SWITCH} ${VOLUME_MOUNTS} calogan run train
-
Build Apptainer container
cd ${SBI_FAIR_DIR}/models/calogan ./build_apptainer.sh cd - # Go back to results directory
-
Run Training
At the moment the provided containers are likely to fail to using GPU with recent systems due to CUDA incompatibilities. We are working to fix that.
GPU_SWITCH='' # or '--nv' for GPU workloads # Mount the directories with the dataset VOLUME_MOUNTS='--bind ./calogan_eplus/default/eplus.hdf5:/input/train_dataset --bind ./output:/output --bind ./options.yaml:/input/options.yaml' apptainer run --app train ${GPU_SWITCH} ${VOLUME_MOUNTS} ${SBI_FAIR_DIR}/models/calogan/calogan.sif
The outputs of the run will be available in ./output
.