自从Intel在2018年初推出其首个用于神经形态计算的专用14nm芯片Loihi以来,人们一直保持着对Intel在神经形态方面工作的关注。2021年3月,在Intel实验室主任Richard Uhlig博士的访谈中,有人询问了硬件的发展情况,以及何时可能看到第二代产品。就在前几天,Intel便宣布了Loihi 2,这是对一代产品的大幅升级,解决了第一代设计中的很多问题。也许同样有趣的是工艺节点。Intel表示,Loihi 2正在开发阶段,目前的芯片使用了Intel的第一个EUV工艺节点Intel 4的预生产版本。
Intel的神经形态计算
创建一个像大脑一样的内核架构,其想法是,拥有数百万计的神经元和突触将使计算任务在特定任务中具有独特的功耗/性能优势,而大脑就是被设计来做这些任务的。对Intel来说,这是一个长期的潜在商业产品,然而该团队的任务是开发技术和软件,以发现和加速适合神经元类型计算的任务。
Intel的神经形态实验室实际上是在2011年对Fulcrum Microsystems的收购后诞生的。当时,Fulcrum团队是一个从事网络交换机的异步计算公司。这项技术被提升到Intel内部的网络部门,而研究部门则将注意力转向异步计算的其他应用,并将目光投向了神经形态。
当时,对这种用于实际工作负载的神经形态计算架构的研究还相当初级,虽然该领域自20世纪80年代末就开始了,但直到2010年代初才真正出现了专门用于研究的硬件。人脑项目(Human Brain Project),一个由欧盟资助的在该领域已进行10年的研究项目,在2013年才成立,并在2019年推出了SpiNNaker系统,有100万个芯片,10亿个神经元,100千瓦的有效功率。
相比之下,Intel的第一代Loihi每60平方毫米芯片支持131000个神经元,768个芯片可以放在一个Pohoiki Springs系统中,只需300瓦的功率就可以有1亿个神经元。在Intel自己的营销中,他们把这描述为相当于一只仓鼠。新的Loihi 2芯片,每个芯片使用31平方毫米,用于一百万个神经元,有效地将密度提高了15倍,然而发展超越了原始数字。
Loihi 2Loihi 2芯片在高层次上可能看起来类似:128个神经形态核,但现每核有8倍的神经元和突触。这128个核中的每一个都有192KB的灵活内存,而以前在运行时每核的内存是固定的,每个神经元可以根据模型最多分配4096个状态,而以前的限制是只有24个。神经元模型现在可以完全可编程,类似于FPGA,允许更大的灵活性。
传统上,神经元和峰值网络以二进制事件的形式传递数据,Loihi v1就是如此。有了Loihi 2,这些事件可以用32位有效载荷进行分级,为片上计算提供更深的灵活性。现在可以利用芯片上新的开发/调试功能实时监控这些事件,而不是暂停/读取/播放。结合起来,这也允许在动态改变计算工作负载时进行更好的控制,如扇出压缩、权重缩放、卷积和广播。
也许最大的改进之一是在连接性方面。第一代产品使用定制的异步协议来创建一个大型的二维神经元网络,而Loihi 2可以根据需要配置使用各种协议,而且还是三维网络。另外,Loihi 2不仅仅是单一的芯片,它将是一个芯片系列,具有相同的神经元架构,但根据具体的使用情况,有各种不同的连接选项。这可以与板载信息压缩加速器结合使用,以获得芯片间带宽的10倍增长。
这也延伸到了Loihi与更多传统计算的外部连接,以前是以FPGA为媒介,现在Loihi 2支持10G以太网、GPIO和SPI。这应该会让集成变得更容易,而不需要定制系统,如创建分解的Loihi 2计算集群。
基于Intel 4
我们惊讶地听说Loihi 2是基于Intel 4工艺的预生产版本。Loihi 2要盈利还有一段时间,神经形态团队也知道这一点,但事实证明,该芯片也许是帮助推动新工艺的理想候选。
31平方毫米的尺寸意味着,即使产量需要提高,单个晶圆也能产出更多的芯片,而不是用更大的芯片尺寸进行测试。由于该团队进行后硅电压/频率/功能测试,他们可以更快地循环到Intel的技术开发团队。Intel的实验室里有实际的芯片,事实上,硬件已通过Intel的DevCloud提供。
通常情况下,对于新的工艺节点,都需要一个小尺寸芯片的客户帮助迭代通过潜在的障碍,推动一个工艺的全面升级和生产。Intel的代工竞争者通常与智能手机芯片客户一起做这件事,而客户通常会首先获得硬件或某种初始折扣(尽管在今天的环境下也许不是)。Intel此前在这方面一直举步维艰,因为它只有自己的芯片可以作为测试工具。
神经形态团队表示,鉴于神经形态硬件需要前沿工艺节点所提供的高密度和低静态功率,这实际上是一个很好的选择。128核的设计也意味着它有一个一致的重复单元,让工艺团队在生产中关注规律性和一致性。另外,鉴于Loihi目前仍然是一个研究项目,没有认真期待在特定的窗口期将该产品推向市场,这也许是大客户可能需要的。
这是否意味着Intel 4已经准备好投入生产?不完全是,但它确实表明正在取得进展。Loihi 2列出的一些基准测试确实有“鉴于模拟硬件结果的预期”的警告,尽管其他一些是在真正的硅上完成的,而且该公司说它现在有真正的芯片可以部署在云端。Intel 4是Intel第一个采用极紫外光刻技术(EUV)的工艺节点,Intel将是最后一个采用EUV工艺的主要半导体制造商。但还有一段路要走,早在Intel's Accelerated的活动中,EUV和Intel 4并不是真的预计到2022年下半年才会放量生产。
最后,从Intel的公告中,我们能够看到晶体管密度。在31平方毫米内有23亿个晶体管,这将使密度达到每平方毫米7120万个,这只是我们所预期的三分之一。根据Intel以前的公告估计,Intel 4的密度约为每平方毫米200MTr。那么,为什么Loihi 2与这个数字相比如此低?
首先,也许它是一个神经形态芯片,而不是一个传统的逻辑设计。内核有大约25MB的SRAM和所有的逻辑,对于一个31平方毫米的芯片来说,这可能是芯片面积的一大块。另外,Intel对神经形态芯片的主要想法是功能第一,性能第二,功率第三。所以让它正常工作比让它快速工作更重要,所以并不总是需要最高密度。然后还有一个事实是,它仍然是一个开发芯片,它允许Intel完善其EUV工艺和精密光刻测试,而不必像以前那样担心密集的晶体管库造成的缺陷。相信还会有更多的消息。
最后补充一点,神经形态IP有可能未来会通过Intel的代工服务IP产品来提供。
新的Lava软件框架
无论处理能力如何,神经形态系统的主要构件之一是计算的类型,以及编写软件来利用这样的架构是多么困难。在与Intel神经形态实验室主任Mike Davies的讨论中,我们最好的描述是,现代计算类似于一个投票架构,每个周期它都会获取数据并加以处理。相比之下,神经形态计算是一个基于中断的架构,它在数据准备好时采取行动。与现代计算相比,神经形态计算更依赖于时域,因此计算的概念及其应用都几乎与传统计算技术正交。例如,虽然机器学习可以以Spiking Neural Networks(SNN)的形式应用于神经形态计算,但传统的PyTorch和TensorFlow库并不是为了实现SNN而建立的。
作为公告的一部分,Intel为神经形态社区推出了一个新的底层软件框架,名为Lava。这是一个开源的框架,不在Intel的控制之下,而是由社区管理。Intel已将其早期的一些工具作为框架的一部分,其想法是,随着时间的推移,可以开发出一个完整的软件栈,供参与神经形态计算的每个人使用,无论硬件是什么(CPU、GPU、神经形态芯片)。Lava的设计是模块化、可组合、可扩展、分层和开源的。这包括一个用于将神经网络映射到神经形态硬件上的底层接口,基于通道的异步消息传递,所有的库和功能都通过Python公开。该软件将在BSD-3和LGPL-2.1下在GitHub上供免费使用。
初始系统
部署在英特尔云服务中的Loihi 2的第一个版本是Oheo Gulch,它看起来像一个PCIe外接卡,使用FPGA来管理大量的IO,如果需要的话还有一个背板连接器。31平方毫米的芯片是BGA,这里我们看到Intel的一个内部连接器,用于将BGA芯片固定在开发板上。
在未来的某一天,Intel将生产一个4英寸乘4英寸的版本,名为Kapoho Point,搭载八个芯片,旨在堆叠和集成到一个更大的机器中。
有了这么小的芯片,想知道是否值得在芯片上安装一个USB控制器,或者有一个USB到以太网接口,并在U盘上提供硬件,类似于Intel的Movidius。然而,由于这仍然是Intel实验室的一个项目,该团队的一个关键因素是他们与合作伙伴的专门合作,以推动该领域的发展。因此,我们将不得不至少再等上一代或更长时间,看看未来的Loihi系统最终是否会在电商平台上买到。
Loihi 2作为Intel DevCloud的一部分,应该已经可以供研究伙伴使用了。预计在未来12-24个月内会有企业内部的研究/协作部署。
[参考文章]
Intel Rolls Out New Loihi 2 Neuromorphic Chips: Built on Early Intel 4 Process — Dr. Ian Cutress