IBM 再度发力。
随着 AI 体系的飞速发展,其能源需求也在不断增加。训练新体系须要大量的数据集和处理器时间,因此能耗极高。在某些情况下,实行一些训练好的体系,智能手机就能轻松胜任。但是,实行的次数太多,能耗也会增加。
幸运的是,有很多办法可以降低后者的能耗。IBM 和英特尔已经试验过模仿实际神经元行为安排的处理器。IBM 还测试了在相变存储器中实行神经搜集计较,以避免重复访问 RAM。
现在,IBM 又推出了另一种办法。该公司的新型 NorthPole 处理器综合了上述办法的一些理念,并将其与一种非常精简的计较运转办法相结合,从而创造出一种能高效实行基于推理的神经搜集的高能效芯片。在图象分类或音频转录等方面,该芯片的效率是 GPU 的 35 倍。
官方博客:https://research.ibm.com/blog/northpole-ibm-ai-chip
NorthPole 的不同之处
NorthPole 与传统的 AI 处理器不同
首先,NorthPole 对训练神经搜集的需求没有任何帮助,它纯粹是为实行而安排的。
其次,它不是通用的 AI 处理器,而是专门为以推理为重点的神经搜集安排的。所以,如果你想用它推理、找出图象或音频片段的内容等,那么它就对了。但如果你须要运转一个大型语言模型,这款芯片看起来就没有什么太大用处了。
最后,虽然 NorthPole 借鉴了神经形态计较芯片的一些理念,但它并不是神经形态硬件,因为它的处理单位实行的是计较,而不是模拟实际神经元使用的脉冲通信。
NorthPole 和之前的 TrueNorth 一样,由一个大型计较单位阵列(16×16)组成,每一个单位都包含本地内存和代码实行能力。因此,神经搜集中各种连接的所有权重都可以准确地存储在须要的地方。
他还有一个特点是广泛的片上搜集,至少有四种不同的搜集。其中一些搜集将已完成计较的信息传送到下一个须要它们的计较单位。其他搜集则用于重新配置整个计较单位阵列,在上一层计较仍在进行时,提供实行一层神经搜集所需的神经权重和代码。最后,优化相邻计较单位之间的通信。这对于在图象中寻找物体边缘等情况非常有用。如果在输入图象时将相邻像素分配给相邻的计较单位,它们就能更轻松地合作识别出跨越相邻像素的特征。
除此之外,NorthPole 的计较资源也不同寻常。每一个单位都经过优化,可实行精度较低的计较,精度从 2 bit 到 8 bit 不等。为了保证这些实行单位的使用,它们不能根据变量值实行条件分支。也就是说,使用者的代码不能包含 if 语句。这种简单的实行方式使每一个计较单位都能进行大规模并行实行。在 2 bit 精度下,每一个单位可并行实行 8000 多次计较。
配套软件
由于这些独特安排,NorthPole 团队须要开发自己的训练软件,以计较出每一层成功运转所需的最低精度水平。在芯片上实行神经搜集也是一个相对不寻常的过程。
一旦神经搜集的权重和连接被置于芯片上的缓冲区,实行时只须要一个外部控制器上传它要运转的数据,并告诉它开始运转。其他一切运转都无需中央处理器参与,这也限制了体系级功耗。
NorthPole 测试芯片采用 12 纳米工艺制造,远远落后于前沿技术。尽管如此,他们还是成功地在 220 亿晶体管上安装了 256 个计较单位,每一个单位拥有 768 KB 的内存。当该体系与采用类似工艺制造的英伟达 V100 Tensor Core GPU 相比时,可以发现 NorthPole 在相同功耗下的计较能力是后者的 25 倍。
在相同的条件下,NorthPole 的性能比最先进的 GPU 高出约五倍。对该体系的测试表明,它还能高效实行一系列广泛使用的神经搜集任务。