当前位置: 首页 > 专利查询>英特尔公司专利>正文

调度高度并行的应用制造技术

技术编号:18580379 阅读:14 留言:0更新日期:2018-08-01 14:45
用于调度由高性能计算系统执行的高度并行的应用的系统和方法。示例处理系统可以包括:控制寄存器和通信耦合到控制寄存器的处理核。处理核可以配置成接收指定应用的预期运行时间和所请求的节点集群的节点数目的节点分配请求;鉴于节点分配请求和所述多个节点上的当前负载,确定要分配给所述应用的实际节点数目,其中要分配给所述应用的实际节点数目优化集群负载准则;以及使用控制寄存器通知应用实际节点数目。

Application of scheduling high parallel

A system and method for scheduling highly parallel applications executed by high-performance computing systems. The example processing system can include: control registers and communication cores coupled to control registers. A processing kernel can be configured to receive a node allocation request to receive the expected run time of the specified application and the number of nodes of the node cluster requested; in view of the node allocation request and the current load on the multiple nodes, the number of actual nodes to be assigned to the application should be assigned to the actual number of nodes to be assigned to the application. It optimizes cluster load criteria; and uses control registers to notify the actual number of applications.

【技术实现步骤摘要】
【国外来华专利技术】调度高度并行的应用本公开一般地涉及高性能计算机(HPC)系统,并且更具体地,涉及用于调度高度并行的应用的指令集架构支持。
技术介绍
高性能计算(HPC)系统可以包括被分组到一个或多个计算集群中的多个计算节点。计算节点可以由控制节点管理。附图说明通过示例的方式而不是通过限制的方式来说明本公开,并且在结合附图考虑时可以参考以下详细描述来更加全面地理解本公开。图1示意性地图示了依照本公开的一个或多个方面操作的示例高性能计算系统的框图。图2A-2B示意性地图示了依照本公开的一个或多个方面的各种集群配置。图3是依照本公开的一个或多个方面操作的示例处理系统的框图。图4描绘了依照本公开的一个或多个方面的用于确定节点集群中的应用配置的示例方法400的流程图。图5图示了依照本公开的一个或多个方面的打包数据类型。图6A图示了依照本公开的一个或多个方面的处理器微架构的元件。图6B图示了依照本公开的一个或多个方面的处理器微架构的元件。图7是依照本公开的一个或多个方面操作的处理器的框图。图8是依照本公开的一个或多个方面操作的处理器的框图。图9是依照本公开的一个或多个方面操作的片上系统的框图。图10是依照本公开的一个或多个方面操作的计算机系统的框图。图11图示了针对依照本公开的一个或多个方面操作的计算系统的另一示例框图。图12图示了以依照本公开的一个或多个方面操作的计算系统的示例形式的机器的图解表示。具体实施方式本文描述的是用于调度高度并行的应用的系统和方法。高性能计算(HPC)系统可以包括被分组到一个或多个计算集群中的多个计算节点。驻留在专用节点上或计算节点之一上的批量调度器可以用于调度计算作业(还称为应用)以用于在计算节点上执行。可以请求一个或多个计算节点以用于执行给定应用,并且可以指定预期的运行时间。调度器可以利用这些和其它执行参数来向计算节点指派应用以供执行。调度器可以采用最大化计算节点的使用水平的调度策略,以便增加总体系统成本效率。然而,在常用实现方式中,计算节点的平均使用极少超过其容量的80%,因为在给定时刻可用于调度的节点数目可能未必等于要调度的一个或多个应用的所请求的节点数目之和。换言之,可用节点数目与分配到一个或多个应用的节点数目之间的差异可能小于调度等待执行的另一应用将必需的节点数目。计算节点的利用不足不利地影响总体系统成本效率,因为甚至不活跃的计算节点也消耗电能以用于其操作和冷却。以80%的容量利用消耗20和40兆瓦(MW)电能之间的计算节点集群意味着每小时将损失4-8MW的电能。本公开通过提供对批量调度方法的指令集架构(ISA)支持来解决以上指出的和其它的缺陷,所述批量调度方法使得应用在运行时处动态地增加或减小应用足迹(即计算节点的数目)。依照本公开的一个或多个方面,执行批量调度器的处理器可以实现用于存储反映当前应用配置的存储器数据结构(例如向应用指派的节点的标识符)的地址的控制寄存器。处理器还可以实现若干指令以操纵控制寄存器。这样的指令可以包括用于读取配置的负载配置(LDCONFIG)、用于存储配置的存储配置(STCONFIG),以及用于请求应用配置数据结构的锁定的请求配置所有权(REQCONFIG)。依照本公开的一个或多个方面操作的批量调度器可以被编程以确定优化某个集群负载准则的集群配置。在说明性示例中,批量调度器可以从等待被执行或正在由高性能计算系统执行的应用接收节点分配请求。节点分配请求可以指定预期的应用和用于执行该应用的所请求的节点数目。响应于接收到节点分配请求,批量调度器可以确定优化所选集群负载准则的集群配置。批量调度器然后可以利用处理器控制寄存器来通知应用已经被指派给该应用的实际节点数目,如本文以下更加详细描述的。本文以下通过示例的方式而不是通过限制的方式详细描述以上引用的方法和系统的各种方面。现在参照图1,示例高性能计算系统1000可以包括通过网络135互连的主节点110和多个计算节点120A-120N。主节点110可以执行批量调度器140,批量调度器140可以例如经由消息传递接口(MPI)消息150向节点120A-120N中的每一个进行通信。主节点110可以实现用于对等待被调度的应用170A-170K进行排队的输入作业队列160。每一个应用可以通过相应的应用标识符、为了执行该应用所请求的计算节点数目和应用的预期运行时来描述。批量调度器140可以被编程以确定优化某个集群负载准则的集群配置。如通过图2A示意性图示的,批量调度器140可以生成应用170A-170K的多个组合,并且选择最小化在任何给定时间保持未被指派给任何应用的节点数目的组合。可替换地,批量调度器140可以选择最小化在给定时间段内保持未被使用的总体处理容量的组合。图2示意性地图示了调度要由多个计算节点120A-120N在某个时间段内执行的多个应用170A-170K的示例。如图2A中所示,常规的调度算法可能产生具有显著水平的未被使用的处理容量(被标注为块180)的调度。由于一些应用(例如客户端-服务器应用)可以具有可容易地适配于动态改变的节点数目的架构,因此批量调度器140可以通过采用使得应用在运行时处动态地增加或减小应用足迹(即计算节点数目)的调度方法来改进集群效率。当与常规方法相比时,这样的调度方法可以产生更加高效的调度,其进一步最小化未被使用的处理容量的水平,如通过图2B示意性图示的。图3示意性地图示了依照本公开的一个或多个方面操作的示例处理系统的框图。如通过图3示意性图示的,依照本公开的一个或多个方面,处理系统100可以包括为批量调度方法提供ISA支持的一个或多个处理器102,该批量调度方法命令应用在运行时处动态地增加或减小应用足迹。在图3的说明性示例中,处理器102包括配置成执行某个指令集的指令的一个或多个执行单元408。处理器102耦合到处理器总线410,处理器总线410在处理器102与系统100的其它组件之间传输数据信号。系统100的其它元件(例如图形视频卡412、存储器控制器中枢416、存储器420、I/O控制器中枢430、无线收发器426、闪存BIOS428、网络控制器434、音频控制器436、串行扩展端口438、遗留I/O控制器440等)可以执行对熟悉本领域的人员而言公知的其常规功能。每一个处理器102可以包括多个寄存器,包括通用寄存器和专用寄存器。在某些实现方式中,处理系统100还可以包括图3中未示出的各种其它组件。本文以下呈现处理系统100的各种组件的各种详细的描述。处理器102可以包括控制寄存器122,控制寄存器122可以用于存储反映当前应用配置的存储器数据结构的地址。在说明性示例中,应用配置数据结构可以存储应用标识符和要被指派用于执行应用的节点数目。在说明性示例中,应用配置数据结构可以最初由应用创建,该应用可以记录所请求的节点数目。批量调度器可以最终修改被指派给应用的节点数目,以试图优化集群负载准则。可替换地,应用配置数据结构可以由批量调度器创建,批量调度器可以记录被指派给应用的节点数目。应用配置数据结构的创建器可以使用STCONFIG指令在控制寄存器122中存储数据结构的地址。应用可以使用LDCONFIG指令读取控制寄存器122的内容,并且可以检索存储用于该应用的节点的当前配置的数据结构的本文档来自技高网...

