【技术实现步骤摘要】
用于使用多个存储器通道来降低平台中的加速器-存储器访问成本的技术
技术介绍
近年来,数据分析和“大数据”处理已变得日益重要。数据分析和大数据工作负荷需要处理大量数据。处理此类大量数据的一个办法是跨大量服务器分配处理任务且并行地处理工作负荷。例如,ApacheHadoop软件框架使得能够跨大量商品服务器来分配任务,以及使用映射归约(MapReduce)来处理工作负荷。虽然Hadoop和映射归约提供极好的可缩放性,但它们需要极大量的服务器内通信(当以大规模实现时),且不能高效地使用处理器和存储器资源。诸如用于数据分析和大数据的一些计算和存储器带宽密集型工作负荷难以使用处理器核来获得所需性能水平。为解决此问题,已开发出所谓的“加速器”。加速器最初被实现为耦合至CPU(中央处理单元)的组件,并作为具有其自身地址空间的IO(输入输出)设备来管理,这需要显著地IO通信水平来在加速器地址空间与运行在系统存储器地址空间的应用之间传递数据。最近,已提出采用具有嵌入式加速器的片上系统(SoC)架构的CPU。附图说明随着通过在结合所附附图时参考以下具体实施方式使本专利技术的前述多个方面和许多伴随的优点变得更好地被理解,本专利技术的前述多个方面和许多伴随的优点将更容易领会,其中,遍及各个视图,除非另外指定,否则相同的附图标记指相同的部件:图1是第一多插槽非统一存储器存取(NUMA)平台架构的示意图,该第一多插槽NUMA平台架构包括具有两个片上加速器的一对处理器;图2是第二多插槽NUMA平台架构的示意图,其中每个NUMA节点包括耦合至两个芯片外加速器的处理器;图3是例示出根据一个实施例的 ...
【技术保护点】
1.一种在计算平台上执行的方法,所述计算平台包括多个加速器以及通过多个存储器通道来访问的多个存储器设备,所述方法包括:响应于用于访问要被卸载至加速器的功能的作业提交,所述功能用于访问一个或多个缓冲器,所述一个或多个缓冲器全体需要经由所述多个存储器通道之中的多个存储器通道来访问,标识具有所述功能的可用实例的加速器;针对每个所标识加速器,计算经由所述多个存储器通道访问所述一个或多个缓冲器的合计成本;以及选择具有最小合计成本的加速器来向其卸载所述功能。
【技术特征摘要】
2017.09.22 US 15/713,0011.一种在计算平台上执行的方法,所述计算平台包括多个加速器以及通过多个存储器通道来访问的多个存储器设备,所述方法包括:响应于用于访问要被卸载至加速器的功能的作业提交,所述功能用于访问一个或多个缓冲器,所述一个或多个缓冲器全体需要经由所述多个存储器通道之中的多个存储器通道来访问,标识具有所述功能的可用实例的加速器;针对每个所标识加速器,计算经由所述多个存储器通道访问所述一个或多个缓冲器的合计成本;以及选择具有最小合计成本的加速器来向其卸载所述功能。2.如权利要求1所述的方法,其特征在于,所述计算平台是多插槽计算平台,所述多插槽计算平台具有非统一存储器存取NUMA架构,所述NUMA架构包括共享虚拟存储器SVM,所述一个或多个缓冲器在逻辑上被存储在所述SVM中,并且其中所述多个加速器的至少一部分是具有SVM能力的加速器。3.如权利要求1或2所述的方法,其特征在于,进一步包括:确定所述多个加速器与所述多个存储器通道之间的互连拓扑;基于所述互连拓扑来构建包括多个单元的成本矩阵,其中每个单元是用所述多个存储器通道的加速器访问所述多个存储器通道中的存储器通道的成本来填充的;以及使用所述成本矩阵来计算被标识的所述加速器中的每个加速器的合计成本。4.如权利要求3所述的方法,其特征在于,进一步包括:确定与所述一个或多个缓冲器相关联的存储器页的数量,所述一个或多个缓冲器通过所述多个存储器通道中的每个存储器通道来访问;以及通过将成本矩阵中加速器用于访问存储器通道的成本乘以与通过此存储器通道访问的所述一个或多个缓冲器相关联的存储器页的数量来计算经由此存储器通道来访问存储器页的成本。5.如权利要求3所述的方法,其特征在于,进一步包括:在所述计算平台的正进行运行时操作期间,使用动态确定的已更新成本来更新一个或多个单元。6.如权利要求5所述的方法,其特征在于,通过监视沿所述互连拓扑中的一个或多个链路的带宽以及基于所监视带宽应用试探法以更新成本,来确定成本被更新的至少一个单元或者所述一个或多个单元的已更新成本。7.如前述权利要求中的任一项所述的方法,其特征在于,进一步包括:i.针对所述一个或多个缓冲器中的每个缓冲器,标识被分配至此缓冲器的一个或多个存储器页;ii.针对所述一个或多个存储器页中的每个存储器页,标识用于访问此存储器页的存储器通道;以及iii.针对所述加速器中的每个加速器,确定经由所述存储器通道中的每个存储器通道来访问存储器页的相应成本,其中通过以下方式来确定给定加速器的合计成本,针对i中标识的每个存储器页,对此加速器访问此存储器页的成本进行求和。8.如前述权利要求中的任一项所述的方法,其特征在于,所述计算平台包括处理器,所述处理器包括指令集架构ISA,所述指令集架构ISA具有指令,针对所述一个或多个缓冲器中的每个缓冲器执行一次所述指令以标识此缓冲器使用的存储器页以及用于访问每个存储器页的存储器通道。9.如权利要求8所述的方法,其特征在于,所述指令具有:在第一寄存器中的用于存储指向数据结构的指针的第一操作数;在第二寄存器中的用于存储缓冲器的地址的第二操作数;以及在第三寄存器中的用于存储缓冲器的长度或者由缓冲器跨越的存储器页的数量的第三操作数,其中所述指令被配置成在执行之际使用一数据来填充所述数据结构,所述数据针对所述一个或多个存储器页中的每个存储器页来标识用于访问此存储器页的存储器通道。10.如权利要求8所述的方法,其特征在于,所述处理器采用基于ARM的架构。11.一种具有非统一存储器存取NUMA架构的多插槽计算平台,包括:多个NUMA节点,每个NUMA节点包括,处理器,所述处理器包括多个组件,所述多个组件包括,多个处理器核;至少一个存储器控制器,所述至少一个存储器控制器具有多个存储器通道;插槽至插槽接口;至少一个加速器;以及内部互连电路,所述内部互连电路耦合通信中的所述多个组件;多个存储器设备,所述多个存储器设备被通信地耦合至所述处理器上的多个存储器通道;以及插槽至插槽互连电路系统,所述插槽至插槽互连电路系统用于实现诸对处理器之间的通信;其中,在操作之际,所述多插槽计算平台被配置成,响应于经由运行在所述多插槽计算平台上的软件进行的用于访问要被卸载至加速器的功能的作业提交,所述功能用于访问一个或多个缓冲器,所述一个或多个缓冲器全体需要经由所述多个存储器通道之中的多个存储器通道来访问,标识具有所述功能的可用实例的加速器;针对每个所标识加速器,计算经由所述多个存储器通道访问被标识的所述一个或多个缓冲器的合计成本;以及选择具有最小合计成本的所述加速器来向其卸载所述功能。12.如权...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。