CN107924359A - 计算***中的故障情况的管理 - Google Patents
计算***中的故障情况的管理 Download PDFInfo
- Publication number
- CN107924359A CN107924359A CN201680049019.2A CN201680049019A CN107924359A CN 107924359 A CN107924359 A CN 107924359A CN 201680049019 A CN201680049019 A CN 201680049019A CN 107924359 A CN107924359 A CN 107924359A
- Authority
- CN
- China
- Prior art keywords
- message
- data
- fault
- determiner
- interested
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0709—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/008—Reliability or availability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0721—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0748—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a remote unit communicating with a single-box computer node experiencing an error/fault
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0772—Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0781—Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Debugging And Monitoring (AREA)
Abstract
***、装置和/或方法可以管理计算机***中的故障情况。装置可以通过发布者‑订户***动态地发布消息,并且通过发布者‑订户***动态地订阅消息,其中至少一个消息可以用于解决计算***中的故障情况。该装置可以预测高性能计算(HPC)***中的故障情况、将故障信息传送给用户、监测HPC***的健康、响应HPC***中的故障情况、从HPC***中的故障情况中恢复、维护用于故障管理组件的规则、和/或通过发布者‑订户***实时传送故障信息。消息也可以被聚合以使故障信息业务最小化。发布者‑订户***可以促进动态和/或实时协调的、集成的(例如***范围的)和/或可放缩的故障管理。
Description
相关申请的交叉引用
本申请要求于2015年9月25日提交的美国非临时专利申请第14/865,872号的优先权的权益。
技术领域
实施例一般涉及故障管理。更具体地,实施例涉及利用发布-订阅***的消息来管理高性能计算***中的故障情况。
背景技术
计算***中的故障管理可能相对复杂。例如,与特定故障有关的信息可能相对较多,因为大量传感器可能提供针对相同的特定事件的传感器数据。因此,在给定计算***大小和由传感器发射的相关故障标识数据的情况下检测和/或管理故障可能相对困难。此外,适当的管理通信路径可以不是预先确定的。而且,预定路径可能变得多余,这是因为计算***的运行时上下文在发生故障时可能是不可预知的。另外,故障响应和恢复可能不足。
附图说明
通过阅读以下说明书和所附权利要求,并且通过参考以下附图,实施例的各种优点对于本领域技术人员将变得显而易见,其中:
图1是根据实施例的用于管理故障情况的故障管理***的示例的框图;
图2是根据实施例的管理故障情况的设备的示例的框图;
图3是根据实施例的包括用于管理故障情况的故障管理***的高性能计算***的示例的框图;
图4是根据实施例的管理故障情况的方法的示例的流程图;
图5是根据实施例的处理器的示例的框图;以及
图6是根据实施例的***的示例的框图。
具体实施方式
图1示出了用于管理计算***12中的故障情况的故障管理***10。与可能感兴趣的故障情况相关联的故障信息包括例如,故障、可能的故障、操作统计、所采取的动作、要采取的动作、政策更新、报告数据等等。如下面详细讨论的,故障信息可以经由发布的消息和由感兴趣的故障管理组件订阅的消息来实时地在故障管理组件14(14a-14e)当中动态共享以解决故障情况。
所示出的计算***12可以包括高性能计算(HPC)***。在这种情况下,故障情况可以包括HPC***中的现场可更换单元(FRU)的故障和/或预测故障。FRU可以包括设备,诸如计算节点(CN)、输入/输出节点(ION)、服务器、其一部分(例如,模块、风扇、电源、网络接口、存储器等)等。FRU还可以包括软件组件,诸如应用、操作***、微码、文件***、其一部分(例如,插件、驱动程序、函数、目录等)等。此外,计算***12可以包括传感器(例如,HPC***中的百万个传感器)以捕获和提供对应于被监视的相应硬件组件和/或相应软件组件的健康的数据。
故障管理组件14(14a-14e)可通过发布者-订户(发布-订阅)***16交换故障信息。故障管理组件14可包括:故障报告器14a,其用于向用户传送故障信息,故障监测器14b,其用于监测计算***12的健康,故障预测器14c,其用于预测计算***12中的故障情况,故障处理器14d,其用于响应计算***12中的故障情况和/或从其中恢复,以及故障策略维护器14e,其用于维护用于故障管理组件14的规则。故障管理组件14可以包括子组件,诸如例如用于响应故障情况的故障处理器14d的故障响应器,用于从故障情况恢复的故障处理器14d的故障恢复器,等等。
所示出的故障报告器14a可以向用户(例如,***管理员、终端用户等)提供包括传感器数据、预测数据、动作数据、策略数据等的故障信息。故障报告器14a可以经由例如图形用户界面(GUI)、命令行界面、电子消息界面等提供故障信息。所示的故障监测器14b可以监测计算***12的硬件组件和/或软件组件(例如,FRU)的健康。在一个示例中,故障监测器14b可以以特定速率连续地读取相对应的硬件传感器和/或相对应的软件传感器的值,并且基于预定义标准(例如,阈值等)来检测故障。
所示出的故障预测器14c可以利用来自故障监测器14b的实时传感器数据来生成预测数据,例如可能故障的可能性的预测、可能故障的时间段的预测、可能故障的位置的预测,等等。在一个示例中,故障预测器14c可以对实时传感器数据应用启发式(heuristic),以在故障发生之前提供对可能故障的主动检测,并且在故障发生之前促进适当动作。所示出的故障处理器14d可以通过实现在各个位置处可以被采取来解决故障情况的反应和/或主动动作,来提供对于已经发生或者预测将来发生的故障的***范围的响应。
所示出的故障策略维护器14e可以维护故障管理组件14的规则。例如,规则可以包括监测策略(例如,要监测什么、在哪里监测、何时监测、如何监测等)、预测策略(例如,预测什么、预测哪里、何时预测、如何预测等)、报告策略(例如,报告检测到的什么故障、要被报告的检测到的故障在哪里、何时报告检测到的故障、如何报告检测到的故障等)、响应和恢复策略(例如,针对故障采取何种动作来响应故障或从故障中恢复、在何处采取动作、如何采取动作、何时采取动作等)。基于计算***12的当前状态和/或来自故障管理***10的故障信息,用户可以改变策略中的任何或全部。
所示出的故障管理组件14可以被实现为独立的整体组件。例如,故障报告器14a和/或故障预测器14c可以是在特定位置和/或节点(例如,聚合器节点)处运行的独立组件。在一个示例中,故障报告器14a和/或故障预测器14c可以在控制***组件(例如,用于HPC***)上运行,诸如机架控制器(RC)、行控制器(RoC),包括可靠性-可用性-可服务性(RAS)引擎的***管理***(SMS)、资源管理器(RM)、结构管理器(FM)、运行时引擎等等。因此,例如,故障预测器14a可以包括位于RM处、位于FM处等等的单个故障预测器。在另一个示例中,故障报告器14a和/或故障预测器14c可以在控制***外部的专用节点处运行并且可以经由发布-订阅***16或经由不同的发布-订阅***与控制***耦合。
所示出的故障管理组件14还可以被实现为在不同位置处运行和/或与(例如,同一类别的)聚合器节点通信的代理的集合。在一个示例中,故障监测器14b和/或故障处理器14d可以作为分布式代理在计算***12的多个位置处运行,诸如HPC***中的任何或所有传感器、HPC***中的任何或所有计算节点、HPC***中的任何或所有I/O节点、HPC***中的任何或所有操作***等等。在另一个示例中,故障监测器14b和/或故障处理器14d可以在诸如RM、FM等的各种控制***组件处作为分布式代理来运行。因此,例如,故障处理器14b可以作为RM中、FM中等等的分布式代理运行。在进一步的示例中,故障监测器14b可以作为故障管理***层次结构的较低级别处的分布式代理来运行,并且将数据提供给故障管理***层次结构的较高级别处的聚合器。
所示的发布-订阅***16包括发布-订阅总线18,其用于在消息生产者和消息订户当中传播消息。例如,消息确定器24(24a-24e)可以通过发布-订阅总线18公布消息,和/或可以经由***接口26(26a-26e)通过发布-订阅总线18订阅消息。就这一点而言,消息确定器24中的任一个或全部可以使用发布-订阅总线18上的异步动态通信路径来转发消息和/或接收消息。例如,消息生产者/发布者可以不知道消息订户的身份来发布消息,并且消息订户可以不知道消息生产者/发行者的身份来订阅消息,因为发布-订阅总线18允许独立于相互的知晓而使消息发布者/生产者发布消息并且消息订户独立订阅消息。因此,可以实时建立异步动态通信路径以在发布-订阅总线18上交换感兴趣的信息。在一个示例中,发布-订阅总线18可以被部署为逻辑总线,所述逻辑总线使用物理接口实现以提供计算***12的各种实体之间的物理通信链路。
另外,所示的发布-订阅***16包括代理(broker)20(例如中央服务器),其用于在消息生产者和消息订户之间提供代理服务。例如,消息确定器24中的任何或全部可以与代理20通信以通过发布-订阅总线18发送消息,消息由代理20通过发布-订阅总线18转发给消息订户。消息确定器24中的任何或全部还可以与代理20进行通信以识别在发布-订阅总线18上可用的消息。例如,消息确定器24中的任何或全部可以与代理20通信以通过发布-订阅总线18向代理注册,并且感兴趣的消息确定器可以针对被生成/发布的消息的类型来询问代理20以识别感兴趣的事件和/或确定要订阅的感兴趣的特定消息。感兴趣的消息确定器然后可以向代理20注册订阅,代理20可以验证订阅并将订户联系信息转发给适当的消息生产者/发行者,以允许感兴趣的消息被直接转发到感兴趣的消息确定器(例如,消息订户)。
感兴趣的消息确定器可以进一步生成/发布其他消息确定器可能感兴趣的消息。例如,由感兴趣的消息确定器生成/发布的消息可以包括基于感兴趣的消息确定器采取的动作的新消息、基于接收到的消息中的数据评估的新消息、基于与感兴趣的消息确定器相关联的故障管理组件的管理能力的消息,等等。在这种情况下,其他消息确定器可以类似地动态地订阅由感兴趣的消息确定器生成/发布的实时消息(例如,感兴趣的消息),并且动态地生成/发布要通过发布-订阅总线18传送的消息。
因此,消息确定器24中的任何或全部可包括发布功能和订阅功能,其用于动态地发布消息并动态订阅消息以实时交换故障信息(例如,故障监测器数据和故障响应数据等)。另外,消息确定器24中的任何或全部可以动态地添加消息类型和/或消息。例如,动态添加的消息可以包括故障监测消息(例如,包括传感器数据)、故障响应消息(例如,包括故障响应动作)、故障恢复消息(例如,包括故障恢复动作)、故障报告消息(例如,包括故障情况)、故障策略消息(例如,包括规则或对规则的更新)、故障预测消息(例如,包括预测的故障情况)等等。
消息生产者、消息订户、消息和/或消息类型的动态添加可以促进实时和/或动态协调的、集成的(例如***范围的)和/或可缩放的故障管理。例如,控制***组件可以不单独工作,因为消息确定器可以通过动态共享来知道去向和来自其他消息确定器的输入和输出以用于协调和/或集成的故障情况响应(例如,经由故障情况的共享知晓以及可能在计算***中的任何地方采取的恢复/纠正措施)。此外,可以提供可伸缩性,因为故障监测器、故障预测器、故障处理器等可以通过实时交换故障信息以适应和响应计算***的当前状态来更好地管理组件级别的故障。
当例如通信路径的端点和/或通信的子结构(例如,需要交换的消息的内容)被预定义和/或已知时,消息确定器24的任何或全部也可以直接交换信息。例如,预定义的通信路径(例如,静态通信)可以包括从故障监测器14b向故障报告器14a发送故障信息、将初始策略和/或配置数据从故障策略维护器14e发送到故障监测器14b,等等。然而,值得注意的是,经由发布-订阅***16上的实时地消息交换的动态建立的通信路径可以在发生故障或预测故障时基于计算***12的运行时上下文来适应故障管理。
尽管已经示出了独立的故障管理组件和/或特定的通信流程,但是应当理解,可以组合、省略、绕过、重新布置等故障管理组件中的一个或多个,和/或通信内容可以以任何配置、顺序和/或方向流动。在一个示例中,当消息确定器24通过发布-订阅总线18直接交换消息时,代理20可以被省略。在另一个示例中,故障监测器14b可以通过静态链路与故障报告器14a进行通信以绕过发布-订阅***16。
现在转到图2,故障管理设备30包括网络接口32,其用于通过与故障管理***耦合的数据网络来交换消息。网络接口32可以包括用于诸如蜂窝电话(例如,宽带码分多址/W-CDMA(通用移动电信***/UMTS)、CDMA2000(IS-856/IS-2000)等)、WiFi(无线保真度,例如电气和电子工程师协/IEEE 802.11-2007、无线局域网/LAN介质访问控制(MAC)和物理层(PHY)规范)、4G LTE(***长期演进)、蓝牙(例如电气和电子工程师协会/IEEE802.15.1-2005、无线个域网)、WiMax(例如IEEE 802.16-2004、LAN/MAN宽带无线LANS)、全球定位***(GPS)、扩频(例如,900MHz)、近场通信、ECMA-340、ISO/IEC 18092)等各种目的和其他射频(RF)目的的通信功能。
设备30还包括消息确定器34,其用于动态地发布消息和/或动态订阅消息。因此,设备30可以在已经讨论的故障管理***10(图1)中实现。所示出的消息确定器34包括数据确定器36,其用于动态确定对消息确定器34感兴趣的数据的需求。数据确定器36例如可以与代理通信以识别通过发布者-订户(发布-订阅)***(例如发布-订阅总线)发布的消息(例如,消息类型)。数据确定器36还可以确定特定故障信息是消息确定器34所感兴趣的。例如,数据确定器36可以考虑与消息确定器34相关联的故障管理组件的管理能力来确定感兴趣的数据。
消息确定器34还包括消息生成器38,其用于生成/发布要通过发布-订阅***提供给代理和/或另一消息确定器的请求消息。请求消息可以包括用于订阅由另一个消息确定器发布的消息的请求,其中可以在包括数据或兴趣的消息被转发给消息确定器34之前验证订阅。请求消息还可以包括对消息确定器34感兴趣的数据的描述。例如,消息生成器38可以生成/发布指示对特定故障信息的需要(例如,针对特定故障,或者更具体地,例如,当在HPC***的一个机架中CN故障时,对来自该机架的所有故障信息的需要,等等)的请求消息。在这种情况下,例如,发布的请求消息可以由故障监测器订阅,以便当与消息确定器34相关联的故障预测器需要传感器数据时,提供消息确定器34感兴趣的传感器数据(例如,其可能已经被生成,发布等)。
消息生成器38也可以生成/发布数据消息。在一个示例中,数据消息可以包括故障策略消息,诸如标识规则(例如,传感器监测的频率)和/或规则的参数(例如,什么传感器、多久监测一次、等等)的策略更新消息。因此,例如,故障策略维护器可以订阅策略更新消息并修改(例如更新)消息确定器34的策略(例如,增加传感器监测)。在这种情况下,故障策略维护器还可以生成/发布策略更新消息以用于由其他消息确定器订阅,其他消息确定器继而可以订阅策略更新消息以根据改变的管理能力进行操作(例如,提供特定的传感器数据、特定频率的数据等)。因此,可以根据动态更新的策略来发布故障信息。
数据确定器36还可以动态地确定向其他消息确定器提供感兴趣的数据的能力。例如,数据确定器36可以接收请求消息,并且确定基于对请求消息中感兴趣的数据的描述、基于对消息确定器34的策略的更新等等,来向感兴趣的消息确定器提供感兴趣的数据的能力。数据确定器36也可以确定通过评估与消息确定器34相关联的故障管理组件的管理能力来提供数据的能力。此外,数据确定器36可以假定向消息确定器34递送请求消息足以建立提供感兴趣的数据的能力,并且可以实现用于验证能力的过程。
另外,消息生成器38可以生成包括感兴趣的消息确定器(例如,订户)感兴趣的数据的数据消息,其中消息确定器34可以通过发布-订阅***发布要被提供给请求特定的故障信息的感兴趣的消息确定器的数据消息。应该理解的是,消息生成器38可以独立于是否存在任何感兴趣的消息确定器(例如,订户)而生成/发布数据消息。在这方面,消息生成器38可以发布消息生成器38需要的任何数据消息。消息生成器38可以生成/发布数据消息,该数据消息包括对应于与消息确定器34相关联的故障管理组件的管理能力的全部或部分的信息。
消息确定器34还包括订阅批准器40。订阅批准器40可以确定是否准许其他消息确定器对数据消息的订阅,该数据消息可以包括由消息生成器38生成/发布的感兴趣的数据。订阅批准器40还可以准许消息确定器34订阅包括感兴趣的数据的描述的请求消息,以使得消息生成器38开始生成/发布特定的感兴趣的消息确定器感兴趣的数据。
在一个示例中,订阅批准器40可忽略请求消息以禁止访问由消息生成器38发布的数据消息(例如,可以不生成感兴趣的数据、可以阻止访问感兴趣的数据等)。在另一示例中,订阅批准器40可以避免订阅请求消息以禁止访问由消息生成器38生成的数据消息。因此,例如,故障监测器可以在发布的并且由可以对故障感兴趣以采取适当的动作的故障预测器、故障响应器、第三方工具(例如,对不能持续采取动作的组件和/或任务感兴趣,等等)等成功订阅的消息中提供传感器数据。
此外,动态订阅数据消息的订户可以继而动态地添加更多的参数、寻找新的故障类型、和/或忽略某些故障。例如,消息确定器34包括能力调整器42,其用于确定是否调整与消息确定器34相关联的故障管理组件的管理能力。在一个示例中,能力调整器42可以基于在发布请求消息中的、在消息确定器34的策略消息中等等的感兴趣的数据的描述来调整管理能力。因此,例如,数据确定器36可以确定故障预测器需要具有来自由消息确定器34订阅的消息(例如,添加参数、搜索特定数据等)的特定故障数据并且经由能力调整器42来调整所提供的传感器数据的类型、所提供的传感器数据的频率、所提供的传感器数据的范围等。因此,消息生产者/发布者可以响应于请求并且修改消息和/或所发布消息的属性。
尽管已经示出了独立的故障管理设备组件,但是应当理解的是,可以组合、省略、绕过、重新布置故障管理设备组件中的一个或多个,等等。在一个示例中,订阅批准器40可以在代理批准订阅、当所有消息可以订阅时,等等被省略。在另一示例中,数据确定器36、订阅批准器40和/或能力调整器42可被布置在消息确定器34外部的故障管理组件中。
图3示出了包括故障管理***的高性能计算(HPC)***44,所述故障管理***可以在各种现场可替换单元(FRU)处和/或在各种控制***组件处实现。在所示的示例中,FRU包括控制节点(CN)46,所述控制节点可以经由输入/输出节点(ION)48利用访问文件结构(FS)50来处理作业。CN 46可以通过高速互连(例如,结构)来相互通信。另外,ION 48可以并行连接到FS 50,以允许并行访问文件***。用户可以经由登录节点52与HPC***44接合以运行作业。
控制***可以管理HPC***资源、将资源分配给HPC作业、调度作业、提供库存收集、提供HPC运行时管理、提供***健康监测、提供网络管理、提供结构管理、提供***管理、提供I/O管理、提供存储***管理等等。控制***的组件可以包括各自负责任务的软件组件。
在一个示例中,控制***的组件可以包括向用户提供故障信息的***管理***(SMS)54、调度作业和/或将资源分配给作业的资源管理器(RM)56、管理用于CN 46之间的通信的结构的结构管理器(FM)58、在故障管理***层次结构的相应较低级别中监测CN 46的机架控制器(RC)60、监测RC 60的行控制器(未示出)等等。控制***组件可以经由HPC***44的高速互连、专用低带宽管理互连等等彼此通信。
故障管理***的组件可以被实现为整体组件、代理和聚合器的集合等等。在一个示例中,发布-订户(发布-订阅)总线可以在HPC***44的一个或多个节点处以逻辑管理级运行,以向消息发布者和消息订户提供逻辑通信总线。在另一个示例中,代理可以在SMS54、RM 56和/或任何其他需要的位置运行。在进一步的示例中,故障报告器可以作为在对应于CN 46、ION 48、FS 50等的任何或全部传感器处代理的集合来运行。因此,例如,故障监测功能的一部分可以发生在故障管理***层次结构的不同级别处以及控制***和/或HPC***44的各个位置处。
代理可以作为聚合器运行以收集数据。例如,故障监测器可以在RC 60(例如,聚合器节点)处作为聚集器来运行,以收集来自捕获传感器数据和/或发布对应于故障管理***层次结构的较低级别处的CN 46的消息的代理的传感器数据和/或消息。因此,发布和/或订阅可以发生在相对较高的级别(例如,在顶级、在每个级别等)处以使业务最小化。另外,聚合器可以过滤数据。例如,代理可以报告故障(例如,故障监测消息)并且例如在RC 60处运行的聚合器可以过滤掉重复的故障信息以向较高级聚合器和/或在故障管理层次结构的同一级别或较高级别处的故障管理组件提供较少的业务。因此,聚合器可以使针对可能相对较大的特定故障通过发布-订阅***发布的消息的数量(例如,针对一个故障的一千个消息)最小化。
而且,较高级别的发布和/或较高级别的订阅可以向感兴趣的故障管理组件提供进一步的有针对性的消息传递。例如,聚合器可以过滤消息并且只将特定消息转发给特别希望消息的感兴趣的故障管理组件。在一个示例中,诸如在RM 56处运行的故障处理器、监测HPC***44中的作业的工具等之类的感兴趣的故障管理组件可以指示用于监测来自HPC***44的特定部分、来自HPC***44的特定机架等等的数据的需要。在这种情况下,例如,RM56处的故障处理器和/或第三方工具可以发布需要更多信息、用于订阅与作业相关的所有传感器数据的需要等等的消息。作为响应,发布的消息的订户可以直接响应RM 56处的故障处理器和/或聚合器。另外,订户可以调整传感器。例如,运行在RC 60处的故障策略维护器可以订阅要求更新策略的消息,并且可以继而生成策略更新消息以使得传感器被调整以向感兴趣的故障管理组件提供特定的感兴趣的数据。
在进一步的示例中,故障处理器可以被实现为在RM 56处运行的、在FM 58处运行的等代理的集合,并且可以订阅故障监测消息、故障响应消息和/或故障恢复消息来确定要采取的适当动作。在这种情况下,例如,运行在RM 56处的故障处理器可以订阅来自在CN 46处运行的故障监测器的故障监测器消息,并且订阅来自在FM 58处运行的故障处理器的故障恢复消息以确定是否和/或如何针对作业来重新分配资源。另外,运行在RC 60处的聚合器可以将故障监测消息和故障恢复消息提供给RM 56处的感兴趣的故障处理器,故障监测消息和故障恢复消息可能已经从接收自故障管理***层次结构的较低级别的所有可用消息中过滤掉和/或作为有针对性的数据传送仅提供给RM 56处的感兴趣的故障处理器。
因此,通过发布-订阅总线的通信可以允许经由发布的消息关于发生的故障的信息被共享,并且可以允许订阅关于已经发生的特定故障以及作为响应已经采取的动作的信息。在这方面,故障管理组件需要知道发生了什么故障、并且针对故障已经采取了什么响应来具有***状态的实时上下文。例如,在RM 56处运行的故障处理器可以订阅来自可能已经通过执行网络的重新计算来响应故障情况的FM 58的故障处理器消息,其中RM 56可能想知道新状态以用于将资源分配给作业。因此,可以协调响应和/或恢复,诸如由在RM 56和FM58处运行的故障处理器所采取的协调动作。
另外,响应动作和/或恢复动作可以是特定于采取动作(例如,组件级动作)的故障管理组件。另外,一些故障管理组件可以对特定信息感兴趣,并且其动作可能基于订阅的信息而不同。在一个示例中,为了响应故障情况和/或从故障情况中恢复而采取的动作可以包括由在RM 56处运行的故障处理器重新分配资源,可以包括由在CN 46处运行的故障处理器对模块断电,可以包括由在FS 50处运行的故障处理器恢复到先前版本,等等。在另一个示例中,故障监测器可以公布故障信息并订阅请求不同类型的故障监测器数据和/或故障监测策略的更新的消息。
并行和/或跨HPC***44的部分或全部响应故障或从故障中恢复的能力(例如,***范围的故障响应和/或故障恢复)可以允许防止和/或相对快速地解决故障情况。响应和/或恢复也可以被整合,因为例如RM 56可能不再需要自己采取动作。就这一点而言,可以提供集成的解决方案来传递用于故障的信息以及所采取或将要采取的动作,其中故障管理***的故障管理组件中的部分或全部可以被同步,冗余动作可以被最小化和/或***状态可以一致。
此外,故障管理组件中的任何或全部可以请求订阅消息,并且消息的生产者/发布者可以决定是否可以将消息提供给感兴趣的故障管理组件。而且,新订户可以通过实时迭代地实现发现过程(例如,发现消息类型、消息等)来订阅新消息。而且,故障管理组件中的任何或所有可以订阅每条消息,并决定要保留什么信息以及丢弃哪些信息。例如,故障管理组件的任何或全部可以取消订阅,决定它们想要更多的信息并请求类似的消息等等。
尽管已经讨论了特定的故障管理组件,但是应当理解,可以组合、省略、绕过、重新布置故障管理组件中的一个或多个,等等。在一个示例中,当带宽不是问题,当故障管理组件希望交换所有故障、特定故障、或HPC***44的特定部分、特定作业等等的全部可用信息时,可以省略聚合器。在另一示例中,故障报告器可以在SMS 54处运行以接收故障信息,可以经由登录节点52向用户提供信息,等等。
现在转到图4,示出了用于管理故障情况的方法62。方法62可以由例如以上讨论的任何或所有故障管理组件14(图1)、以上讨论的消息确定器30(图2)和/或以上讨论的故障管理组件(图3)中的任何或所有来实现。方法62可以被实现为存储在以下中的一组逻辑指令中的模块或相关组件:非暂时性机器或计算机可读存储介质,诸如随机存取存储器(RAM)、只读存储器(ROM)、可编程ROM(PROM)、固件、闪速存储器等;可配置逻辑,诸如例如可编程逻辑阵列(PLA)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD);使用电路技术的固定功能硬件逻辑,诸如例如专用集成电路(ASIC)、互补金属氧化物半导体(CMOS)或晶体管-晶体管逻辑(TTL)技术或其任何组合。例如,用于执行方法62中所示的操作的计算机程序代码可以以一种或多种程序设计语言的任意组合来编写,所述程序设计语言包括诸如JAVA、SMALLTALK、C++等的面向对象的程序设计语言和常规的程序化程序设计语言,如“C”程序设计语言或类似的程序设计语言。
示出的处理块64提供用于确定对故障信息的需求。故障信息可以包括感兴趣的数据,诸如特定故障管理组件感兴趣的计算***中的故障和/或可能故障、特定的故障管理组件感兴趣的计算***中的操作硬件和/或软件特性、通过特定的故障管理组件采取和/或要采取以响应故障和/或可能的故障和/或从故障和/或可能的故障中恢复的动作、报告由特定故障管理组件提供和/或将要提供给用户的数据、来自特定故障管理组件感兴趣的计算***的特定部分的传感器数据、特定故障管理组件感兴趣的特定作业的传感器数据等等。在一个示例中,对数据的需求可以响应于诸如检测到故障情况之类的触发。在另一个示例中,数据可以包括用于操作故障管理组件所需的所有数据。
在处理框66处可以确定是否联系代理。如果不是,则示出的处理块68提供通过发布-订阅***生成和/或发布消息。框68可以直接识别包括感兴趣的数据的消息(例如,通过消息解析、关键字比较等)并订阅消息。如果框66确定联系代理,则所示出的处理框70提供向代理注册订阅。在一个示例中,订阅可以在接收到感兴趣的数据之前被验证。
框68提供用于通过发布-订阅***生成和/或发布消息。在一个示例中,框68可以发布请求消息以请求订阅包括由故障管理组件(例如发布者)发布的感兴趣的数据的消息。在另一示例中,框68可以公布请求消息,该请求消息提示故障管理组件(例如,发布者)订阅请求消息以使故障管理组件提供感兴趣的数据。
在一个示例中,具有用于提供感兴趣的数据的能力的故障管理组件可以(例如,直接和/或通过代理)订阅请求消息,并发布包括响应于发布请求消息而生成的故障信息的数据消息。因此,所示出的处理框72提供用于例如经由数据消息从故障管理组件接收故障信息。就这一点而言,故障信息(例如,经由消息)可以在聚合器处被收集,过滤,并且根据需要被提供给框72。
另外,收到故障信息可以使得故障管理组件协调动作以解决故障情况。例如,被实现为代理的集合的故障处理器可以协调在计算***和/或控制***中的相应位置处采取的动作。在这种情况下,可以促进***范围内的响应,其中所采取的动作可以特定于其中运行每个故障处理器的计算机***组件、其中运行每个故障处理器的控制***组件、订阅的信息的类型等等。在一个示例中,在结构管理器处由故障处理器采取的动作可以包括重新配置交换结构,在资源管理器处由故障处理器采取的动作可以包括在本地重新分配资源,在文件***处由故障处理器采取的动作可以包括恢复到数据库结构的先前版本等等。在另一个示例中,故障策略维护器可以与故障监测器协调来调整传感器数据。在这种情况下,例如,可以针对特定的订户动态地定制传感器数据。在进一步的示例中,故障预测器可以与故障处理器协调以通过动态且更高效地检测和/或解决潜在故障来使停机时间最小化和/或使***生产率最大化。
示出的处理框74可以确定用于提供故障信息的能力。在一个示例中,确定可以响应于触发,诸如,接收到请求消息、接收到策略更新消息、加入发布-订阅***等。在一个示例中,框74可以订阅消息并且在接收到订阅的消息时进行响应。故障信息可以包括故障管理组件感兴趣的数据,诸如计算***中的故障和/或可能的故障、计算***中的操作硬件和/或软件特性、响应故障和/或可能的故障和/或从故障和/或可能的故障中恢复的采取和/或将采取的动作、报告向用户提供和/或将要提供的数据、来自计算***的特定部分的传感器数据、用于特定作业的传感器数据等等。例如,框74可以确定与框74相关联的故障管理组件的管理能力,以确定用于提供故障信息的能力。
在处理框76处可以确定是否准许订阅。例如,框76可以确定是否准许由故障管理组件向包括感兴趣的数据的数据消息进行订阅。如果不是,则所示出的处理框78提供用于丢弃和/或忽略来自故障管理组件的消息和/或用于直接或间接地从故障管理组件未经授权地访问数据的任何其它通信。如果是,则所示的处理块80确定是否调整管理能力。在一个示例中,管理能力可以基于请求消息中的感兴趣的数据的描述来调整。例如,请求消息可以包括指示更频繁地需要来自传感器的数据的描述,并且框80可以调整传感器的管理能力以更频繁地捕获数据。类似地,框80可以接收定义对数据捕获的频率的更新的策略更新消息,并且框80可以基于更新来调整传感器的管理能力。
示出的处理块82将故障信息提供给请求信息的感兴趣的故障管理组件。例如,框82可以通过发布-订阅***生成和/或发布数据消息。就此而言,故障信息(例如经由消息)可以在聚合器处被收集、过滤,并且根据需要被提供给请求信息的感兴趣的故障管理组件。另外,数据消息可以在代理处注册,以促进通过发布-订阅***的高效发现。
虽然已经显示了独立的方法、框和/或特定的顺序,但是应当理解的是,方法62的框中的一个或多个可以以任何顺序被组合、省略、绕过、重新布置和/或流动。在一个示例中,所示出的框64-72和74-82可以顺序地和/或并行地流动。在另一示例中,当代理被省略时,可以绕过框66、70。在另一个示例中,框64-72和74-82可以在相同或不同的故障管理组件、消息确定器、和/或故障管理设备处实现,只要每个故障管理组件可以包括发布和订阅功能。
图5示出了根据一个实施例的处理器核心200。处理器核心200可以是任何类型的处理器的核心,诸如微处理器、嵌入式处理器、数字信号处理器(DSP)、网络处理器或用于执行代码的其他设备。尽管在图5中仅示出了一个处理器核心200,但是处理元件可以可选地包括多于一个图5中所示的处理器核心200。处理器核心200可以是单线程核心,或者对于至少一个实施例,处理器核心200可以是多线程的,因为其可以包括每核心多于一个硬件线程上下文(或“逻辑处理器”)。
图5还示出了耦合到处理器核心200的存储器270。存储器270可以是本领域技术人员已知的或者可用的各种各样的存储器(包括存储器层次结构的各种层)中的任何一种。存储器270可以包括要由处理器核心200执行的一个或多个代码213指令,其中代码213可以实现讨论的方法62(图4)。处理器核心200遵循由代码213指示的指令的程序序列。每个指令可以进入前端部分210并由一个或多个解码器220处理。解码器220可以生成作为其输出的微操作,例如预定义的格式的固定宽度微操作,或者可以生成反映原始码指令的其他指令、微指令或控制信号。所示的前端部分210还包括寄存器重命名逻辑225和调度逻辑230,它们一般分配资源并将对应于转换指令的操作入队以用于执行。
处理器核心200被示出为包括具有一组执行单元255-1至255-N的执行逻辑250。一些实施例可以包括专用于特定功能或功能集合的多个执行单元。其他实施例可以仅包括一个执行单元或者可以执行特定功能的一个执行单元。所示出的执行逻辑250执行由代码指令指定的操作。
在完成由代码指令指定的操作的执行之后,后端逻辑260引退代码213的指令。在一个实施例中,处理器核心200允许乱序执行,但是要求指令的引退。引退逻辑265可以采用本领域技术人员已知的各种形式(例如,重新排序缓冲器等)。以这种方式,处理器核心200在代码213的执行期间至少在由解码器生成的输出、由寄存器重命名逻辑225使用的硬件寄存器和表以及通过执行逻辑250修改的任何寄存器(未示出)方面被变换。
尽管在图5中未示出,但是处理元件可以包括与处理器核心200一起在芯片上的其他元件。例如,处理元件可以包括存储器控制逻辑以及处理器核心200。处理元件可以包括I/O控制逻辑和/或可以包括与存储器控制逻辑集成的I/O控制逻辑。处理元件还可以包括一个或多个高速缓存。
现在参照图6,示出了根据实施例的***1000实施例的框图。图6所示的是包括第一处理元件1070和第二处理元件1080的多处理器***1000。尽管示出了两个处理元件1070和1080,但是应该理解,***1000的实施例也可以仅包括一个这样的处理元件。
***1000被示出为点对点互连***,其中第一处理元件1070和第二处理元件1080经由点对点互连1050耦合。应该理解的是,如图6所示的互连中的任何或全部可以实现为多点总线而不是点对点互连。
如图6所示,处理元件1070和1080中的每一个可以是包括第一和第二处理器核心(即,处理器核心1074a和1074b以及处理器核心1084a和1084b)的多核处理器。这样的核心1074a、1074b、1084a、1084b可以被配置为以与以上结合图5所讨论的方式类似的方式来执行指令代码。
每个处理元件1070、1080可以包括至少一个共享高速缓存1896a、1896b(例如,静态随机存取存储器/SRAM)。共享高速缓存1896a、1896b可以存储分别由处理器的一个或多个组件(例如,核心1074a、1074b和1084a、1084b)使用的数据(例如,对象、指令)。例如,共享高速缓存1896a、1896b可以对存储在存储器1032、1034中的数据进行本地高速缓存以用于由处理器的组件更快地访问。在一个或多个实施例中,共享高速缓存1896a、1896b可以包括一个或多个中级高速缓存,诸如2级(L2)、3级(L3)、4级(L4)或其他级别的高速缓存、最后一级高速缓存(LLC)、和/或其组合。
尽管仅示出了两个处理元件1070、1080,但是应该理解,实施例的范围不限于此。在其他实施例中,一个或多个额外的处理元件可以存在于给定的处理器中。可替代地,处理元件1070、1080中的一个或多个可以是除了处理器之外的元件,诸如加速器或现场可编程门阵列。例如,附加处理元件可以包括与第一处理器1070相同的附加处理器、与第一处理器1070处理器异构或不对称的附加处理器、加速器(例如,图形加速器或数字信号处理(DSP)单元)、现场可编程门阵列或任何其他处理元件。在处理元件1070、1080之间,就包括体系结构、微体系结构、热量、功耗特性等的一系列优点度量而言可以存在各种差异。这些差异可以有效地表现为处理元件1070、1080当中的不对称性和异构性。对于至少一个实施例,各种处理元件1070、1080可以驻留在相同的管芯封装中。
第一处理元件1070还可以包括存储器控制器逻辑(MC)1072和点对点(P-P)接口1076和1078。类似地,第二处理元件1080可以包括MC 1082和P-P接口1086和1088。如图6所示,MC 1072和1082将处理器耦合到相应的存储器,即存储器1032和存储器1034,存储器1032和存储器1034可以是本地附接到相应处理器的主存储器的一部分。虽然MC 1072和1082被示出为集成到处理元件1070、1080中,但是对于替代实施例,MC逻辑可以是处理元件1070、1080外部的离散逻辑,而不是集成在其中。
第一处理元件1070和第二处理元件1080可以分别经由P-P互连10761086耦合到I/O子***1090。如图7所示,I/O子***1090包括P-P接口1094和1098。此外,I/O子***1090包括用于将I/O子***1090与高性能图形引擎1038耦合的接口1092。在一个实施例中,可以使用总线1049以将图形引擎1038耦合到I/O子***1090。可选地,点对点互连可耦合这些组件。
I/O子***1090又可以经由接口1096耦合到第一总线1016。在一个实施例中,第一总线1016可以是***组件互连(PCI)总线或诸如快速PCI总线之类的总线或另一个第三代I/O互连总线,但是实施例的范围不限于此。
如图6所示,各种I/O设备1014(例如,摄像机、传感器)可以连同总线桥1018一起耦合到第一总线1016,总线桥1018将第一总线1016耦合到第二总线1020。在一个实施例中,第二总线1020可以是低引脚数(LPC)总线。在一个实施例中,各种设备可以耦合到第二总线1020,包括例如键盘/鼠标1012、网络控制器/通信设备1026(其继而可以与计算机网络通信),以及数据存储单元1019,如可以包括代码1030的磁盘驱动器或其他大容量存储设备。代码1030可以包括用于执行上述方法中的一个或多个的实施例的指令。因此,示出的代码1030可以实现已经讨论过的方法62(图4),并且可以类似于已经讨论的代码213(图5)。此外,音频I/O 1024可以耦合到第二总线1020。
请注意,可以设想其他实施例。例如,代替图6的点对点体系结构。***可以实现多点总线或其他这种通信拓扑。而且,图6的元件可以替换地使用比图6所示的更多或更少的集成芯片来分区。而且,网络控制器/通信设备1026可以被实现为HFI(主机结构接口),也被称为NIC(网络接口卡),其与处理元件1070、1080中的一个或多个无论是在同一个芯片上,还是在同一个封装中集成在一起。
其他注意事项和示例:
示例1可以包括一种管理故障的***,包括传感器,其用于收集高性能计算(HPC)***中的数据,以及多个消息确定器,其中,所述消息确定器中的每一个用于通过发布者-订户***来动态地发布消息,并且用于通过所述发布者-订户***来动态地订阅消息,并且其中,至少一个消息与来自所述传感器的数据相对应并且用于协调动作以管理所述HPC***中的故障情况。
示例2可以包括示例1所述的***,还包括故障预测器,其用于预测所述HPC***中的故障情况;故障报告器,其用于将故障信息传送给用户;分布式故障监测器,其用于监测所述HPC***的健康;分布式故障处理器,其用于响应于所述HPC***中的故障情况或从所述HPC***中的故障情况中恢复中的一个或多个;故障策略维护器,其用于维护用于故障管理组件的规则;以及***接口,其用于通过所述发布者-订户***实时地将所述故障信息传送给一个或多个感兴趣的消息确定器。
示例3可以包括示例1至2中的任一项所述的***,其中,所述消息确定器中的至少一个用于从代理接收信息,并且其中,所述信息包括数据消息中的一个或多个,所述数据消息包括感兴趣的数据或订户联系信息。
示例4可以包括示例1至3中的任一项所述的***,其中,所述消息确定器中的至少一个用于将消息提供给故障管理***层次结构中的较高级别处的聚合器,并且其中,所述聚合器用于收集来自所述故障管理***层次结构中的较低级别的消息,并且用于对所述消息进行过滤以将至少所有可用故障信息的子集提供给所述故障管理***层次结构中的较高级别。
示例5可以包括示例1至4中的任一项所述的***,其中,消息确定器包括数据确定器,其用于动态地确定针对所述消息确定器感兴趣的数据的需要;以及消息生成器,其用于生成请求消息以用于以下中的一个或多个:对包括所述感兴趣的数据的消息请求订阅,或提示对所述请求消息的订阅以使所述感兴趣的数据通过所述发布-订阅***来发布。
示例6可以包括示例1至5中的任一项所述的***,其中,消息确定器包括数据确定器,其用于动态地确定用于将感兴趣的数据提供给至少一个其他消息确定器的能力;订阅批准器,其用于确定是否准许订阅以提供包括所述感兴趣的数据的数据消息;能力调整器,其用于基于对所述感兴趣的数据的描述或用于所述消息确定器的更新的策略中的一个或多个,来确定是否调整与所述消息确定器相关联的故障管理组件的管理能力;以及消息生成器,其用于生成要通过所述发布-订阅***发布的所述数据消息。
示例7可以包括示例1至6中的任一项所述的***,其中,至少一个消息包括故障监测消息、故障响应消息、故障恢复消息、故障报告消息、故障策略消息或故障预测消息。
示例8可以包括一种用于管理故障情况的装置,包括消息确定器,其用于通过发布者-订户***动态地发布消息,并且通过所述发布者-订户***动态地订阅消息,其中,至少一个消息用于协调动作以管理计算机***中的故障情况。
示例9可以包括示例8所述的装置,还包括以下中的一个或多个:故障预测器,其用于预测在高性能计算(HPC)***中的故障情况;故障报告器,其用于将故障信息传送给用户;故障监测器,其用于监测所述HPC***的健康;故障处理器,其用于响应于所述HPC***中的故障情况或者从所述HPC***中的故障情况中恢复中的一个或多个;故障策略维护器,其用于维护用于故障管理组件的规则;或者***接口,其用于通过所述发布者-订户***实时地将所述故障信息传送给一个或多个感兴趣的消息确定器。
示例10可以包括示例8至9中的任一项所述的装置,其中,所述消息确定器用于以下各项中的一个或多个:从代理接收信息,其中,所述信息包括数据消息中的一个或多个,所述数据消息包括感兴趣的数据或订户联系信息;或者将消息提供给故障管理***层次结构中的较高级别处的聚合器。
示例11可以包括示例8至10中的任一项所述的装置,还包括以下中的一个或多个:数据确定器,其用于动态地确定针对所述消息确定器感兴趣的数据的需要;或者消息生成器,其用于生成请求消息以用于以下中的一个或多个:对包括感兴趣的数据的消息请求订阅或提示对所述请求消息的订阅以使所述感兴趣的数据通过所述发布-订阅***来发布。
示例12可以包括示例8至11中的任一项所述的装置,还包括以下中的一个或多个:数据确定器,其用于动态地确定用于将感兴趣的数据提供给至少一个其他消息确定器的能力;订阅批准器,其用于确定是否准许订阅以提供包括所述感兴趣的数据的数据消息;能力调整器,其用于基于对所述感兴趣的数据的描述或用于所述消息确定器的更新的策略中的一个或多个,来确定是否调整与所述消息确定器相关联的故障管理组件的管理能力;或者消息生成器,其用于生成要通过所述发布-订阅***发布的所述数据消息。
示例13可以包括示例8至12中的任一项所述的装置,其中,至少一个消息包括故障监测消息、故障响应消息、故障恢复消息、故障报告消息、故障策略消息或故障预测消息。
示例14可以包括一种管理故障情况的方法,包括由消息确定器通过发布者-订户***动态地发布消息;以及由所述消息确定器通过所述发布者-订户***动态地订阅消息,其中至少一个消息用于协调动作以管理计算机***中的故障情况。
示例15可以包括示例14所述的方法,还包括以下中的一个或多个:预测在高性能计算(HPC)***中的故障情况;将故障信息传送给用户;监测所述HPC***的健康;响应于所述HPC***中的故障情况或者从所述HPC***中的故障情况中恢复中的一个或多个;维护用于故障管理组件的规则;或者通过所述发布者-订户***实时地将所述故障信息传送给一个或多个消息确定器。
示例16可以包括示例14至15中的任一项所述的方法,还包括以下中的一个或多个:从代理接收信息,其中,所述信息包括数据消息中的一个或多个,所述数据消息包括感兴趣的数据或订户联系信息;或者将消息提供给故障管理***层次结构中的较高级别处的聚合器。
示例17可以包括示例14到16中的任一项所述的方法,还包括以下中的一个或多个:确定针对所述消息确定器感兴趣的数据的需要;或者生成请求消息以用于以下中的一个或多个:对包括感兴趣的数据的消息请求订阅或提示对所述请求消息的订阅以使所述感兴趣的数据通过所述发布-订阅***来发布。
示例18可以包括示例14至17中的任一项所述的方法,还包括以下中的一个或多个:确定用于将感兴趣的数据提供给至少一个其他消息确定器的能力,所述至少一个其他消息确定器发布了包括对所述感兴趣的数据的描述的发布请求消息;确定是否准许订阅以提供包括所述感兴趣的数据的数据消息;基于对所述感兴趣的数据的描述或用于所述消息确定器的更新的策略中的一个或多个,来确定是否调整与所述消息确定器相关联的故障管理组件的管理能力;或者生成要通过所述发布-订阅***发布的所述数据消息。
示例19可以包括示例14至18中的任一项所述的方法,其中,至少一个消息包括故障监测消息、故障响应消息、故障报告消息、故障策略消息或故障预测消息。
示例20可以包括至少一个计算机可读存储介质,所述计算机可读存储介质包括一组指令,所述指令当由设备执行时使得所述设备由消息确定器通过发布者-订户动态地发布消息;以及由所述消息确定器通过所述发布者-订户***动态地订阅消息,其中至少一个消息用于协调动作以管理计算机***中的故障情况。
示例21可以包括示例20所述的至少一个计算机可读存储介质,其中,所述指令当被执行时使得设备用于以下中的一个或多个:预测在高性能计算(HPC)***中的故障情况;将故障信息传送给用户;监测所述HPC***的健康;响应于所述HPC***中的故障情况或者从所述HPC***中的故障情况中恢复中的一个或多个;维护用于故障管理组件的规则;或者通过所述发布者-订户***实时地将所述故障信息传送给一个或多个消息确定器。
示例22可以包括示例20至21中的任一项所述的至少一个计算机可读存储介质,其中,所述指令当被执行时使得设备用于以下中的一个或多个:从代理接收信息,其中,所述信息包括数据消息中的一个或多个,所述数据消息包括感兴趣的数据或订户联系信息;或者将消息提供给故障管理***层次结构中的较高级别处的聚合器。
示例23可以包括示例20至22中的任一项所述的至少一个计算机可读存储介质,其中,所述指令当被执行时使得设备用于以下中的一个或多个:确定针对所述消息确定器感兴趣的数据的需要;或者生成请求消息以用于以下中的一个或多个:对包括感兴趣的数据消息请求订阅或提示对所述请求消息的订阅以使所述感兴趣的数据通过所述发布-订阅***来发布。
示例24可以包括示例20至23中的任一项所述的至少一个计算机可读存储介质,其中,所述指令当被执行时使得设备用于以下中的一个或多个:确定用于将感兴趣的数据提供给至少一个其他消息确定器的能力;确定是否准许订阅以提供包括感兴趣的数据的数据消息;基于对所述感兴趣的数据的描述或用于所述消息确定器的更新的策略中的一个或多个,来确定是否调整将与所述消息确定器相关联的故障管理组件的管理能力;或者生成要通过所述发布-订阅***发布的所述数据消息。
示例25可以包括示例20至24中的任一项所述的至少一个计算机可读存储介质,其中至少一个消息包括故障监测消息、故障响应消息、故障报告消息、故障策略消息或故障预测消息。
示例26可以包括一种用于管理故障情况的装置,包括用于执行示例14至19中任一项所述的方法的单元。
因此,本文描述的技术可以提供HPC***中的可缩放故障管理、实时故障报告和故障响应通信、以及集成的故障响应。例如,来自所有故障管理组件的故障信息和响应动作都可以实时传送给整个故障管理***,以在给定的上下文中适应和/或管理HPC***。在一个示例中,发布-订户总线作为双向动态通信***实时地交换故障信息(例如,故障和响应动作),以使用该发布-订阅总线***提供完全协调的、可放缩的和/或实时的管理动作。发布-订阅总线***可允许消息(和消息类型)、生产者/发布者和消费者/订户的动态(例如,运行中)添加。因此,故障管理组件可以通过交换故障检测和响应信息来更好地适应和响应于当前的***状态。
在一个示例中,故障预测器可以预测故障的发生并且实时发布该信息。感兴趣的消费者(例如故障响应器、故障策略维护器等)可以订阅该信息并自适应地管理HPC***。可以通过创建和发布新的消息类型并允许感兴趣的订户根据需要动态地发现和获得内容,来提供由于在有故障时运行时上下文中的改变而不能被预定义的通信消息和/或通信路径(例如,上下文通信)。此外,可以通过仅促进对感兴趣的实体进行暂时性按需通信来提供可伸缩性。因此,可以利用实时发布-订阅***来实现用于故障管理的暂时性、动态和/或上下文消息的通信。另外,可以连续交换故障检测、故障预测和/或响应动作,以对在大规模HPC***中的故障管理进行最大化。
实施例适用于所有类型的半导体集成电路(“IC”)芯片。这些IC芯片的例子包括但不限于处理器、控制器、芯片组组件、可编程逻辑阵列(PLA)、存储器芯片、网络芯片、片上***(SoC)、SSD/NAND控制器ASIC等等。另外,在一些附图中,信号导线用线表示。一些信号导线可以是不同的以指示更多构成的信号路径,一些信号导线具有数字标签以指示构成的信号路径的编号,和/或一些信号导线在一个或多个末端处具有箭头以指示主要信息流方向。然而,这不应该以限制的方式来解释。相反,可以结合一个或多个示例性实施例来使用这样的额外的细节,以便于更容易地理解电路。任何表示的信号线,无论是否具有额外信息,实际上可以包括可以在多个方向上传播的并且可以用任何合适类型的信号方案来实现的一个或多个信号,例如用差分对实现的数字或模拟线、光纤线和/或单端线。
可能已经给出了示例尺寸/型号/值/范围,尽管实施例不限于是相同的。当制造技术(例如光刻)随着时间的推移而成熟,预计可以制造具有更小尺寸的器件。另外,为了图示和讨论的简单,以及为了不使实施例的某些方面难以理解,在附图中可以或可以不示出公知的到IC芯片和其他组件的电源/接地连接。此外,可以以框图形式示出布置以便避免使实施例难以理解,并且鉴于关于这种框图布置的实现的细节高度依赖于要在其中实现实施例的平台的事实,即,这样的细节应该恰好在本领域技术人员的范围内。在阐述具体细节(例如,电路)以便描述示例实施例的情况下,对于本领域技术人员而言显而易见的是,可以在没有这些具体细节或者具有这些具体细节的变型的情况下实践实施例。因此该描述被认为是说明性的而不是限制性的。
术语“耦合”在本文中可以用于指代所讨论的组件之间的直接或间接的任何类型的关系,并且可以应用于电气、机械、流体、光学、电磁、机电或其他连接。另外,除非另外指出,否则本文中使用的术语“第一”,“第二”等可以仅用于便于讨论,并且不带有特定的时间或时间顺序的重要性。
如在本申请和权利要求书中使用的,由术语“一个或多个”所连接的一列项目可以表示所列术语的任何组合。例如,短语“A、B或C中的一个或多个”可以表示A;B;C;A和B;A和C;B和C;或A、B和C。另外,术语“等等”或“等”所连接的一列项目可以表示所列术语的任何组合以及与其他术语的任何组合。
本领域的技术人员将从前面的描述中认识到,实施例的广泛技术可以以各种形式来实现。因此,尽管已经结合其特定示例描述了实施例,但是实施例的真正的范围不应该如此受到限制,这是因为在研究附图、说明书和以上权利要求书后,其他修改对于本领域技术人员将变得显而易见。
Claims (25)
1.一种用于管理故障情况的***,包括:
传感器,其用于收集高性能计算(HPC)***中的数据;以及
多个消息确定器,其中,所述消息确定器中的每个用于通过发布者-订户***动态地发布消息,并且用于通过所述发布者-订户***动态地订阅消息,并且其中,至少一个消息与来自所述传感器的数据相对应并且用于协调动作以管理所述HPC***中的故障情况。
2.如权利要求1所述的***,还包括:
故障预测器,其用于预测所述HPC***中的故障情况;
故障报告器,其用于将故障信息传送给用户;
分布式故障监测器,其用于监测所述HPC***的健康;
分布式故障处理器,其用于响应于所述HPC***中的故障情况或从所述HPC***中的故障情况中恢复中的一个或多个;
故障策略维护器,其用于维护用于故障管理组件的规则;以及
***接口,其用于通过所述发布者-订户***实时地将所述故障信息传送给一个或多个感兴趣的消息确定器。
3.如权利要求1所述的***,其中,所述消息确定器中的至少一个用于从代理接收信息,并且其中,所述信息包括数据消息中的一个或多个,所述数据消息包括感兴趣的数据或订户联系信息。
4.如权利要求1所述的***,其中,所述消息确定器中的至少一个用于向故障管理***层次结构的较高级别处的聚合器提供消息,并且其中,所述聚合器用于收集来自所述故障管理***层次结构的较低级别的消息,并且过滤消息以将至少所有可用故障信息的子集提供给所述故障管理***层次结构的较高级别。
5.如权利要求1所述的***,其中,消息确定器包括:
数据确定器,其用于动态地确定针对所述消息确定器感兴趣的数据的需求;以及
消息生成器,其用于生成请求消息以用于以下中的一个或多个:对包括所述感兴趣的数据的消息请求订阅或提示对所述请求消息的订阅以使所述感兴趣的数据通过所述发布-订阅***发布。
6.如权利要求1所述的***,其中,消息确定器包括:
数据确定器,其用于动态地确定用于向至少一个其他消息确定器提供感兴趣的数据的能力;
订阅批准器,其用于确定是否准许订阅以提供包括所述感兴趣的数据的数据消息;
能力调整器,其用于基于所述感兴趣的数据的描述或所述消息确定器的更新的策略中的一个或多个来确定是否调整与所述消息确定器相关联的故障管理组件的管理能力;以及
消息生成器,其用于生成要通过所述发布-订阅***发布的数据消息。
7.如权利要求1至6中的任一项所述的***,其中,至少一个消息包括故障监测消息、故障响应消息、故障恢复消息、故障报告消息、故障策略消息或故障预测消息。
8.一种用于管理故障情况的装置,包括:
消息确定器,其用于通过发布者-订户***动态地发布消息,并且通过所述发布者-订户***动态地订阅消息,其中,至少一个消息将用于协调动作以管理计算机***中的故障情况。
9.如权利要求8所述的装置,还包括以下中的一个或多个:
故障预测器,其用于预测高性能计算(HPC)***中的故障情况;
故障报告器,其用于向用户传送故障信息;
故障监测器,其用于监测所述HPC***的健康;
故障处理器,其用于响应所述HPC***中的故障情况或者从所述HPC***中的故障情况中恢复中的一个或多个;
故障策略维护器,其用于维护用于故障管理组件的规则;或者
***接口,其用于通过所述发布者-订户***实时地将所述故障信息传送给一个或多个感兴趣的消息确定器。
10.如权利要求8所述的装置,其中,所述消息确定器用于以下中的一个或多个:
从代理器接收信息,其中,所述信息包括数据消息中的一个或多个,所述数据消息包括感兴趣的数据或订户联系信息;或者
向故障管理***层次结构的较高级别处的聚合器提供消息。
11.如权利要求8所述的装置,还包括以下中的一个或多个:
数据确定器,其用于动态地确定针对所述消息确定器感兴趣的数据的需求;或者
消息生成器,其用于生成请求消息以用于以下中的一个或多个:对包括所述感兴趣的数据的消息的请求订阅或提示对所述请求消息的订阅以使所述感兴趣的数据通过所述发布-订阅***发布。
12.如权利要求8所述的装置,还包括以下中的一个或多个:
数据确定器,其用于动态地确定用于向至少一个其他消息确定器提供感兴趣的数据的能力;
订阅批准器,其用于确定是否准许订阅以提供包括所述感兴趣的数据的数据消息;
能力调整器,其用于基于所述感兴趣的数据的描述或所述消息确定器的更新的策略中的一个或多个来确定是否调整与所述消息确定器相关联的故障管理组件的管理能力;或者
消息生成器,其用于生成要通过所述发布-订阅***发布的数据消息。
13.如权利要求8至12中的任一项所述的装置,其中,至少一个消息包括故障监测消息、故障响应消息、故障恢复消息、故障报告消息、故障策略消息或故障预测消息。
14.一种用于管理故障情况的方法,包括:
由消息确定器通过发布者-订户***动态地发布消息;以及
由所述消息确定器通过发布者-订户***动态地订阅消息,其中,至少一个消息用于协调动作以管理计算机***中的故障情况。
15.如权利要求14所述的方法,还包括以下中的一个或多个:
预测高性能计算(HPC)***中的故障情况;
将故障信息传送给用户;
监测所述HPC***的健康;
响应所述HPC***中的故障情况或者从所述HPC***中的故障情况中恢复中的一个或多个;
维护故障管理组件的规则;或者
通过所述发布者-订户***实时地将所述故障信息传送给一个或多个消息确定器。
16.如权利要求14所述的方法,还包括以下中的一个或多个:
从代理接收信息,其中,所述信息包括数据消息中的一个或多个,所述数据消息包括感兴趣的数据或订户联系信息;或者
向故障管理***层次结构的较高级别处的聚合器提供消息。
17.如权利要求14所述的方法,还包括以下中的一个或多个:
确定针对所述消息确定器感兴趣的数据的需要;或者
生成请求消息以用于以下中的一个或多个:对包括所述感兴趣的数据的消息的请求订阅或提示对所述请求消息的订阅以使所述感兴趣的数据通过所述发布-订阅***发布。
18.如权利要求14所述的方法,还包括以下中的一个或多个:
确定用于向发布了包括所述感兴趣的数据的描述的发布请求消息的至少一个其他消息确定器提供感兴趣的数据的能力;
确定是否准许订阅以提供包括所述感兴趣的数据的数据消息;
基于所述感兴趣的数据的描述或所述消息确定器的更新的策略中的一个或多个来确定是否调整与所述消息确定器相关联的故障管理组件的管理能力;或者
生成要通过所述发布-订阅***发布的数据消息。
19.如权利要求14至18中的任一项所述的方法,其中,至少一个消息包括故障监测消息、故障响应消息、故障报告消息、故障策略消息或故障预测消息。
20.包括一组指令的至少一个计算机可读存储介质,所述指令当由设备执行时使所述设备用于:
由消息确定器通过发布者-订户动态地发布消息;以及
由所述消息确定器通过所述发布者-订户***动态地订阅消息,其中,至少一个消息用于协调动作以管理计算机***中的故障情况。
21.如权利要求20所述的至少一个计算机可读存储介质,其中,所述指令当被执行时使得设备用于以下中的一个或多个:
预测高性能计算(HPC)***中的故障情况;
将故障信息传送给用户;
监测所述HPC***的健康;
响应于所述HPC***中的故障情况或者从所述HPC***中的故障情况中恢复中的一个或多个;
维护用于故障管理组件的规则;或者
通过所述发布者-订户***实时地将所述故障信息传送给一个或多个消息确定器。
22.如权利要求20所述的至少一个计算机可读存储介质,其中,所述指令当被执行时使得设备用于以下中的一个或多个:
从代理接收信息,其中,所述信息包括数据消息中的一个或多个,所述数据消息包括感兴趣的数据或订户联系信息;或者
向故障管理***层次结构的较高级别处的聚合器提供消息。
23.如权利要求20所述的至少一个计算机可读存储介质,其中,所述指令当被执行时使得设备用于以下中的一个或多个:
确定针对所述消息确定器感兴趣的数据的需要;或者
生成请求消息以用于以下中的一个或多个:对包括所述感兴趣的数据的消息的请求订阅或提示对所述请求消息的订阅以使所述感兴趣的数据通过所述发布-订阅***发布。
24.如权利要求20所述的至少一个计算机可读存储介质,其中,所述指令当被执行时使得设备用于以下中的一个或多个:
确定用于将感兴趣的数据提供给至少一个其他消息确定器的能力;
确定是否准许订阅以提供包括感兴趣的数据的数据消息;
基于所述感兴趣的数据的描述或所述消息确定器的更新的策略中的一个或多个来确定是否调整将与所述消息确定器相关联的故障管理组件的管理能力;或者
生成要通过所述发布-订阅***发布的数据消息。
25.一种用于管理故障情况的装置,包括用于执行根据权利要求14至19中的任一项所述的方法的单元。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/865,872 | 2015-09-25 | ||
US14/865,872 US9804913B2 (en) | 2015-09-25 | 2015-09-25 | Management of a fault condition in a computing system |
PCT/US2016/047951 WO2017052872A1 (en) | 2015-09-25 | 2016-08-22 | Management of a fault condition in a computing system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107924359A true CN107924359A (zh) | 2018-04-17 |
CN107924359B CN107924359B (zh) | 2021-09-14 |
Family
ID=58387276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680049019.2A Active CN107924359B (zh) | 2015-09-25 | 2016-08-22 | 计算***中的故障情况的管理 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9804913B2 (zh) |
CN (1) | CN107924359B (zh) |
DE (1) | DE112016004368T5 (zh) |
WO (1) | WO2017052872A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9804913B2 (en) * | 2015-09-25 | 2017-10-31 | Intel Corporation | Management of a fault condition in a computing system |
GB2553784B (en) * | 2016-09-13 | 2019-02-06 | Advanced Risc Mach Ltd | Management of log data in electronic systems |
GB2563242B (en) | 2017-06-07 | 2020-01-29 | Ge Aviat Systems Ltd | A method and system for enabling component monitoring redundancy in a digital network of intelligent sensing devices |
CN109525625B (zh) * | 2017-09-20 | 2020-12-22 | 华为技术有限公司 | 一种信息订阅方法及装置 |
US11093518B1 (en) | 2017-09-23 | 2021-08-17 | Splunk Inc. | Information technology networked entity monitoring with dynamic metric and threshold selection |
US11106442B1 (en) | 2017-09-23 | 2021-08-31 | Splunk Inc. | Information technology networked entity monitoring with metric selection prior to deployment |
US11159397B2 (en) * | 2017-09-25 | 2021-10-26 | Splunk Inc. | Lower-tier application deployment for higher-tier system data monitoring |
CN108650110B (zh) * | 2018-03-27 | 2021-01-08 | 北京航空航天大学 | 一种hpc间接网络环境下的链路故障检测方法 |
JP7047621B2 (ja) * | 2018-06-21 | 2022-04-05 | 日本電信電話株式会社 | オペレーション装置、および、オペレーション方法 |
US10831592B1 (en) * | 2018-09-27 | 2020-11-10 | Juniper Networks, Inc | Apparatus, system, and method for correcting slow field-replaceable units in network devices |
US11151121B2 (en) | 2019-08-30 | 2021-10-19 | International Business Machines Corporation | Selective diagnostics for computing systems |
WO2021090470A1 (ja) * | 2019-11-08 | 2021-05-14 | 日本電信電話株式会社 | 運用装置、保守管理システム、運用方法およびプログラム |
WO2021156972A1 (ja) * | 2020-02-05 | 2021-08-12 | 日本電信電話株式会社 | 保守管理システム、メッセージ制御装置、メッセージ制御方法、およびプログラム |
US11621881B2 (en) * | 2020-02-10 | 2023-04-04 | International Business Machines Corporation | Error detection and broadcasting using partner sensors |
US11340809B1 (en) * | 2020-10-29 | 2022-05-24 | EMC IP Holding Company LLC | Redirecting i/o communications based on network topology |
US11676072B1 (en) | 2021-01-29 | 2023-06-13 | Splunk Inc. | Interface for incorporating user feedback into training of clustering model |
US11914457B2 (en) * | 2022-03-30 | 2024-02-27 | Bank Of America Corporation | System for early detection of operational failure in component-level functions within a computing environment |
EP4307117A1 (en) * | 2022-07-15 | 2024-01-17 | NXP USA, Inc. | Layered architecture for managing health of an electronic system and methods for layered health management |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1761194A (zh) * | 2004-10-14 | 2006-04-19 | 国际商业机器公司 | 在基于内容的发布/预订***中传播预订的***和方法 |
US20070260733A1 (en) * | 2006-05-02 | 2007-11-08 | Availigent, Inc. | Method and system for providing high availability to distributed computer applications |
CN101159710A (zh) * | 2007-11-06 | 2008-04-09 | 中国科学院计算技术研究所 | 面向服务的架构下服务组合的搜索方法和*** |
CN103562890A (zh) * | 2011-05-18 | 2014-02-05 | 国际商业机器公司 | 在发布/订阅消息***中管理消息订阅 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5664093A (en) * | 1994-12-27 | 1997-09-02 | General Electric Company | System and method for managing faults in a distributed system |
US6789257B1 (en) * | 2000-04-13 | 2004-09-07 | International Business Machines Corporation | System and method for dynamic generation and clean-up of event correlation circuit |
US7406537B2 (en) | 2002-11-26 | 2008-07-29 | Progress Software Corporation | Dynamic subscription and message routing on a topic between publishing nodes and subscribing nodes |
US7281112B1 (en) * | 2005-02-28 | 2007-10-09 | Sun Microsystems, Inc. | Method for storing long-term performance data in a computer system with finite storage space |
US8352589B2 (en) * | 2005-11-15 | 2013-01-08 | Aternity Information Systems Ltd. | System for monitoring computer systems and alerting users of faults |
US20070174768A1 (en) * | 2006-01-20 | 2007-07-26 | International Business Machines Corporation | Adaptive alert management |
US8065411B2 (en) | 2006-05-31 | 2011-11-22 | Sap Ag | System monitor for networks of nodes |
US8706451B1 (en) * | 2006-12-15 | 2014-04-22 | Oracle America, Inc | Method and apparatus for generating a model for an electronic prognostics system |
US8731724B2 (en) * | 2009-06-22 | 2014-05-20 | Johnson Controls Technology Company | Automated fault detection and diagnostics in a building management system |
JP2011170724A (ja) | 2010-02-22 | 2011-09-01 | Hitachi Ltd | 故障診断システム、故障診断装置および故障診断プログラム |
US9280437B2 (en) * | 2012-11-20 | 2016-03-08 | Bank Of America Corporation | Dynamically scalable real-time system monitoring |
US9274902B1 (en) * | 2013-08-07 | 2016-03-01 | Amazon Technologies, Inc. | Distributed computing fault management |
US9940835B2 (en) | 2014-01-16 | 2018-04-10 | International Business Machines Corporation | Dynamically routing messages in a publish/subscribe system by creating temporal topics for subscriptions and publications |
US9390814B2 (en) | 2014-03-19 | 2016-07-12 | Sandisk Technologies Llc | Fault detection and prediction for data storage elements |
US9804913B2 (en) * | 2015-09-25 | 2017-10-31 | Intel Corporation | Management of a fault condition in a computing system |
-
2015
- 2015-09-25 US US14/865,872 patent/US9804913B2/en active Active
-
2016
- 2016-08-22 US US15/754,974 patent/US11175974B2/en active Active
- 2016-08-22 WO PCT/US2016/047951 patent/WO2017052872A1/en active Application Filing
- 2016-08-22 DE DE112016004368.6T patent/DE112016004368T5/de not_active Withdrawn
- 2016-08-22 CN CN201680049019.2A patent/CN107924359B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1761194A (zh) * | 2004-10-14 | 2006-04-19 | 国际商业机器公司 | 在基于内容的发布/预订***中传播预订的***和方法 |
US20070260733A1 (en) * | 2006-05-02 | 2007-11-08 | Availigent, Inc. | Method and system for providing high availability to distributed computer applications |
CN101159710A (zh) * | 2007-11-06 | 2008-04-09 | 中国科学院计算技术研究所 | 面向服务的架构下服务组合的搜索方法和*** |
CN103562890A (zh) * | 2011-05-18 | 2014-02-05 | 国际商业机器公司 | 在发布/订阅消息***中管理消息订阅 |
Also Published As
Publication number | Publication date |
---|---|
DE112016004368T5 (de) | 2018-08-30 |
US11175974B2 (en) | 2021-11-16 |
WO2017052872A1 (en) | 2017-03-30 |
US9804913B2 (en) | 2017-10-31 |
US20170091007A1 (en) | 2017-03-30 |
CN107924359B (zh) | 2021-09-14 |
US20200233738A1 (en) | 2020-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107924359A (zh) | 计算***中的故障情况的管理 | |
Paul et al. | Fog Computing‐Based IoT for Health Monitoring System | |
Shi et al. | Edge computing: Vision and challenges | |
CN111083005B (zh) | 针对网络设备的健康数据的可扩展可视化的方法和*** | |
US10108480B2 (en) | Data stream processor and method to counteract anomalies in data streams transiting a distributed computing system | |
CN102782736B (zh) | 警报综合***和方法 | |
WO2021145984A1 (en) | Systems and methods for distributed incident classification and routing | |
WO2017167122A1 (zh) | 一种进行应用程序管理的方法及设备 | |
Besaleva et al. | Applications of social networks and crowdsourcing for disaster management improvement | |
CN107005801B (zh) | 上下文感知的动态组形成 | |
Rajagopal et al. | FedSDM: Federated learning based smart decision making module for ECG data in IoT integrated Edge–Fog–Cloud computing environments | |
US8922377B2 (en) | System, method, and software for automating complex alerts | |
CN106453377A (zh) | 基于区块链的分布式网络智能监控***及方法 | |
Besaleva et al. | CrowdHelp: A crowdsourcing application for improving disaster management | |
DE102014009871A1 (de) | Vorhersagendes Weiterleiten von Meldungsdaten | |
CN102122379A (zh) | 离线广告服务 | |
Mehdipour et al. | Fog computing realization for big data analytics | |
Chowdhury et al. | The co-evolution of cloud and IoT applications: Recent and future trends | |
Ahmad et al. | IoT-fog-based healthcare 4.0 system using blockchain technology | |
Sivasangari et al. | Big data analytics for 5G-enabled IoT healthcare | |
US10516639B2 (en) | Aggregated notification feeds | |
Hajvali et al. | Software architecture for IoT-based health-care systems with cloud/fog service model | |
Li et al. | Smart work package learning for decentralized fatigue monitoring through facial images | |
Lee et al. | UMONS: Ubiquitous monitoring system in smart space | |
EP4341813A1 (en) | System and method for automatically computing recovery metrics and suggesting recovery plans via real-time telemetry |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |