具有堆栈存储器的硬件加速器上的深度神经网络处理制造技术

技术编号:17310192 阅读:157 留言:0更新日期:2018-02-19 10:04
提供一种用于在加速组件上处理深度神经网络的方法。该方法包括配置加速组件以执行深度神经网络的前向传播和后向传播阶段。加速组件包括布置在集成电路封装中的加速组件裸片和存储器堆栈。存储器堆栈具有大于约50GB/秒的存储器带宽和大于约20MB/秒/mW的功率效率。

Deep neural network processing on hardware accelerators with stack memory

A method for processing a deep neural network on an accelerated component is provided. The method consists of configuring an acceleration component to perform the forward and backward propagation stages of a deep neural network. The acceleration components include the bare pieces and the memory stack arranged in the integrated circuit package. The memory stack has a memory bandwidth greater than about 50GB/ seconds and power efficiency greater than about 20MB/ seconds /mW.

【技术实现步骤摘要】
【国外来华专利技术】具有堆栈存储器的硬件加速器上的深度神经网络处理
技术介绍
计算行业试图改善软件驱动的计算设备的速度和效率。软件驱动的计算设备采用以传统时间方式对机器可读指令进行处理的一个或多个中央处理单元(CPU)。硬件加速组件(诸如现场可编程门阵列(FPGA))已被用来对由软件驱动的计算设备执行的处理进行补充。
技术实现思路
根据第一方面,提供了一种用于在加速组件上处理深度神经网络的方法。该方法包括配置加速组件以执行深度神经网络的前向传播和后向传播阶段。加速组件包括被布置在集成电路封装中的加速组件裸片和存储器堆栈。存储器堆栈具有大于约50GB/秒的存储器带宽和大于约20MB/秒/mW的功率效率。根据第二方面,提供了一种用于处理深度神经网络的系统。该系统包括加速组件,该加速组件包括布置在集成电路封装中的加速组件裸片和存储器堆栈。存储器堆栈包括大于约50GB/秒的存储器带宽和大于约20MB/秒/mW的功率效率。该系统还包括被配置在加速组件裸片上的多个神经引擎。神经引擎包括用于实现深度神经网络的前向传播和后向传播阶段的逻辑。根据第三方面,提供了一种用于处理深度神经网络的系统。该系统包括加速组件,该加速组件包括被布置在集成电路封装中的加速组件裸片和存储器堆栈。存储器堆栈包括大于约50GB/秒的存储器带宽和大于约20MB/秒/mW的功率效率。该系统还包括被配置在加速组件裸片上的多个神经引擎以及在存储器堆栈上的多个DRAM通道,DRAM通道中的每个DRAM通道被耦合到神经引擎。神经引擎包括用于实现深度神经网络的前向传播和后向传播阶段的逻辑。上面概括的功能性可以表现在各种类型的系统、设备、组件、方法、计算机可读存储介质、数据结构、图形用户界面呈现、制品等等中。提供本概要是为了以简化的形式引入概念的选择;这些概念在下面的具体实施方式部分中进一步描述。本
技术实现思路
部分不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。附图说明图1示出了包括软件平面和硬件加速平面的数据处理系统的概述。图2示出了图1的数据处理系统的操作的第一示例。图3示出了图1的数据处理系统的操作的第二示例。图4示出了对应于数据中心的图1的数据处理系统的一个实现。图5是图4的数据中心实现的更全面的描绘。图6示出了与图4中所示的相比实现服务器单元组件的一种替代方式。图7示出了与图4中所示的相比实现服务器单元组件的又一种方式。图8示出了与图1中所示的相比的一种替代数据处理系统,例如,它与图1中所示的相比而言使用不同的网络基础设施。图9是示出了图1的数据处理系统的一种操作方式的流程图。图10示出了用于管理图1的数据处理系统的管理功能性的一个实现的概述。图11提供了服务映射组件的一个请求驱动的操作方式的概述,所述服务映射组件是图10的管理功能性的组件。图12-图15示出了用于处理由驻留在主机组件上的租户功能性的实例所做出的对服务的请求的不同的相应选项。图16提供了图10的服务映射组件的另一后台相关的操作方式的概述。图17-图20示出了用于物理地实现图10的管理功能性的不同的相应架构。图21-图24示出了用于在图21的数据处理系统中配置硬件加速组件的不同的相应策略。图25示出了实现图1的硬件加速组件的一种方式。图26示出了包括单独的可配置域的硬件加速组件。图27示出了用于执行本地主机组件和相关联的本地硬件加速组件之间的数据传输的功能性。图28示出了在图25中引入的路由器的一个实现。图29示出了在图25中引入的传送组件的一个实现。图30示出了在图25中引入的3端口交换机的一个实现。图31示出了在图1中所示的主机组件的一个实现。图32提供了用于生成和应用多组件服务的功能性的概述;该功能性又包括多组件管理组件。图33示出了可以由图32的功能性产生和应用的一种类型的硬件加速组件的集合。图34示出了可以由图32的功能性产生和应用的另一种类型的硬件加速组件的集合。图35示出了产生多组件服务的功能解析组件的一个实现。图36示出了使用硬件加速组件的集合(collection)所实现的说明性多组件服务的更详细示例。图37示出了在图36的多组件服务的阶段之一中执行处理的功能性。图38示出了用于替换图36的硬件加速组件的集合中的模型以适应与不同模型相关联的请求的功能性。图39是示出图35的功能解析组件的一种操作方式的流程图。35。图40是示出实现多组件服务的硬件加速组件的集合内的一个硬件加速组件的操作的流程图。图41是示出处理实现多组件服务的硬件加速组件的集合中的故障的一种方式的流程图。图42是图示出示例特征值和自由形式表达式的图。图43A-图43C示出了高带宽存储器加速组件的各种实现的视图。图44示出了高带宽存储器加速组件的另一实现。图45A-图45C示出了三维存储器和加速组件的各种实现的视图。图46示出了包括高带宽存储器加速组件的服务器单元组件的实现。图47是示出图46的存储器管理组件的操作的流程图。图48是示出图46的存储器管理组件的另一操作的流程图。图49示出了被配置为执行机器学习分类服务的加速组件的实现。图50示出了用于机器学习分类的示例决策树。图51示出了加速组件和模型切片组件的实现。图52是示出图51的模型切片组件的操作的流程图。图53是示出图51的模型切片组件的另一操作的流程图。图54示出了包括顶部和下部的示例决策树。图55示出了深度神经网络的图解说明。图56示出了深度神经网络的后向传播的图解说明。图57示出了被配置为执行深度神经网络的前向传播和后向传播阶段的加速组件的实现。图58示出了图57的加速组件中的神经引擎的实现。遍及整个公开和附图,使用相同的标号来指代类似的组件和特征。100系列标号是指最初在图1中找到的特征,200系列标号是指最初在图2中找到的特征,300系列标号是指最初在图3中找到的特征,以此类推。具体实施方式本公开描述了包括硬件加速平面和软件平面的示例数据处理系统。描述硬件加速平面中的示例硬件加速组件。示例硬件加速组件包括被布置在集成电路封装中的加速组件裸片和存储器堆栈。存储器堆栈包括大于约50GB/秒的存储器带宽和大于约20MB/秒/mW的功率效率。多个神经引擎被配置在加速组件裸片上。神经引擎包括实现深度神经网络的前向传播和后向传播阶段的逻辑。作为初步事项,一些附图在一个或多个结构组件的上下文中描述了概念,所述结构组件被不同地被称为功能性、模块、特征、元件等。附图中示出的各种组件可以通过任何物理和有形机制——例如通过运行在计算机装备上的软件、硬件(例如,芯片实现的逻辑功能性)等和/或其任何组合以任何方式来实现。在一种情况下,所图示出的将附图中的各个组件分离成不同的单元可以反映对应的不同物理和有形组件在实际实现中的使用。替代地或附加地,可以由多于一个的实际物理组件来实现附图中图示出的任何单个组件。替代地或附加地,附图中的任何两个或更多单独组件的描述可以反映由单个实际物理组件执行的不同功能。其他附图以流程图的形式描述了概念。在这种形式中,某些操作被描述为构成为按照特定顺序执行的不同块。这样的实现是说明性的而非限制性的。本文中描述的某些块可以被组织在一起并且在单个操作中执行,某些块可以被分解成多个组件块,并且某些块可以按照与这里示出的本文档来自技高网
...
具有堆栈存储器的硬件加速器上的深度神经网络处理

