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

低时延集群计算制造技术

技术编号:10390830 阅读:80 留言:0更新日期:2014-09-05 16:19
实施例包括用于对分布式应用执行检查点的低时延机制。更具体地,本发明专利技术的实施例包括在集群中所包含的计算节点上执行第一应用,以产生第一计算数据,然后将第一计算数据存储在计算节点本地包含的易失性存储器中;基于启动的检查点,暂停第一应用的处理,并且将与暂停的第一应用对应的第一状态数据存储在易失性存储器中;将第一状态信息和第一计算数据存储在计算节点本地包含的非易失性存储器中;以及恢复处理所述暂停的第一应用,然后继续处理第一应用以产生第二计算数据,同时将第一状态信息和第一计算数据从非易失性存储器拉出到输入/输出(IO)节点。

【技术实现步骤摘要】
【国外来华专利技术】低时延集群计算
技术介绍
高性能计算(HPC)和集群计算涉及到连接各计算节点以形成能够解决复杂问题的分布式系统。这些节点可以是单个的台式计算机、服务器、处理器或能够托管单个计算实例的类似机器。更具体地,这些节点是由包括但不限于处理器、易失性存储器(RAM)、磁存储驱动器、主板、网络接口卡等硬件部件构成的。可扩展的HPC应用需要检查点能力。在分布式共享存储器系统中,检查点是一种帮助容忍导致失去长期运行的应用的工作效力的错误的技术。检查点技术有助于在故障的情况下保持系统一致性。随着集群尺寸增长,故障之间的平均时间减小,这需要应用来创建更频繁的检查点。这驱动了对于快速检查点能力的需求。【附图说明】通过随附的权利要求书、一个或多个示例性实施例的如下详细说明以及对应的附图,本专利技术的实施例的多个特征和优点将变得清晰,在附图中:图1包括本专利技术的实施例中的用于HPC的集群的示意图。图2包括本专利技术的实施例中的计算节点的示意图。图3包括本专利技术的实施例中的计算节点的易失性存储器的框图。图4-5包括本专利技术的实施例中的检查点处理的第一阶段的流程图。图6-7包括本专利技术的实施例中的检查点处理的第二阶段的流程图。【具体实施方式】在下面的说明中,阐述了多方面具体的细节,但是本专利技术的实施例可以在不具有这些具体细节的情况下实施。为避免使对本说明书的理解模糊,未详细示出公知的电路、结构和技术。“实施例”、“各个实施例”等表示如此描述的实施例可以包括特定的特征、结构或特点,但是不是每一个实施例必然包括该所述特定的特征、结构或特点。一些实施例可以具有针对其他实施例所描述的特征中的一些、全部或不包括。“第一”、“第二”、“第三”等描述了共同的对象并且表示提及类似对象的不同实例。这些形容词不暗示如此描述的对象必须以时间上或空间上的给定序列中、按级别或以任何其他方式。“连接”可以表示元件彼此直接物理或电接触,“耦合”可表示元件彼此配合或相互作用,但是它们可以或者可以不直接物理或电接触。而且,虽然相似或相同的标记可以用来在不同图中指示相同或相似的部件,这样做不意味着包括相似或相同标记的所有图都构成单个或相同的实施例。本专利技术的实施例包括用于对分布式应用执行检查点的低时延机制。这包括使得应用所经受的时延最小化的多步检查点过程。图1和图2 —起解决了包括计算节点以及计算节点本身的更详细的示例的集群。下面根据需要讨论两个图来描述本专利技术的各个实施例。图1包括实施例中的用于高性能计算的集群的示意图。分布式应用正在通过远程直接存储器存取(RDMA)使能网络115连接的多个计算节点110、111、112、113和114上运行。输入/输出(IO)节点120、121、122通过RDMA网络115连接到计算节点110、111、112、113、114且经由存储网络125连接到永久存储阵列130。虽然单独地示出,但是计算节点、IO节点和网络可以共享相同的硬件。过程管理器105控制应用的总流程。更具体地,“过程管理器”用来控制集群中的其他节点。例如,过程管理器105可用于远程启动在集群中多个机器上的过程,设置集群环境并且发起在消息传递接口(MIP)作业中使用的过程,提供与MPI任务和分布式计算有关的命令库,以规划的间隔启动检查点,等等。MPI是允许计算机彼此通信的应用程序接口(API)规范。该规范定义了可用于集群计算中的库例程的核心的语法和语义。在实施例中,过程管理器105与计算节点和IO节点通信以启动检查点,来协调在检查点期间的节点的活动,并且接收检查点完成的指示。图2包括本专利技术的实施例中的计算节点210的示意图。对于每个计算节点,一个或多个处理器201、202、203、204可用于处理一个或多个应用过程,诸如分布式应用的过程。处理器201、202、203、204可以经由RDMA网络接口卡(NIC) 220或其他RDMA硬件与易失性存储器(例如,RAM) 215耦合。易失性存储器215还可以与非易失性存储器区域(NMR)(例如,闪存、应用优化非易失性存储器等)225耦合。因此,各计算节点为应用提供对低时延NMR的存取。NMR可本地包含在计算节点(如图2所示)内或可通过RDMA网络存取。RDMANIC220将计算节点210和IO节点与RDMA网络115耦合并且能够直接存取NMR225和/或易失性存储器215。RDMA通过实现与应用存储器直接进行数据传递来支持零复制网络化,消除了在应用存储器(例如,存储器215)与操作系统中的数据缓冲器之间复制数据的需要。这种传递不需要通过CPU、高速缓存或上下文开关来完成工作,并且传递与其他系统操作并行地继续。当应用执行RDMA读或写请求时,应用数据直接输送到网络,降低了时延。在实施例中,当需要检查点时,过程管理器105对包括在处理器201、202、203和204中的应用发信号。在接收到来自过程管理器105的信号之后,应用暂停外部通信且将所有计算的状态保存到NMR225中。可以利用诸如NMR225的本地NMR的总线传递,或者利用本地或远程NMR的RDMA NIC220,将状态数据写入NMR225。本地NMR225的RDMA NIC220的使用可以免除主机处理器(例如,处理器201)控制总线传递的需要。一旦完成,应用过程应答过程管理器105:它们已经完成了它们的检查点任务并且继续进行进一步的计算。这完成了检查点过程的第一阶段。CPU(201、202、203和204)或RDMA还可以将与在计算节点210上处理的应用有关的过程数据从易失性存储器215传递到NMR225。在计算状态和处理数据已经保存到NMR225之后,开始检查点过程的第二阶段。然后,IO节点120、121、122跨越RDMA网络115来访问NMR225。状态信息和过程数据从一个或多个NMR225中读出且写入存储阵列130。将检查点的最终完成通知过程管理器105,这允许重新使用NMR (例如,225)。虽然NMR225的使用提供了较大的容错恢复,但是在检查点过程的第一阶段使用非易失性存储器可由易失性存储器替代,从而减少时延,但是付出更大的代价。因此,常规的系统可以将计算状态保存到永久存储中。对于分布式应用,这通常意味着,利用分布式文件系统将状态信息保存到远程定位的硬盘驱动器。结果,防止应用继续计算,直到检查点数据已经跨越时延诱发网络而写入永久存储。作为对比,本专利技术的实施例使用多阶段检查点过程和RDMA来减少执行检查点所需的时延(从应用的视角看到的)。这允许更频繁地出现检查点,这对于将应用扩展到大的集群尺寸(例如,千兆兆级)是很重要的。通过利用RDMA技术,实施例避免了在将数据从计算节点复制到存储阵列的同时与用于处理电力的应用竞争。此外,常规的系统不将快速的辅助存储器区域(例如,NMR225)的使用与RDMA协议结合。同时,这些特征允许应用将数据快速地检查点到较小的、可负担的存储器区域,后台RDMA传递将数据卸载给较大的、较廉价的存储单元。本专利技术的实施例可以用于各种产品,包括在集群和HPC系统中涉及到的MPI产品。现在解决更详细的实施例。图3包括在本专利技术的实施例中的计算节点的易失性存储器的框图。图4-5包括本专利技术的实施例中的检查点处理的第一阶段的流程图。图6-7包括本专利技术的实本文档来自技高网...
低时延集群计算

