尽管目前IBM的硬件业务仅限于POWER和大型机芯片及系统,但IBM正在悄悄地建立构建自己在AI硬件方面的能力。下面是我们对IBM此举的一些思考和原因推测。
IBM的AI硬件研究成果
IBM在2019年初成立了IBM Research AI Hardware Center,与纽约州、纽约州立大学理工学院以及Mellanox、三星和Synopsys等科技公司合作研发AI芯片。该中心采取了一种整体化的、端到端的方法,设定了雄心勃勃的目标计划,即未来10年内将AI性能提高1000倍。路线图的起点,是开发降低精度的技术。同时,该中心还在开发新的数字和模拟AI核心以实现这些创新。路线图的结尾处,是尚未在半导体制造中采用的、由全新材料制成的新核心。
IBM最近发表了两篇论文,描述了用于降低精度的方法,这些方法的目标是提高AI处理效率,同时维持预测准确性。基本上,在Nvidia和谷歌的引领下,过去4-5年有关AI的研究一直集中在降低精度和数学运算。如果“降低精度”听起来似乎不太好,那么你要记住,精度越高成本就会越高——而且是以字位长度的平方计算的。因此,从32位加速到16位(或降低成本),速度提高了4倍。谷歌最近提出了一种新的16位格式,称为Bfloat,Bfloat166提供16位浮点格式,其动态范围与标准IEEE-FP32相同,但精度较低。或者说,可以在保留精度的同时,功耗更低,占用芯片空间越少。英特尔是该技术的支持者之一。但是,研究人员还在朝着8位浮点数同时保持精度的方向努力。
IBM本周提出了一种“混合8位浮点数”的格式,该格式可以提高性能,将成本降低多达4倍。就是说,如果有厂商(会是IBM吗?)能生产出可以执行这种计算进行训练的芯片,那么该芯片将使用已经“量化”为8位格式的DNN。这种“混合”特性来自于前向和后向传递计算对精度的不同要求。通过针对前向和后向传递计算定制用于指数和尾数的位数,IBM证明了确实可以仅使用8位权重和激活来训练用于视觉、语音和语言处理的神经网络,而且还能够以接近16位计算结果相当的精度执行操作。此外,芯片通信更高效了,训练时间缩短了30-60%。
如果这种数学运算听起来很复杂,那么带来的好处则要简单得多。从理论上讲,这种方法可以让某个厂商打造用于训练深度神经网络的芯片,该芯片的芯片面积仅为普通芯片的1/4,在相同成本情况下性能提高4倍。
在AI推理方面,出于相同的原因,芯片厂商和模型开发人员正在转向8位整数的方法。但是,还能降得更低吗?迄今为止,还未能降低到8位模型的精度水平。但是,IBM最近发表了一篇论文,提议结合使用所谓的参数化限幅激活(PACT)和统计感知权重合并(SAWB)两种技术,演示了2位推理处理操作,其精度与8位量化模型相当。
对谁的影响最大?
如果有人在CPU或AI芯片中使用这些技术,那么答案就是“所有人”。IBM路线图肯定意味着IBM将做到这一点,但就目前而言,这一切都是在IBM研发中心而非产品部门进行的。我在IBM工作了10年,研究项目无法变成产品是很正常的,这就是研究的本质。不过,让我们考虑一下IBM将怎么做。
我看到IBM有三种方式让AI硬件研究成果变现。首先,IBM可以把这项技术许可给其他半导体公司,用于移动、边缘和数据中心芯片平台。其次,IBM可以把这项技术融入到IBM POWER以及/或者大型机处理器中,尤其是2位推理处理。第三,IBM可以生产用于数据中心训练和推理处理的加速器,直接与Nvidia和英特尔展开竞争。最后一项可能有更大的潜在市场,但也会带来一个业务问题——IBM需要构建渠道来吸引POWER和大型机客户群之外的数据中心客户。例如,IBM可能会通过联想进行售卖,卖给那些正在搭建数据中心服务器的ODM厂商。当然,这三个选项不是互相排斥的。
总结
IBM AI硬件研究中心所取得的成果给我留下了深刻的印象,而且仅用了短短一年的时间。IBM一开始就抛出了将效率提高1000倍的雄心愿景,采用了整体化的方法,从算法到芯片再到材料。这让IBM在这个快速发展的市场中具有巨大的潜力。IBM AI硬件研究中心可能很快就需要就业务模式做出一些艰难的选择,让这些研究变现,以及触达目标市场。高管层需要保持耐心,坚持到底,我认为,下一任首席执行官Arvind Krishna可以做到这一点,特别是过去十年中,IBM稳步摆脱了硬件业务。我们将密切注视所有这些动向。