1. 首页>>分享

Deepseek V3.1发布引入UE8M0 FP8,你知道这意味着什么吗?

前天发布的一项消息,相信各位都已知晓,Deepseek V3.1版本推出,其中增加了UE8M0 FP8功能,该功能是面向未来国产新一代芯片而设计的。

这个消息公布之际,我们在星群中已经发布了一篇前一天关于国产GPU的摘要,依据摘要信息,大致可以确认是哪一款国产处理器了。

图片

起初我对此事并未特别在意,觉得下一代处理器采用半精度浮点数是顺理成章的,毕竟英伟达的B200芯片已经具备四分之一精度和六分之一精度运算能力了。经过进一步思考,认识到这件事的影响相当显著,现在就具体探讨一番。

图片

要讨论 UE8M0,需要先理解 “FP8” 这个基本原理。我们通常接触到的数据类型有 FP32、BF16 等,数值越高,意味着每个数据所占用的存储容量越大,计算精度也越高,然而,这也导致内存使用量和处理效率会相应降低。对于有编程经验的人来说,这些知识应该比较常见。

FP8 是指八位浮点数,主要功能是减少数据存储空间占用。例如将原本需要32位存储的数据转换为8位,内存使用量能大幅降低75%。同时计算效率也能得到改善,无论是训练大型模型还是进行模型推理,整体性能都会有显著进步。

但 FP8 的实现方式不止一种,海外当前以 Nvidia 开发的 “MXFP8” 最为普遍,该方案包含两种规格,其一为 E4M3,主要追求计算精度,其二为 E5M2,则更注重数值的动态幅度。这些技术都是专门为 Nvidia 的图形处理器(例如 H100、B100)进行优化的,若在非原设计芯片上部署,则可能引发兼容性难题。

UE8M0 是一种编码方法,专门用于处理 FP8 类型的张量数据,U 指的是无符号特性,E8 表示指数部分使用了 8 位,M0 说明其小数部分没有位数分配。

UE8M0 是 OCP 组织制定的规范。OCP 是一个开源硬件合作项目,于 2011 年启动。该项目由 Facebook(现 Meta)与英特尔、Rackspace 共同发起。OCP 的参与成员众多,涵盖国际企业如微软、谷歌、亚马逊、AMD、英伟达等,也包括国内企业如阿里、腾讯、百度等。二零二三年,OCP 公布了《Microscaling(MX)Formats Specification v1.0》文件,该文件界定了 MXFP8 格式,而 UE8M0 则是 MXFP8 路径中的“缩放因子”。

理解这部分内容对于非专业人士来说或许存在难度,概括来说就是,FP8指的是八位浮点数,UE8M0、E5M2以及E4M3都属于FP8的范畴,当前国际上普遍采用后两者,而我们目前支持的是第一种。

请说明一下原生FP8究竟是什么,许多读者或许已经注意到,有两家国产芯片厂商都宣称自家产品具备原生FP8支持能力。

原生 FP8代表设备能够直接处理 8 位浮点数(FP8)数据类型,无需借助软件来模拟运算或转换成其他数据格式,比如 FP16 或者 INT8。摩尔线程 MUSA 架构明确指出其具备原生 FP8 张量运算能力,同时特别说明可对 UE8M0 FP8 Scale 进行充分适配;芯原 VIP9000 NPU 也经由众多行业媒体及高管访谈内容证实,其已新增对 FP8(E4M3/E5M2)的运算支持,并且着重指出该架构能够便捷地与现有主流框架和工具链进行整合部署。

Deepseek选择的是UE8M0平台,而英伟达则采用了E4M3和E5M2平台,这两种配置的选择有何原因?

NVIDIA所采用的FP8技术,兼顾了精确度与表示范围,其中E4M3更侧重于精确度,E5M2则更注重表示范围,借助Tensor Core和定制化软件的优化,致力于实现高效率运作和运行可靠性。然而,这种设计理念移植到国内芯片上便不再适用,原因是硬件的计算部件存在显著差异。

网络普遍认为UE8M0采用“区域优先”策略,以牺牲部分小数精度为代价,换取更宽广的适用范围和硬件设计的简洁性。实际上,其中还包含一个更深层次的考量,即“适配性优先”:不再单纯依赖FP8本身来确保精度,而是通过“通道层面校准”与“高精度累积”技术来弥补精度不足,将所有资源集中用于“确保国产处理器能够稳定运行”上。

