美国AI芯片新创公司Lemurian Labs发明了一种专为AI加速设计的对数(logarithmic)数字新格式,并打造了一款利用该格式优势、锁定数据中心AI工作负载应用的芯片。
“2018年,我正在训练机器人模型,该模型有一部份是卷积、一部份是Transformer,还有一部份是强化学习;”Lemurian共同创办人暨首席执行官Jay Dawani接受《EE Times》访问时表示:“在1万颗Nvidia的V100 GPU上训练这个模型要花6个月时间…模型呈指数型成长,但很少人拥有那样的计算资源进行训练、甚至连去试都很难,有很多想法因此被放弃。我正在努力为那些拥有伟大想法、却缺乏计算资源的机器学习工程师打造解决方案。”
Lemurian共同创办人暨首席执行官Jay Dawani。
(来源:Lemurian Labs)
Lemurian的第一款芯片尚未投片,其软件模拟结果显示,该新数字系统,以及特别设计的芯片,其性能可以超越Nvidia的H100芯片(以H100的最新MLPerf推论性能测试结果为准)──根据软件模拟,在离线模式下,Lemurian的芯片能以每秒17.54次推论的速度执行MLPerf版本的GPT-J模型(Nvidia的H100在同样的离线模式下能执行每秒13.07次推论)。
Dawani表示,Lemurian以软件模拟得出的性能测试结果,大概跟实际芯片相差在10%之内,而他的团队接下来打算从软件“榨”出更高性能;他指出,软件最佳化加上稀疏性(sparsity)可将性能再提升3~5倍。
对数数字系统
Lemurian的秘密武器是以该公司开发之新数字格式PAL──平行适应性对数(parallel adaptive logarithms)为基础。“作为一家企业,我们一开始就朝向8位元整数量化(integer quantization),因为从角度来看,那是我们最具效益的东西;”Dawani表示,“但没有软件工程师曾说过:我想要8位元整数!”
针对今日的大型语言模型(LLM)推论,INT8精度经过证实是不够的,产业界已经转向FP8;但Dawani解释,AI工作负载的本质意味着数字通常在次正规(subnormal)范围,也就是接近0的区域,在其中FP8可以代表更少的数字,因此精度也较低;FP8在次正规范围内的覆盖差距,是很多训练方法需要较高精度数据类型如BF16与FP32的原因。
Lemurian共同创办人Vassil Dimitrov提出了利用多基数(multiple bases)与多指数(multiple exponents)来扩展数十年来应用于数字处理器(DSP)之现有对数数字系统(Logarithmic number system,LNS)的想法。
“我们穿插了多指数的表示(representation),以重新打造浮点的精确度与范围;”Dawani表示,“这提供了更好的覆盖…那会自然地在次正规范围内的重要地方,建立一个拥有非常高精度的锥形轮廓(tapered profile)。”
这个精度范围能进行偏移以覆盖所需的范围,类似于浮点的运作方式;Dawani表示,它能以比浮点更细粒化(grained)的方式控制偏移。
不同数字规格的覆盖范围比较。在次正规范围,Lemurian的8位元对数数据类型PAL8相较于CFP8 (configurable floating point)、INT8,以及现有的对数数字系统LNS8有更好的覆盖率。
(来源:Lemurian Labs)
Lemurian开发了从PAL2到PAL64的PAL格式,其中14位元的格式媲美BF16;与FP8相较,PAL8获得额外的位元精度,其大小则约为INT8的1.2倍。Dawani预期,其他公司在未来也会采用这些格式;“我想要更多人采用这种格式,因为我认为是我们摆脱浮点的时候了。“
他指出:“PAL能被用在任何一个目前采用浮点的应用,从DSP到HPC,以及介于两者之间的应用,而且不只是AI,不过那是我们目前的焦点应用。我们很有可能会与其他公司合作,针对那些应用打造芯片,以帮助他们采用我们的格式。“
对数加法器
LNS已经在DSP工作负载中被使用了很长一段时间,其中大多数计算都是乘法,因为它简化了乘法。在LNS中两个数字的乘法是以这两个数字的对数加法来表示,不过要将两个LNS数字加起来会难得多。
传统上DSP是使用查找表(LUT)来完成加法,虽然效率相对较低,不过对大多数需要乘法的计算来说已经够好了。对AI工作负载来说,矩阵乘法需要乘法与累加;Dawani表示,Lemurian秘密武器的一部份是能“解决在硬件中的对数加法。”
“我们已经完全废除LUT,打造了一种纯粹的代数加法器;”他指出:“我们有一个比浮点精确得更多的确切方法。我们仍在进行更多最佳化,看看是否能让它更便宜、更快速;而从功耗、效能与面积(PPA)的表现来看,已经比FP8高出两倍以上。”
Lemurian数据流架构的高阶视角;该芯片是围绕着该公司的对数数字系统所设计。
(来源:Lemurian Labs)
Lemurian已经为这种加法器申请了数个专利。“DSP世界以查看一个工作负载,并从数字上了解它正在寻找的东西然后利用它、并将之导入芯片而闻名;”Dawani表示:“这与我们正在做事情的没有差别──但我们并非打造只能做一件事的ASIC,我们研究整个神经网路空间的数值,建构了一个具有适当程度灵活性的特定领域架构。”
软件堆叠
要以有效方式实现PAL格式,需要硬件也需要软件。“我们花了很多功夫尝试思考如何让硬件更容易编程,因为除非你能让工程师生产力成为被加速的第一件事情,任何架构都不可能成功;”Dawani表示:“我宁愿拥有糟糕的硬件架构跟很厉害的软件堆叠,而非相反。”
Lemurian甚至在开始思考期硬件架构之前,就将其编译器软件完成了约40%;他指出,该公司目前的软件堆叠已经开始运转,并打算要完全开放,让使用者能编写自己的软件核心(kernel)与融合(fusion)。该软件堆叠包括Lemurian的混合精度对数量化器(logarithmic quantizer),能将浮点与整数工作负载映射到PAL格式,同时维持准确度。
“我们采用了存在于神经架构搜寻(neural architecture search)的许多想法,并将它们运用于量化,因为我们想让那个部份变得容易;”Dawani表示,虽然卷积神经网路相对容易量化, Transformer模型则不然──在激励函数中会有需要更高精度的离群值(outlier),因此整体上Transformer会需要更复杂的混合精度方法。
不过Dawani表示,根据他正在追踪的多个研究显示,到Lemurian的芯片上市时,Transformer模型还不会成为主流。他认为,未来的AI工作负载可能会依循由Google Gemini,以及其他模型所设定的路径,将以不确定性(non-deterministic)步骤数执行,这打破了大多数硬件与软件堆叠的假设。
“如果你不能预先知道你的模型需要多少步骤来执行,你如何进行排程,以及知道需要多少计算来启动排程?”他解释:“你需要在本质上更具动力的东西,这对我们的想法产生了很大的影响。”Lemurian的芯片将会是300W的数据中心加速器,配备128GB的HBM3高带宽存储器,可提供3.5 POPS的密集计算(稀疏性会在稍后进行)。
整体来说,Dawani的目标是打造比H100性能更高的芯片,但价格则与Nvidia前一代的A100芯片相当;其目标应用包括在地部署(on-prem)的AI伺服器(涵盖所有应用领域),以及一些二级(Tier 2)或专业型云端企业(非超大规模数据中心企业)。
目前Lemurian的团队在美国与加拿大有27名员工,最近募得一轮900万美元的种子资金。Dawani的目标是在2024年第三季进行第一款Lemurian芯片投片,并于2024年第二季发表第一个生产用软件堆叠;他补充,目前该公司可提供虚拟开发套件给想要“试水温”的客户。
(参考原文:Can DSP Math Help Beat The GPU for AI?,by Sally Ward-Foxton)
- TI 对此有何看法?