about
Training and inference of large language models using 8-bit floating point (arxiv.org)
2 points by ingve on Oct 14, 2023 | hide | past | pdf | discuss on HN

In plain words: Instead of usual 16-bit numbers, it runs language models in 8-bit by automatically rescaling each layer's weights, gradients, and outputs to avoid overflow. It trained and tested GPT- and Llama-style models from 111 million to 70 billion parameters, with the scaling rules holding throughout.

Abstract

FP8 formats are gaining popularity to boost the computational efficiency for training and inference of large deep learning models. Their main challenge is that a careful choice of scaling is needed to prevent degradation due to the reduced dynamic range compared to higher-precision formats. Although there exists ample literature about selecting such scalings for INT formats, this critical aspect has yet to be addressed for FP8. This paper presents a methodology to select the scalings for FP8 linear layers, based on dynamically updating per-tensor scales for the weights, gradients and activations. We apply this methodology to train and validate large language models of the type of GPT and Llama 2 using FP8, for model sizes ranging from 111M to 70B. To facilitate the understanding of the FP8 dynamics, our results are accompanied by plots of the per-tensor scale distribution for weights, activations and gradients during both training and inference.

Sergio P. Perez, Yan Zhang, James Briggs, Charlie Blake, Josh Levy-Kramer, Paul Balanca, Carlo Luschi, Stephen Barlow, Andrew William Fitzgibbon
arXiv:2309.17224 · cs.LG, cs.AR, cs.CL, cs.ET, cs.PF · submitted Sep 29, 2023
abstract · pdf · html

add comment on HN