许多人误以为 V3.1 仅增添了 UE8M0 的功能项,实则情况更为复杂。根据官方披露的内容,此次更新将 UE8M0 全面整合到模型构建的各个环节,其核心目标在于实现“向后兼容”。具体来说,V3.1 的全部训练环节均采用了 UE8M0 FP8,并非临时添加的功能。他们着重强调了“微缩比例适配”,具体而言,就是通过改变数据放大系数,并采用更高精度的累加器(例如 FP16),来弥补精度损失,以此保证即便应用了 FP8 压缩,模型的性能依然能够保持原有水准。

其次,虽然没有公布将要和哪个国内半导体企业联手,但已经清楚表明 UE8M0 是为“马上要面世的下一代国产处理器”量身打造的。这个信息不言而喻:处理器尚未发售,软件就已经先行完成了适配工作,一旦硬件问世,模型便能立刻部署,无需再耗费时间进行调试。

现阶段首要任务并非超越海外 FP8 的性能表现,而是确保在众多国内处理器上实现可靠运行。DeepSeek 曾尝试采用国外的 E4M3 标准,此次转而使用 UE8M0 格式,此举意在为行业开辟新方向,验证我们有能力开发出兼容本土硬件的通用型解决方案。

为啥非要给国产芯片做专属 FP8?

或许有人会想,直接采用海外的 FP8 规范不可以吗?为何一定要自主研制一套?这其实是中国人工智能环境所面临的实际状况:

国产芯片与Nvidia的运作方式存在显著差异。以FP8矩阵乘法为例,Nvidia的GPU和国产芯片因底层设计不同,导致计算流程与数据传输路径各异。若强行采用国外规范,犹如在中式烹饪场所配置西式炉具,不仅难以适用,还可能引发操作问题。比如练习过程中数值出现溢出现象,模型会突然出现方向性偏差,接着就必须重新开始,代价非常巨大。

这是脱离依赖的重要环节。先前我们指出,英伟达已针对E4M3和E5M2进行过专门适配,当前国内众多GPU产品中,采用FP8标准的为数不多,倘若继续围绕E4M3和E5M2展开适配,并非最佳途径,反而应当脱离英伟达的规范,另寻契合国产GPU发展需求的路径。

此外,这标志着“软硬件联合”的开端。过去我们从事人工智能领域,不是先借助国外设备再开发程序,就是先构建算法再等待硬件提升,总是落后一步。此次 DeepSeek 与本土芯片制造商联手,让程序依据硬件的步伐进行开发,如同“软硬件同步规划”,将极大压缩国产芯片从研发到部署的周期。

UE8M0 的实际效果

UE8M0 非常注重与其他系统的适配性,不过它并没有放弃 FP8 的关键长处,也就是效能表现。经过官方机构以及业内专家的评估:

内存消耗上,同规格显卡若选用 UE8M0,相较 FP32 可减少大约四分之三的占用,当然具体效果会因缓存机制和数据规格的不同而有所变化,未必总能达到这个比例。这表示在相同硬件条件下,使用 UE8M0 可以承载规模更宏大的模型,或者在推理阶段能够并行应对更多任务请求。

性能表现上,计算能力是 BF16 的两倍。举例来说,单张设备原先每秒可处理100项任务,采用UE8M0后或许能达到200项,并且响应时间不会有显著延长——这对于需要处理海量业务的情况(例如人工智能交互、文本创作)非常有益。

当然,需要明确的是,UE8M0 并未超越国外的 FP8,只是在国产芯片上实现了相近的性能水平。它的意义并非追求“领先”,而是起到“补充”作用——使国产芯片也能利用 FP8 的高效运算能力。

UE8M0 不是万能的

UE8M0 确实处理了部分难题,不过并非所有情形都适用。许多运算环节,例如梯度累积,依然需要 BF16 或 FP16 才行,否则精度损失会非常严重。UE8M0 本质上是混合方案,并非纯 FP8,具体是 FP8 存储数据,16 位进行计算累积。

此外还取决于国内芯片的配合水平,倘若半导体企业未能优化好 FP8 的基础部分,即便应用了 UE8M0,也无法充分展现其能力。这需要半导体企业与软件公司共同协作。

精度调整是必须的环节。由于 UE8M0 的末尾数字处理方式有所简化,必须进行数据匹配,例如应对特别巨大或特别微小的数值,否则或许会在特定情形下产生偏差。

本文采摘于网络,不代表本站立场,转载联系作者并注明出处:https://mjgaz.cn/fenxiang/278211.html

联系我们

在线咨询:点击这里给我发消息

微信号:13588888888

工作日:9:30-18:30,节假日休息