Exploring the limits of Concurrency in ML Training on Google TPUs
This work addresses the problem of efficient large-scale ML training for researchers and engineers, but it is incremental as it builds on existing hardware and frameworks.
The paper tackles scaling machine learning models on Google's TPU Multipod with 4096 chips, presenting techniques like model parallelism and communication optimizations, and demonstrates record training times of 16 to 28 seconds for four MLPerf models.
Recent results in language understanding using neural networks have required training hardware of unprecedentedscale, with thousands of chips cooperating on a single training run. This paper presents techniques to scaleML models on the Google TPU Multipod, a mesh with 4096 TPU-v3 chips. We discuss model parallelism toovercome scaling limitations from the fixed batch size in data parallelism, communication/collective optimizations,distributed evaluation of training metrics, and host input processing scaling optimizations. These techniques aredemonstrated in both the TensorFlow and JAX programming frameworks. We also present performance resultsfrom the recent Google submission to the MLPerf-v0.7 benchmark contest, achieving record training times from16 to 28 seconds in four MLPerf models on the Google TPU-v3 Multipod machine.