亚马逊、谷歌、Facebook等网络巨头收集的庞大数据集带来了强大的处理需求,直接推动了新一代芯片的建设。其中两项最新成果将在今年6月下旬举行的计算机体系结构大会上揭晓。斯坦福大学的研究人员将介绍Plasticine,这是一种可重新配置的处理器,其每瓦特的处理性能是FPGA的近一百倍,同时更易于编程。此外,由Nvidia的两位高级设计师创建的推理处理器可以实现现有设备两倍的性能和能效。这些芯片的问世只是全行业研发努力的冰山一角。英特尔公司去年收购了三家机器学习初创公司。Intel、Samsung和Dell-EMC的竞争对手也决定投资Graphcore(来自英国布里斯托尔),这是该领域的六家独立初创公司之一。与此同时,Nvidia也在努力推广其GPU产品作为神经网络中的训练平台。此外,公司还在积极调整具体结构,进一步提升相关工作的处理效果。谷歌对此给出了不同的答案——它认为无论是大规模的x86CPU集群还是Nvidia的GPU都不足以最大程度地完成这项任务。因此,谷歌推出了自己的两个加速版本,即TPU。GraphcoreCEONigelToon表示:“计算2.0已经到来;它清楚地代表了计算科学的新世界。考虑到高达98%的收入是由搜索业务提供的,这是机器学习技术的理想应用场景,谷歌最终使用了大量的TPU——其中几乎没有任何CPU。”最终,机器学习芯片将出现在各类嵌入式系统中。与每年1000万台服务器的销量相比,目前全球汽车的年销量为1800万辆。Toon指出,“自动驾驶汽车的发展前景将为这项技术带来更广阔的空间,更重要的是,这个市场还没有真正建立起来。”目前业界普遍的愿景是开发一款AI处理器,并用它来处理当前神经网络中的训练和推理等任务。网络——甚至希望催生出一些自学习技术。这样的处理器需要以大规模并行的方式提供强大的性能,但同时又具有低功耗和易于编程的优点。事实上,即使是最基本的此类处理器的计算能力引发了热烈的争论。在Toon看来,此类处理器应该能够将16位浮点乘法与32位加法相结合,以提供最佳精度和最低错误率。Nvidia也在其Volta张量计算核心中采用这种方式,这意味着Graphcore将于今年10月开始向合作伙伴提前供应高端芯片,面临巨大的竞争压力。这家初创公司专注于使用新的片上和片外存储和互连机制来构建可以连接到单元和集群的大型芯片。由KunleOlukotun领导的斯坦福大学研究人员团队开始着手实现类似的目标,但对橡皮泥采取了不同的方法。“多核时代正在逐渐走向终结......在机器学习时代的背景下,我们需要改变基于现代应用的计算模型”,他率先设计了多核解决方案为一家初创公司引入了Oracle的Sparc处理器),Oluotun解释说。“面对机器学习中的统计模型,我们真正需要的计算将与经典的确定性计算有很大不同,因此这也代表着相当大的发展机会。”与来自布里斯托尔的竞争对手类似,斯坦福大学的研究小组也放弃了共享缓存等传统理念。“最令人兴奋的元素之一是硬件,它可以重新配置以针对特定的计算任务进行优化,”斯坦福大学数据科学项目执行主任斯蒂芬·埃格拉什在介绍Plasticine时说。Olukotun解释说,“我们的目标是帮助具有特定领域专业知识的用户构建高质量的机器学习系统,而无需了解机器学习或硬件认知。”为了实现这一目标,斯坦福大学团队定义了Spatial,这是一种将部分算法映射到部分并发处理器的语言。“我们基于高级TensorFLow框架构建了完整的编译器流水线来表达硬件……具体来说,其每瓦性能可以达到FPGA的10倍,编程的易用性可以达到FPGA的数百倍,”Olukotun解释说,Spatial类似于Nvidia的CudaGPU编程语言,但在易用性方面应该更好。它可以将scatter/gather或MapReduce等功能映射到硬件中特定的内存层次结构中,从而通过DRAM和SRAM实现流式数据集。通过这种方式,Pasticine处理器“成为一个软件优先的项目”,Olukotun解释道。Eglash也意识到物联网浪潮带来的边缘计算需求必须有相应的技术解决方案。“未来,我们产生的数据量将远远超过云环境的传输能力,因此我们还需要分布式本地计算资源的协同支持。”着眼于短期,机器学习将带来“超个性化”智能手机和自动定制用户偏好。这样,用户将不再需要密码或指纹。“手机可以在几秒钟内识别当前用户是否是它真正的主人,”Eglash说。GEDigital的云工程技术负责人DarrenHaas解释说,在IIoT世界中,推理已经分布到网关。“我们构建的所有东西都可以分成更小的设备,甚至可以通过RaspberryPi微控制器实现……我们在云端运行大型模型,并在边缘运行各种轻量级硬件。”StanfordUniversityBuiltPlasticine是一种新架构,可能会被Graphcore等初创厂商采用。该论文解释说,它利用并行性和高级抽象来捕获特定数据位置、内存访问模式和控制流,以“跨多个不同级别的应用程序密度”执行操作。该芯片的核心是一个16x8的交错计算单元(简称PCU)和模式存储单元(简称PMU)阵列,每个单元通过使用三种控制协议的三个互连通道连接。113mm2芯片使用Spatial将应用程序映射到阵列上,提供大约是28nmFPGA芯片95倍的性能水平和高达77倍的每瓦性能。橡皮泥在1GHz的时钟频率下最大消耗49瓦。其单精度浮点峰值性能为12.3teraflops,而片上总容量为16MB。PCU是一个多级流水线,由实现嵌套模式的可重构SIMD功能单元组成。PMU使用带有专用寻址逻辑和地址解码器的暂存存储器。橡皮泥采用16×8图形计算单元(简称PCU)和图形存储单元(简称PMU)阵列,内置地址发生器和切换机制。这些主要单元和其他外围组件通过字级标量、多字向量和位级互连互连,并且都使用相同的拓扑结构。每个链路采用分布式分层控制方式,最大限度地减少需要同步的单元数,这意味着它可以实现顺序、流水线或流式执行能力。该方案“简化了编译器的映射方法并提高了执行效率,”该论文解释道。“每个Eplasticine组件用于映射应用程序的特定部分:位置地址计算由PMU完成,DRAM地址计算由DRAM地址管理单元完成,其余数据计算由PCU完成。”“本质上,它可以被视为一组库式存储器,它们利用特定地址单元生成相邻地址,”Olukotun解释道。“每个人只需要提供计算布局,它就可以在正确的时间将数据引导到计算单元,而不需要解释具体的指令。”该芯片使用四个DDR通道连接到外部DRAM,并配合缓冲和管理机制以最大限度地降低片外处理强度。Olukotun解释说,“目前大多数机器学习工作负载都集中在卷积神经网络的实现上,但我们的目标是更灵活地覆盖各种具有不同计算密度的算法,这意味着开发人员可以随时调整它们,以便传达您的设计思想到硬件。”研究人员还为线性代数、机器学习、数据分析和图形分析等常见方向建立了基准,旨在以精确的周期模拟设计的综合RTL。“我们希望能够将这些想法落实到芯片方案中,并计划在未来6到18个月内完成芯片设计。”由九名研究人员组成的团队(其中七名来自Nvidia)对Plasticine和英特尔28nmStartix-V的性能比较结果将参加稀疏CNN(SCNN)卷积神经网络推理加速器会议。该团队包括帮助定义并发多线程的资深微处理器设计师JoelEmer和Nvidia首席科学家WilliamDally。该论文指出,与“具有相同配置密度的CNN加速器”相比,SCNN可以提供2.7倍的性能水平和2.3倍的能效。该芯片采用了比以往项目更激进的设计方法,旨在消除不相关的数学运算,并将重点放在处理CNN加权和其他运算上。此外,它“采用新的数据流来减少压缩编码过程中的权重和操作,从而消除不必要的数据传输活动并减少存储资源需求,”论文还强调。“此外,SCNN的数据流将允许这些权重和操作更有效地传递到乘法器数组中,在那里它们被广泛使用。”这种方案允许“更大的CNN的所有活动始终在层与层之间的片上缓冲,这将完全消除跨层DRAM调用带来的高网络资源需求。”SCNN采用处理单元(PE)阵列来操作加权和输入/输出活动作为核心设计理念。每个处理单元(简称PE)采用一组能够接收权重和活动向量的乘法器。以16nm工艺为例技术,64个PE和16个乘法器可以全部集成到7.4平方毫米的芯片中,这意味着它的尺寸比同密度的CNN加速器略大。本文主要讨论SCNN与其他研究芯片的区别不过,Dally表示,他认为SCNN“将胜过其他商用推理加速器,因为它在处理低密度用例方面具有优势。”在Plasticine方面,目前公布的结果都是基于模拟,即没有计划Dally说:“我们正在做布局设计(布局和布线)和时序收敛规划。”Nvidia还没有宣布任何将这项技术商业化的计划,s只说“我们正在继续努力”。
