Scalable Deep Learning on Distributed GPUs with a GPU-specialized Parameter ServerCarnegie Mellon University Parallel Data Lab Technical Report CMU-PDL-15-107. October 2015.
Henggang Cui, Gregory R. Ganger, Phillip B. Gibbons
Carnegie Mellon University
Large-scale deep learning requires huge computational resources to train a multi-layer neural network. Recent systems propose using 100s to 1000s of machines to train networks with tens of layers and billions of connections. While the computation involved can be done more efficiently on GPUs than on more traditional CPU cores, training such networks on a single GPU is too slow and training on multiple GPUs was also considered unlikely to be effective, due to data movement overheads, GPU stalls, and limited GPU memory. This paper describes a new parameter server, called GeePS, that supports scalable deep learning across GPUs distributed among multiple machines, overcoming these obstacles. We show that GeePS enables a state-of-the-art single-node GPU implementation to scale well, such as to 9.5 times the number of training images processed per second on 16 machines (relative to the original optimized single-node code). Moreover, GeePS achieves the same training throughput with four GPU machines that a state-of-the-art CPU-only system achieves with 108 machines.
KEYWORDS: Big Data infrastructure, Big Learning systems
FULL TR: pdf