A team is training a large image-text fusion model on NVIDIA A100 GPUs. They enable automatic mixed precision using PyTorch's built-in mixed-precision training utility. Which statement best describes why this approach accelerates training while maintaining numerical stability?
- AIt runs forward and backward passes in 16-bit floats for speed while keeping a master copy of weights in 32-bit for gradient accumulation Correct
- BIt replaces all tensor operations with integer arithmetic, removing floating-point overhead entirely
- CIt dispatches compute-intensive layers to the CPU in 64-bit precision while the GPU handles attention layers in 16-bit
- DIt quantises weights to 8-bit integers during the forward pass and dequantises them before the backward pass
Why A is correct: Tensor Core hardware on Ampere GPUs executes 16-bit matrix multiplications far faster than 32-bit, and the 32-bit master weights prevent the precision loss that would otherwise corrupt small gradient updates.
Why B is wrong: Integer arithmetic is not used; mixed precision keeps floating-point formats throughout, choosing between 16-bit and 32-bit precision per operation rather than switching to integers.
Why C is wrong: Mixed precision keeps all computation on the GPU; offloading layers to CPU would negate the speed benefit and is a separate CPU-offload technique used in memory-constrained scenarios.
Why D is wrong: 8-bit quantisation is a distinct inference-time technique; automatic mixed precision in training uses 16-bit floating-point formats, not 8-bit integers, and does not dequantise during the backward pass.