Computer Arithmetic
What is the main reason bfloat16 is used for AI training?
- AIts exponent is 8 bits like FP32, so its range is wide
- BIts significand is longer than FP32's, so it is more precise
- CIt can be computed with integer arithmetic
Show answer and explanation
Answer: A. Its exponent is 8 bits like FP32, so its range is wide
bfloat16 is a 16-bit format with 1 sign, 8 exponent and 7 significand bits. Sharing FP32's exponent width gives nearly the same range, so very small or large values such as gradients during training rarely overflow or underflow, and converting FP32 models is easy. Precision is low, but training tolerates some error, and data size and arithmetic area are halved. Its significand is shorter than FP32's, and it is computed with floating-point, not integer, arithmetic.
- A. Correct. Its FP32-width exponent gives a wide range.
- B. Its significand is 7 bits, shorter than FP32's 23.
- C. It uses floating-point, not integer, arithmetic.