What is bfloat16?

A 16-bit floating-point format with 1 sign, 8 exponent and 7 significand bits. Sharing FP32's exponent width gives it a wide range, so despite low precision it is used for AI training. FP16, with 5 exponent and 10 significand bits, is more precise but has a narrow range.

Field: Computer Arithmetic

bfloat16 in the explanations

Questions that mention bfloat16 (2)

  1. What is the main reason bfloat16 is used for AI training?
  2. In mixed-precision AI training, why are master weights kept in FP32 while most computation is done in FP16 or bfloat16?

Related terms

Significand Arithmetic shift Booth's algorithm Carry-lookahead adder Carry-save adder Catastrophic cancellation Exponent field Fixed point Floating-point absorption FP8

Back to the glossary