Caffe 1.0

Caffe is a deep learning framework made with expression, speed, and modularity in mind. It is developed by Berkeley AI Research (BAIR) and by community contributors. Yangqing Jia created the project during his PhD at UC Berkeley. Caffe is released under the BSD 2-Clause license.

Accessing the software

To load the module:

module load apps/caffe/1.0

An example command to include in your job script:

caffe time --model=<model_prototxt> --iterations 10 --gpu 0

Caffe also bundles a number of additional tools, which are accessible from the command line when the module is loaded. Run the following command to see a list of the additional tools that are available:

ls ${CAFFE_ROOT}/bin

You can then execute e.g. convert_imageset or compute_image_mean etc. directly from the prompt.

Example: Caffe Job

An example can be found at ${BB_EXAMPLES}/Caffe/ The example can be copied to a test directory and submitted to the batch system using sbatch.

$ cp -r ${BB_EXAMPLES}/Caffe ~/caffe-test
$ cd ~/caffe-test

Edit the script according to your needs, then do:

$ sbatch

Using Multiple GPUs

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...).

Accessing Previous Versions

Wherever possible, previous versions of this application will be retained for continuity, especially for research projects that require a consistent version of the software throughout the project. Such versions, however, may be unsupported by IT Services or the applications vendor, and may be withdrawn at short or no notice if they can no longer run on the cluster - for example, essential operating system upgrades may be incompatible with old versions.

At present there are no previous versions of this application on the BlueBEAR service.

Known Problems & Limitations

  • Multiple GPU usage is currently limited via the C/C++ paths and is only available for training (caffe train...).

Other Information

The Support Level for this application is An.

Visit the website for more information regarding this application.


Last modified: 19 July 2017