Skip to content Skip to navigation

Sherlock: What's New, Containers and Deep Learning Tools

Jun 6 2016

We recently made some improvements on Sherlock that we thought were
worthy of an announcment.  So here's a quick list of the latest changes.

New software installations

The list of available software on Sherlock keeps growing at a steady
pace.  Among others, some noteworthy new modules are:
- R/3.3.0
- GCC/5.3.0
- gdrive/2.1.0 (Google Drive client)
- luarocks/2.5.3 (package manager for Lua)
- nodejs/4.4.4

Deep-learning frameworks

Sherlock now features most of the major deep-learning frameworks that
are available today.  They have all been configured and tested to take
advantage of Sherlock's GPU nodes, and the corresponding modules are
ready to be loaded.

Sherlock is one of the very few HPC resources providing that kind of
software toolset today, which makes it ideally suited for those
increasingly important and ubiquitous deep-learning workloads.

You can now use:
- Caffe (http://caffe.berkeleyvision.org)
- CNTK (https://github.com/Microsoft/CNTK)
- cuDNN v5 (https://developer.nvidia.com/cudnn)
- Keras (https://github.com/fchollet/keras)
- MXNet (https://github.com/dmlc/mxnet)
- Neon (http://neon.nervanasys.com)
- Tensorflow (https://www.tensorflow.org)
- Theano (https://pypi.python.org/pypi/Theano)
- Torch (https://github.com/soumith/cudnn.torch)


Topology aware GPU scheduling


A new job submission option (--gres-flags=enforce-binding) will benefit
GPU-enabled applications capable of peer-to-peer communication between
multiple GPUs.  With this option, Slurm will make sure that the allocated
GPUs are connected to the same PCIe root complex to maximize performance.

Default partition QOS

QOS limits are now automatically applied to partitions.  This means that
it won't be necessary to specify the QOS for the vast majority of jobs
anymore.  No more "srun -p gpu --qos gpu:, "srun -p gpu" will be
sufficient.  The previous syntax will be retained for compatibility
purposes.  Owner groups with their own QOS will also benefit from this
and won't need to specify the QOS anymore either.

...and last but not least:
Containers!

Sherlock is now one of the first clusters of its kind to offer support
for containers.  Docker-like functionality is now available by the way of
Singularity (http://singularity.lbl.gov) and the corresponding module
(singularity/2.0).  It allows the creation of containers images in a
whole variety of environments, that can then be imported and executed on
Sherlock as a dependency-free, portable and autonomous environment.
Singularity literally enables BYOE (Bring-Your-Own-Environment)
supercomputing.


We hope you'll enjoy these improvements, and that they will provide
useful benefits and allow advancing your scientific work even further.

Please rest assured that we strive to provide the best service and
support possible, and that we will continue ensure that Sherlock stays a
valuable resource for all of our users.