【技术保护点】
一种方法,包括:在包含于集群中的计算节点上处理第一应用,以产生第一计算数据,然后将所述第一计算数据存储在所述计算节点中本地包含的易失性存储器中;基于启动的检查点来暂停所述第一应用的处理;将所述第一计算数据和与暂停的第一应用对应的第一状态数据存储在所述计算节点本地包含的非易失性存储器中;以及恢复所述暂停的第一应用的处理,然后继续处理所述第一应用以产生第二计算数据,同时将第一状态信息和所述第一计算数据从所述非易失性存储器拉出到输入/输出(IO)节点。

【技术特征摘要】
【国外来华专利技术】1.一种方法,包括: 在包含于集群中的计算节点上处理第一应用,以产生第一计算数据,然后将所述第一计算数据存储在所述计算节点中本地包含的易失性存储器中; 基于启动的检查点来暂停所述第一应用的处理; 将所述第一计算数据和与暂停的第一应用对应的第一状态数据存储在所述计算节点本地包含的非易失性存储器中;以及 恢复所述暂停的第一应用的处理,然后继续处理所述第一应用以产生第二计算数据,同时将第一状态信息和所述第一计算数据从所述非易失性存储器拉出到输入/输出(IO)节点。2.如权利要求1所述的方法,包括:利用所述易失性存储器的直接存储器存取(DMA)将所述第一状态信息和所述第一计算数据中的一个存储在所述非易失性存储器中。3.如权利要求2所述的方法,包括: 将所述第二计算数据存储在所述易失性存储器中;以及 利用所述计算节点所包含的至少一个处理器而不利用所述易失性存储器的DMA,将所述第二计算数据存储在所述非易失性存储器中。4.如权利要求3所述的 方法,包括: 判定对所述易失性存储器的未决的存取请求的数量满足阈值;以及 基于判定所述未决的存取请求的数量满足所述阈值,利用所述处理器将所述第二计算数据存储在所述非易失性存储器中。5.如权利要求1所述的方法,包括: 将所述第一计算数据存储在所述易失性存储器的第一部分中; 在所述计算节点上处理所述第一应用以产生第三计算数据,然后将所述第三计算数据存储在所述易失性存储器的第三部分中,所述第三部分与所述第一部分不重叠; 利用所述易失性存储器的直接存储器存取(DMA)将所述第一计算数据存储在所述非易失性存储器中,同时利用所述计算节点中所包含的至少一个处理器而不利用所述易失性存储器的DMA将所述第三计算数据存储在所述非易失性存储器中。6.如权利要求1所述的方法,包括:利用远程直接存储器存取(RDMA)将所述第一状态信息和所述第一计算数据从所述非易失性存储器拉出到所述IO节点。7.如权利要求1所述的方法,包括:将所述第一计算数据存储在所述易失性存储器的第一区段中,以及将所述第二计算数据存储在所述易失性存储器的第二区段中。8.如权利要求7所述的方法,包括:将所述第二计算数据存储在所述易失性存储器的所述第二区段中,同时将所述第一计算数据存储在所述非易失性存储器中。9.如权利要求7所述的方法,包括:为所述第一应用保留所述易失性存储器的所述第一区段和第二区段。10.如权利要求1所述的方法,其中将所述第一状态信息和所述第一计算数据从所述非易失性存储器拉出到所述IO节点包括:所述IO节点读取所述第一状态信息和所述第一计算数据。11.如权利要求1所述的方法,包括:经由写操作,将所述第一状态信息和所述第一计算数据从所述IO节点推入到非易失性存储阵列,同时处理所述第一应用。12.如权利要求1所述的方法,包括:在所述第一应用的处理暂停的同时,将所述第一状态信息和所述第一计算数据存储在所述非易失性存储器中。13.驻留于一个或多个存储介质中的指令集,所述指令集由至少一个处理器执行以实现如权利要求1至12所述的方法。14.一种系统,包括: 计算节点,其包含在集群中; 在所述计算节点中本地包含的易失性存储器和非易失性存储器;以及 其...

【专利技术属性】
技术研发人员:M·S·赫夫蒂A·戴维斯R·伍德拉夫S·苏尔SW·程
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1