英伟达、Arm和英特尔公布FP8规格,旨在形成AI交换格式标准

本周,英伟达、Arm和英特尔共同发表了8比特位浮点(8-bit Floating Point,FP8)规格,旨在以较低精确度的格式改善计算能效,加快深度学习训练推理速度,以作为AI的标准交换格式,已计划将该规格提交给电子工程师协会(Institute of Electrical and Electronics Engineers,IEEE)。

英伟达称,AI处理需要跨软硬件平台的全栈创新,才能解决神经网络日益增加的计算需求,促进效率的关键之一是采用较低精确的数字格式来改善计算能效,降低内存的使用,并针对互动频宽进行最佳化。

为了实现上述好处,业界已由32比特位的精确度降至16比特位,现在则是8比特位,而他们相信拥有一个共同的交换格式,将能推动软硬件平台的互动,进而改善计算。

因此,英伟达、Arm和英特尔共同撰写了《供深度学习使用的FP8格式》(FP8 Formats for Deep Learning)白皮书,用以描述8比特位浮点规格,提供一个共同的格式加速包括AI训练与推理的AI发展。

FP8规格由E5M2与E4M3组成,前者使用5个比特位来表示指数,2个比特位表示尾数,后者则是以4个比特位表示指数,3个表示尾数,由于该规格只使用了8个比特位,因而节省了额外的计算周期。

图表取自《FP8 Formats for Deep Learning》白皮书

此外,FP8最大限度地减少了它与IEEE 754浮点格式的偏差,在软硬件之间取得了良好的平衡,因而得以利用现有的实作,加速采用,并改善开发者的生产力。

根据实验,不管是在Transformer、电脑视觉或是GAN网络上,FP8训练的准确性都类似16比特位的结果,但能效上却有极大的进步。例如英伟达的Hopper在BERT高精确模型上采用FP8格式,在无损准确性的状态下创造了4.5倍的速度。

图片来自英伟达

此一规格将采用开放及免费授权形式,旨在由一个可维持准确性的交换格式,让AI模型于所有硬件平台上都能有一致的表现。