利用针对本地检查点的卸载程序模型的制作方法_5

文档序号:9921876阅读:来源:国知局
实现为相应域。
[0272] 35、根据条款29至31中的任一项所述的方法,其中,所述多个源经由卸载架构耦合 到所述多个宿。
[0273] 36、根据条款35所述的方法,其中,所述多个宿被分组为多个宿的集合,其中,每一 个宿的集合被实现为相应域。
[0274] 37、根据条款29至36中的任一项所述的方法,其中,所述多个源经由作业调度架构 连接到作业调度器,并且其中,所述作业调度器将作业调度到所述多个源。
[0275] 38、根据条款29至36中的任一项所述的方法,其中,所述多个源互连到一个或多个 作业调度器,并且其中,所述一个或多个作业调度器、所述多个源以及所述多个宿占有层次 中的相应级别,其中所述多个宿占有所述层次中的最低级别。
[0276] 39、根据条款38所述的方法,其中,所述计算环境具有物理层次,所述物理层次具 有最低级别,并且其中,所述多个宿包括占有所述物理层次的所述最低级别的计算实体,所 述多个源包括占有所述物理层次中的、由所述多个宿占有的所述物理层次中的所述级别之 上的级别的计算实体,并且所述一个或多个作业调度器是由占有所述物理层次中的、由所 述多个宿占有的所述物理层次中的所述级别之上的级别的计算实体来实现的。
[0277] 40、根据条款29至39中的任一项所述的方法,其中,至少一个源包括服务器平台中 的主机处理器,并且所述宿的至少一部分包括安装在服务器平台中的集成众核(MIC)设备 中的处理器核。
[0278] 41、一种具有存储在其上的指令的至少一个有形的非暂时性机器可读介质,所述 指令被配置为由所述多个计算实体执行,以实现根据条款29至40中的任一项所述的方法。
[0279] 42、一种服务器平台,包括:
[0280] 耦合到主机存储器的主机处理器;
[0281 ]通信地耦合到所述主机处理器的多个扩展槽;
[0282] 安装在相应的扩展槽中的一个或多个集成众核(MIC)设备,每一个MIC设备包括多 个处理器核和板载存储器;以及
[0283] 网络适配器,所述网络适配器被安装在扩展槽中或者被实现为通信地耦合到所述 主机处理器的部件;以及
[0284] 用于进行以下各项操作的单元,
[0285] 将所述主机处理器配置为源以及将在所述MIC设备中的所述多个处理器核的至少 一部分配置为宿;
[0286] 配置所述板载MIC存储器和所述主机存储器之间的存储器映射;
[0287] 管理在所述主机处理器上的对包括可执行代码的作业的执行;
[0288] 将所述可执行代码的段卸载到所述多个宿;
[0289] 针对被卸载到宿的每个代码的段,发送卸载上下文信息,以供在耦合到所述网络 适配器的、可经由网络访问的非易失性存储设备上存储,所述卸载上下文信息用于标识被 卸载的所述代码的段以及其被卸载到的所述宿;
[0290] 在所述宿上执行所卸载的代码段以生成结果数据;
[0291 ]将所述结果数据存储在可由所述主机处理器访问的存储器缓冲器中;
[0292] 检测到宿未能成功地执行被卸载到所述宿的代码的段,以及响应于此,
[0293] 取回先前存储的、与卸载到所述宿的所述代码的段相对应的所述卸载上下文信 息;以及
[0294] 将所述代码的段卸载到另一个宿以进行执行。
[0295] 43、根据条款42所述的服务器平台,还包括用于进行以下各项操作的单元:
[0296] 经由所述源来执行所述作业的第一部分;
[0297] 在所述作业的执行期间,检测要卸载的、包括一个或多个第一函数的第一代码段;
[0298] 标识所述第一代码段要卸载到的第一宿;
[0299] 构造第一卸载上下文,所述第一卸载上下文包括第一宿的地址、所述第一代码段 或者用于标识所述一个或多个第一函数的标记中的一个、针对所述一个或多个第一函数的 一个或多个函数参数、以及用于映射经由所述一个或多个第一函数的执行所生成的结果数 据要被写入到的存储器缓冲器的信息;
[0300] 向所述第一宿传送所述第一卸载上下文;
[0301] 在非易失性存储设备中存储与所述第一卸载上下文相对应的第一卸载上下文对 象;
[0302] 经由所述第一宿使用所述一个或多个函数参数来执行所述一个或多个第一函数 以生成结果数据;
[0303] 向所述存储器缓冲器写入所述结果数据;以及
[0304] 继续由所述源来执行所述作业,如同所述源执行了所述第一函数一样。
[0305] 44、根据条款43所述的服务器平台,还包括用于进行以下各项操作的单元:
[0306] 在所述作业的执行期间,检测要卸载的、包括一个或多个第二函数的第二代码段;
[0307] 标识所述第二代码段要卸载到的第二宿;
[0308] 构造第二卸载上下文,所述第二卸载上下文包括第二宿的地址、所述第二代码段 或者用于标识所述一个或多个第二函数的标记中的一个、针对所述一个或多个第二函数的 一个或多个函数参数、以及用于映射经由所述一个或多个第二函数的执行所生成的结果数 据要被写入到的存储器缓冲器的信息;
[0309] 向所述第二宿发送所述第二卸载上下文;
[0310] 在非易失性存储设备中存储与所述第二卸载上下文相对应的第二卸载上下文对 象;
[0311] 检测到所述第二宿已失败或者检测到所述第二宿未能完成对所述第二代码段的 执行,以及响应于此
[0312] 出现以下行为中的一项行为:接收到用于标识所述第二宿已失败的信息、检测到 所述第二宿已失败、或者检测到在所述第二宿上的所述第二代码段的执行导致了错误,以 及响应于此,
[0313] 从非易失性存储设备取回所述第二卸载上下文对象;
[0314]利用所述第二卸载上下文对象来构造第三卸载上下文,所述第三卸载上下文包括 第三宿的地址、所述第二代码段或者用于标识所述一个或多个第二函数的标记中的一个、 针对所述一个或多个第二函数的一个或多个函数参数、以及用于映射经由所述一个或多个 第二函数的执行所生成的结果数据要被写入到的存储器缓冲器的信息;
[0315]向所述第三宿发送所述第三卸载上下文;
[0316]在非易失性存储设备中存储与所述第三卸载上下文相对应的第三卸载上下文对 象;
[0317]经由所述第三宿使用所述一个或多个函数参数来执行所述一个或多个第二函数 以生成结果数据;
[0318]向所述存储器缓冲器写入所述结果数据;以及
[0319]继续由所述源来执行所述作业,如同所述源执行了所述一个或多个第二函数一 样。
[0320] 45、根据条款44所述的系统,还包括用于实现用来检测宿的失败的心跳监控方案 的单元。
[0321] 46、根据条款44或45所述的系统,还包括用于实现超时定时器,以检测在所述第二 宿上的所述第二代码段的执行已导致了错误的单元。
[0322] 47、根据条款14至18中的任一项所述的服务器平台,其中,所述服务器平台包括双 插槽服务器,所述双插槽服务器包括第一插槽和第二插槽,其中,每一个插槽包括耦合到相 应的主机存储器中的相应的主机处理器以及通信地耦合到所述主机处理器的至少一个扩 展槽,并且其中,条款42中的所述主机处理器和主机存储器包括在所述第一插槽中的第一 主机处理器和第一主机存储器。
[0323] 48、根据条款47所述的服务器平台,其中,所述第一插槽和所述第二插槽中的每一 个插槽包括相应的MIC设备被安装在其中的一个或多个扩展槽,并且其中,所述第一插槽和 所述第二插槽中的所述扩展槽中安装的所述MIC设备的所述处理器核中的所述宿被实现为 单域。
[0324] 49、根据条款48所述的服务器平台,其中,所述第一插槽和所述第二插槽中的每一 个插槽包括相应的MIC设备被安装在其中的一个或多个扩展槽,还针对所述第一插槽和所 述第二插槽中的每一个插槽,包括用于进行以下各项操作的单元:
[0325] 将在所述插槽中的所述主机处理器配置为源以及将在所述MIC设备中的所述多个 处理器核的至少一部分配置为宿;
[0326] 针对在所述插槽的扩展槽中安装的每一个MIC设备,配置所述板载MIC存储器和所 述主机存储器之间的存储器映射;
[0327] 管理在所述主机处理器上的对包括可执行代码的作业的执行;
[0328] 将所述可执行代码的段卸载到所述多个宿;
[0329] 针对被卸载到宿的每个代码的段,发送卸载上下文信息,以供在耦合到所述网络 适配器的、可经由网络访问的非易失性存储设备上存储,所述卸载上下文信息用于标识被 卸载的所述代码的段以及其被卸载到的所述宿;
[0330] 在所述宿上执行所卸载的代码段以生成结果数据;
[0331 ]将所述结果数据存储在可由所述主机处理器访问的存储器缓冲器中;
[0332] 检测到宿未能成功地执行被卸载到所述宿的代码的段,以及响应于此,
[0333] 取回先前存储的、与被卸载到所述宿的所述代码的段相对应的所述卸载上下文信 息;以及
[0334] 将所述代码的段卸载到另一个宿以进行用执行。
[0335] 50、根据条款49所述的服务器平台,其中,与所述第一插槽的所述扩展槽中安装的 所述一个或多个MIC设备的所述处理器核相对应的所述宿被实现在由所述第一源管理的第 一域中,并且其中,与所述第二插槽的所述扩展槽中安装的所述一个或多个MIC设备的所述 处理器核相对应的所述宿被实现在由所述第二源管理的第二域中。
[0336] 51、根据条款50所述的服务器平台,还包括用于执行检查点操作的单元,在所述检 查点操作之下,与所述第一插槽和所述第二插槽上并行执行的相应任务相对应的状态信息 被写入经由所述网络适配器访问的非易失性存储设备。
[0337] 尽管参照具体实现方式描述了一些实施例,但是根据一些实施例,其它实现方式 也是可能的。另外,附图中所示出的和/或本文所描述的要素或其它特征的排列和/或顺序 不需要按照所示出和描述的具体方式布置。根据一些实施例,多种其它排列也是可能的。
[0338] 在附图所示的每一个系统中,在一些情形中的要素可以都具有相同的附图标记或 者不同的附图标记,以表明所表示的元素可能是不同的和/或相同的。然而,要素可以足够 灵活,以具有不同的实现方式,并且适用于本文所示出或所描述的一些或全部系统。附图中 所示的各种要素可以是相同或不同的。哪一个被称为第一要素以及哪一个被称为第二要素 是随意的。
[0339]在说明书和权利要求书中,可以使用术语"親合"和"连接"以及它们的派生词。应 该理解的是,这些术语并不是指彼此的同义词。相反的,在具体实施例中,"连接"可以用于 指示两个或多个元件彼此直接物理接触或电接触。"耦合"可能意味着两个或多个元件直接 物理接触或电接触。但是,"耦合"还可以意味着两个或多个元件彼此没有直接接触,但是仍 然彼此协作或交互。
[0340]实施例是本发明的实现方式或示例。说明书中对"实施例"、"一个实施例"、"一些 实施例"或"其它实施例"的引用意味着结合实施例所描述的具体特征、结构或特性包括在 本发明的至少一些实施例中,但不必包括在所有的实施例中。出现的各种"实施例"、"一个 实施例"或"一些实施例"不必全都涉及相同的实施例。
[0341]并非本文描述和示出的所有部件、特征、架构、特性都需要包括在一具体实施例或 多个实施例中。如果(例如)说明书陈述了 "可以"、"可能"、"可能"或者"可能会"包括部件、 特征、结构或特性,则不必须包括该具体部件、特征、结构或特性。如果说明书或权利要求提 到了"一"或"一个"要素,这并不意味着仅有一个要素。如果说明书或权利要求提到了 "额外 的"要素,则并不排除存在超过一个额外的元件。
[0342]在此的算法一般被认为是得出期望结果的有条理的一系列动作或操作。这包括对 物理量的物理操作。通常,尽管不是必要的,但是这些量表现为能够被保存、传送、组合、比 较以及以其他方式操作的电或磁信号的形式。已经证实的是,主要出于惯用的原因,以位、 值、要素、符号、特征、术语、数字等指代这些信号在有些时候是便利的。然而,应该理解的 是,所有这些以及类似的术语都与适当的物理量相关联,并且仅是适用于这些量的便利标 记。
[0343]使用斜体字母(诸如在前述的详细描述中的、'、'^、、'、、'、'^、乂'等彡来描述 整数,并且具体字母的使用并不限于具体的实施例。此外,可以在不同的权利要求中使用相 同的字母来表示不同的整数,或者可以使用不同的字母。另外,在详细描述中使用的具体字 母可能与或者可能不与涉及详细描述中相同主题的权利要求中使用的字母匹配。
[0344] 如上所述,可以通过相应软件和/或固件部件和应用(诸如由嵌入式处理器等执行 的软件和/或固件)来促进本文实施例的各个方面。因此,本发明的实施例可以用作或用于 支持软件程序、软件模块、固件和/或在某种形式的处理器、处理核或嵌入式逻辑单元上执 行的分布式软件、运行在处理器或核或以其它方式实施或实现在计算机可读或机器可读非 暂时性存储介质上或内的虚拟机。计算机可读或机器可读非暂时性存储介质包括用于存储 或发送机器(例如,计算机)可读形式的信息的任何机制。例如,计算机可读或机器可读非暂 时性存储介质包括用于提供(即,存储和/或发送)可被计算机或计算机器(例如,计算设备、 电子系统等)访问的形式的信息的任何机制,诸如可记录/不可记录介质(例如,只读存储器 (ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质、闪速存储设备等)。内容可以是 直接可执行的("目标"或"可执行"形式)源代码或差分代码("增量"(delta)或"插入 (patch)"代码)。计算机可读或机器可读非暂时性存储介质还可以包括可从其下载内容的 存储器或数据库。计算机可读或机器可读非暂时性存储介质还可以包括具有出售或交付时 其上就已经存储有内容的设备或产品。因此,交付具有存储的内容的设备或者通过通信介 质来提供用于下载的内容可以被理解为提供了包括具有本文所描述这种内容的计算机可 读或机器可读非暂时性存储介质的制品。
[0345] 以上提到的如本文所描述的处理器、服务器或工具等各种部件可以是用于执行所 描述的功能的单元。由本文描述的各种部件执行的操作和功能可以通过运行在处理元件上 的软件、经由嵌入式硬件等、或者硬件和软件的任意组合来实现。这些部件可以被实现为软 件模块、硬件模块、特殊用途硬件(例如,专用硬件、ASIC、DSP等)、嵌入式控制器、固线电路、 硬件逻辑单元等。软件内容(例如,数据、指令、配置信息等)可以经由包括计算机可读或机 器可读非暂时性存储介质的制品被提供,这些存储介质提供表示可被执行的指令的内容。 该内容可以使得计算机执行本文描述的各种功能/操作。
[0346] 所本文所使用的,结合术语"中的至少一个"的术语列表可以是指所列术语的任意 组合。例如,短语"A、B或C中的至少一个"可以是指A;B;C;A和B;B和C;或者A、B和C。
[0347] 对本发明(包括摘要中描述的内容)的说明性实施例的以上描述并非出于详尽的 目的,或者意在将本发明限于所公开的确切形式。虽然本文出于说明性目的描述了本发明 的特定实施例和示例,但是,相关领域技术人员将意识到的是,在本发明范围内的各种等同 修改是可能的。
[0348] 可以根据以上的详细描述对本发明做出这些更改。下文的权利要求中使用的术语 不应解释为要将本发明限制于说明书和附图所公开的特定实施例。相反的,本发明的范围 将完全由下文的权利要求确定,该权利要求应该根据已建立的权利要求的解释原则来解 释。
【主权项】
1. 一种在包括计算实体的计算环境中实现的方法,所述计算实体包括通信地耦合到多 个包括宿的计算实体的源,所述方法包括: 使用所述源来管理对包括可执行代码的作业的执行; 将所述可执行代码的段卸载到所述多个宿; 针对被卸载到宿的代码的每一段来存储卸载上下文信息,所述卸载上下文信息用于标 识被卸载的所述代码的段以及其被卸载到的所述宿; 针对被卸载的代码的段来接收由所述代码的段被卸载到的所述宿生成的结果; 检测到宿未能成功地执行被卸载到所述宿的代码的段,以及响应于此, 取回与被卸载到所述宿的所述代码的段相对应的所述卸载上下文信息;以及 将所述代码的段卸载到另一个宿以进行执行。2. 根据权利要求1所述的方法,还包括: 利用所述源来执行所述作业; 在所述作业的执行期间,检测要被卸载到宿的、包括一个或多个第一函数的第
当前第5页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1