Caffe supports multiple GPU usage. This can be requested on BlueBEAR using a combination of the --nodes and --gres options to sbatch. For example, if you would like to use 2 P100 GPUs then include the following lines in your submission script:
#SBATCH --nodes 2-2
#SBATCH --gres gpu:p100:1
This will request the 2 P100 GPUs across 2 nodes (as each GPU node will only have 1 GPU each).
Caffe can be instructed to use multiple GPUs via the -gpu command line option. The option takes the ID(s) of which GPU(s) to use (as a comma-separated list) or the word all to indicate that all GPUs should be requested. For example, any one of the following is valid:
$ caffe train --solver=/path/to/solver -gpu 0
$ caffe train --solver=/path/to/solver -gpu 0,1
$ caffe train --solver=/path/to/solver -gpu all
At the time of writing, multiple GPU usage is currently limited via the C/C++ paths and is only available for training (caffe train...).