【技术保护点】
一种用于在加速组件上处理深度神经网络的方法,所述加速组件包括被布置在集成电路封装中的加速组件裸片和存储器堆栈,所述存储器堆栈包括大于约50GB/秒的存储器带宽和大于约20MB/秒/mW的功率效率,所述方法包括:配置所述加速组件以执行所述深度神经网络的前向传播和后向传播阶段。

【技术特征摘要】
【国外来华专利技术】2015.06.29 US 14/754,3441.一种用于在加速组件上处理深度神经网络的方法,所述加速组件包括被布置在集成电路封装中的加速组件裸片和存储器堆栈,所述存储器堆栈包括大于约50GB/秒的存储器带宽和大于约20MB/秒/mW的功率效率,所述方法包括:配置所述加速组件以执行所述深度神经网络的前向传播和后向传播阶段。2.根据权利要求1所述的方法,其中所述加速组件包括现场可编程门阵列设备、大规模并行处理器阵列设备、图形处理单元以及专用集成电路中的一个或多个。3.根据权利要求1所述的方法,其中所述加速组件进一步包括中介器,并且所述加速组件裸片和所述存储器堆栈被布置在所述中介器上。4.根据权利要求1所述的方法,其中配置所述加速组件包括利用包括用于实现所述前向传播和所述后向传播阶段的逻辑的多个神经引擎来配置所述加速组件裸片。5.根据权利要求4所述的方法,其中所述神经引擎中的每一个神经引擎包括用于计算点积、导数、误差和非线性函数中的一个或多个的逻辑。6.根据权利要求4所述的方法,其中:DNN包括多个权重、输入激活和误差;所述神经引擎的每一个神经引擎包括储存元件;和配置所述加速组件包括:将所述权重、输入激活和误差存储在所述存储器堆栈中;和将所述权重、输入激活和误差流...

【专利技术属性】
技术研发人员:D·C·伯格D·邱E·钟A·R·帕特纳姆
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1