【技术保护点】
1. 一种处理系统,包括:控制寄存器;以及通信耦合到控制寄存器的处理核;其中处理核用于:接收指定应用的预期运行时间和所请求的节点集群的节点数目的节点分配请求;鉴于节点分配请求和所述多个节点上的当前负载,确定要分配给所述应用的实际节点数目,其中要分配给所述应用的实际节点数目优化集群负载准则;并且使用控制寄存器通知所述应用实际节点数目。

【技术特征摘要】
【国外来华专利技术】2015.12.21 US 14/9763601.一种处理系统,包括:控制寄存器;以及通信耦合到控制寄存器的处理核;其中处理核用于:接收指定应用的预期运行时间和所请求的节点集群的节点数目的节点分配请求;鉴于节点分配请求和所述多个节点上的当前负载,确定要分配给所述应用的实际节点数目,其中要分配给所述应用的实际节点数目优化集群负载准则;并且使用控制寄存器通知所述应用实际节点数目。2.权利要求1所述的处理系统,其中通知所述应用实际节点数目包括:在用于存储与所述应用相关联的节点配置的存储器数据结构中存储实际节点数目;以及在控制寄存器中存储存储器数据结构的地址。3.权利要求2所述的处理系统,其中在控制寄存器中存储存储器数据结构的地址包括获取控制寄存器的锁定。4.权利要求1所述的处理系统,其中处理核还用于:使得应用使用实际节点数目来执行。5.权利要求1所述的处理系统,其中集群负载准则反映在某个时间段内保持未被指派给任何当前运行的应用的节点数目。6.权利要求1所述的处理系统,其中集群负载准则反映在某个时间段内保持未被指派给任何运行的应用的节点数目乘以时间段。7.权利要求1所述的处理系统,其中确定实际节点数目还包括:生成要调度的多个应用组合;确定针对每一个所生成的组合的集群负载准则的值;以及选择与集群负载准则的最优值相关联的组合。8.权利要求1-7中任一项所述的处理系统,其中处理系统被实现为片上系统(SoC)。9.一种方法,包括:通过处理设备接收指定应用的预期运行时间和所请求的节点集群的节点数目的节点分配请求;鉴于节点分配请求和所述多个节点上的当前负载,确定要分配给所述应用的实际节点数目,其中要分配给所述应用的实际节点数目优化集群负载准则;以及使用处理系统的控制寄存器通知所述应用实际节点数目。10.权利要求9所述的方法,其中通知所述应用实际节点数目包括:在用于存储与所述应用相关联的节点配置的存储器数据结构中存储实际节点数目;以及在控制寄存器中存储存储器数据结构的地址。11.权利要求10所述的方法,其中在控制寄存器中存储存储器数据结构的地址包括获取控制寄存器的锁定。12.权利要求9所述的方法,还包括:使得应用使用实际节点数目来执行。13.权利要求9所述的方法,其中集群负载准则反映在某个时间段内保持未被指派给任何当前运行的应用的节点数目。14.权利要求9所述的方法,其中集群负载准则反映在某个时间段内保持未被指派给任何运行的应用的节点数目...

【专利技术属性】
技术研发人员:P蒂里E奥尔德艾哈迈德瓦尔
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1