bf16 和 fp16 分别指什么

FP16 全称

FP16 = Float Point 16-bit 中文:16 位标准浮点(半精度浮点数) 代码里常写作 float16,CUDA 里别名就是 half,所以 --dtype half = float16。

完整拆分

  • FP = Floating Point(浮点)
  • 16 = 总数据位宽 16 bit 标准名称:IEEE 754 Half-precision floating-point format,业内简称 half /fp16。

两个命名来源对比

格式 全称 起名方 设计初衷
FP16(float16/half) Floating Point 16bit IEEE 标准委员会 图形渲染、早期 GPU 计算
BF16(bfloat16) Brain Floating Point 16bit Google Brain 团队 专门适配神经网络训练 & 推理

补充小知识点

  1. FP32:Floating Point 32-bit(单精度浮点)
  2. FP64:Floating Point 64-bit(双精度浮点) 所有带 FP 开头的,都是 IEEE 标准浮点格式;BF16 不属于标准 IEEE fp16,是工业改良变体。
  3. 二者字节大小一致(都是 2 字节),只是内部指数、尾数分配不一样。

一、基础定义(都是 2 字节 = 16 位浮点数,结构不一样)

1. FP16(float16,你写的 --dtype half)

  • 全称:IEEE 754 Half-Precision Float
  • 比特分配(总共 16bit)
    • 符号位:1 bit
    • 指数位:5 bit
    • 尾数位:10 bit
  • 取值范围:±65504;精度更高,小数细节更精细
  • 缺陷:指数区间小,数值稍微一大就容易溢出

2. BF16(bfloat16,Brain Float 16)

  • 谷歌 Brain 推出,为 AI 训练 / 推理设计
  • 比特分配(总共 16bit)
    • 符号位:1 bit
    • 指数位:8 bit(和 FP32 指数位一样宽)
    • 尾数位:7 bit
  • 取值范围:和 FP32 基本一致,超大数值不会溢出;尾数精度比 FP16 略低一点

直观对比表

表格

参数 FP16(half) BF16 FP32(float32)
总比特 16bit 16bit 32bit
指数位 5bit 8bit 8bit
尾数位 10bit 7bit 23bit
数值范围 小,易溢出 大,匹配 FP32 标准全范围
计算精度 更高 略低 最高
显存占用 2Byte / 参数 2Byte / 参数 4Byte / 参数

二、显存层面关键结论

FP16、BF16 单个参数都是占用 2 字节,权重文件体积、模型空载显存占用完全一模一样 你在 A100 跑 Qwen3.6-35B: BF16 裸权重 ≈70GB,FP16 裸权重依旧≈70GB,刚性显存没有任何区别。 区别只在计算过程的数值稳定性、硬件加速效率

三、硬件适配(结合你的 A100)

  1. A100(Ampere)原生硬件支持 BF16 运算单元 BF16 推理速度 ≥ FP16,NVIDIA 对 BF16 做了深度优化,vLLM 默认自动选用 bf16 就是这个原因。
  2. RTX30 系及更早显卡:没有硬件 BF16 计算单元,跑 BF16 会落到 CPU 模拟 / 软计算,速度暴跌,此时用half(fp16)才是最优。
  3. RTX40 系、A10、H100:全都完美硬件 BF16。

四、放到你的两个使用场景讲解

场景 1:Embedding(Qwen3-Embedding-0.6B)

向量只需要相对相似度,BF16 损失的一点点尾数精度完全感知不到 。 A100 默认 bf16 即可,不用手动加--dtype half,性能更好。

场景 2:Qwen3.6-35B 大模型推理

  • BF16:数值稳定,大数值计算不易溢出,A100 跑更快,vLLM 默认方案
  • FP16:极少数极端场景会出现数值溢出、输出乱码;无收益,没必要强制 half

五、补充误区纠正

  1. 不是 BF16 = 省显存、FP16 = 费显存:二者显存开销完全相等
  2. 只有 FP32 才会显存直接翻倍
  3. 量化 INT8/INT4 是压缩权重,和这两个 16 位浮点不是一个维度

最简选择口诀

  • A100 / A10 / H100 / RTX40+:不用指定 dtype,默认 bf16 最优
  • RTX30 及以下老消费卡:手动加上 --dtype half
相关推荐
EnCi Zheng1 小时前
AI Agent(AI智能体) 记忆管理系统设计 — 从向量库边界到生产级 Memory(记忆) 架构
人工智能·架构
海带紫菜菠萝汤1 小时前
免费在线翻译器横评:2026年6款PDF翻译工具对比
人工智能·python·pdf
程序员cxuan2 小时前
DeepSeek-V4-Flash 正式版来了!这次提升有点夸张。
人工智能·后端·程序员
逐米时代2 小时前
数据清洗到底在洗什么
人工智能
袁震2 小时前
小图传输,大图呈现——用 HarmonyOS 7 端侧 AI 实现 4 倍图像超分重建
人工智能·华为·harmonyos
星核0penstarry2 小时前
从 Dialog-RSN-1 看语音 Agent 走向:企业如何评估音频原生模型与 API 服务
人工智能·音视频·音频·api
GetcharZp2 小时前
让照片开口说话:LivePortrait 本地部署玩法详解
人工智能·计算机视觉
OpenCSG2 小时前
CSGClaw v0.4.2-v0.4.3 版本更新
人工智能·opencsg
大鱼>2 小时前
因子挖掘+回测+RL交易:量化金融完整系统
人工智能·深度学习·算法·金融