【发布时间】:2021-11-22 17:59:45
【问题描述】:
您将如何确定最适合您的推理模型的精度? BF16 和 F16 都占用两个字节,但它们使用不同的位数来表示分数和指数。
范围会有所不同,但我试图理解为什么一个人选择了一个而不是另一个。
谢谢
|--------+------+----------+----------|
| Format | Bits | Exponent | Fraction |
|--------+------+----------+----------|
| FP32 | 32 | 8 | 23 |
| FP16 | 16 | 5 | 10 |
| BF16 | 16 | 8 | 7 |
|--------+------+----------+----------|
Range
bfloat16: ~1.18e-38 … ~3.40e38 with 3 significant decimal digits.
float16: ~5.96e−8 (6.10e−5) … 65504 with 4 significant decimal digits precision.
【问题讨论】:
-
我认为float16用于gpu,而bfloat16用于训练期间的tpu mp。
-
@M.Innat Ampere GPU 支持 bfloat16:nvidia.com/content/dam/en-zz/Solutions/Data-Center/a100/pdf/…
标签: tensorflow machine-learning deep-learning pytorch half-precision-float