CN113722136A - 一种服务器故障处理方法、系统、电子设备及存储介质 - Google Patents

一种服务器故障处理方法、系统、电子设备及存储介质 Download PDF

Info

Publication number
CN113722136A
CN113722136A CN202110920685.1A CN202110920685A CN113722136A CN 113722136 A CN113722136 A CN 113722136A CN 202110920685 A CN202110920685 A CN 202110920685A CN 113722136 A CN113722136 A CN 113722136A
Authority
CN
China
Prior art keywords
server
current
check point
fault
state information
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.)
Withdrawn
Application number
CN202110920685.1A
Other languages
English (en)
Inventor
万翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Shandong Computer Technology Co Ltd
Original Assignee
Inspur Shandong Computer Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Shandong Computer Technology Co Ltd filed Critical Inspur Shandong Computer Technology Co Ltd
Priority to CN202110920685.1A priority Critical patent/CN113722136A/zh
Publication of CN113722136A publication Critical patent/CN113722136A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error 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/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Retry When Errors Occur (AREA)

Abstract

本申请公开了一种服务器故障处理方法,所述服务器故障处理方法包括:获取服务器的状态信息;其中,所述状态信息包括电流、温度、能耗值和GPU故障间隔时间;根据所述状态信息确定所述服务器的校验点,并保存所述服务器在所述校验点的冗余数据;若检测到所述服务器出现故障,则利用所述冗余数据回滚至最新的校验点对应的状态。本申请能够恢复服务器的故障,提高服务器的可靠性。本申请还公开了一种服务器故障处理系统、一种电子设备及一种存储介质,具有以上有益效果。

Description

一种服务器故障处理方法、系统、电子设备及存储介质
技术领域
本申请涉及服务器管理技术领域,特别涉及一种服务器故障处理方法、系统、电子设备及存储介质。
背景技术
随着技术的发展,计算系统的构成愈来愈复杂,导致计算系统可靠性问题也愈来愈严重。系统越复杂,意味着其承载的信息量越大,重要性越高、功能越强、使用范围越广,一旦出现无法恢复的故障所造成的损失也是巨大的。
因此,如何恢复服务器的故障,提高服务器的可靠性是本领域技术人员目前需要解决的技术问题。
发明内容
本申请的目的是提供一种服务器故障处理方法、系统、一种电子设备及一种存储介质,能够恢复服务器的故障,提高服务器的可靠性。
为解决上述技术问题,本申请提供一种服务器故障处理方法,该服务器故障处理方法包括:
获取服务器的状态信息;其中,所述状态信息包括电流、温度、能耗值和GPU故障间隔时间;
根据所述状态信息确定所述服务器的校验点,并保存所述服务器在所述校验点的冗余数据;
若检测到所述服务器出现故障,则利用所述冗余数据回滚至最新的校验点对应的状态。
可选的,在根据所述状态信息确定所述服务器的校验点之前,还包括:
确定所述服务器在首次出现故障时的最大能耗和平均工作电流;
确定所述服务器的工作最大温度;
根据所述的最大能耗、所述平均工作电流和所述工作最大温度确定状态参考值;
相应的,根据所述状态信息确定所述服务器的校验点,包括:
将所述状态信息与所述状态参考值进行比较,并根据比较结果确定所述服务器的校验点。
可选的,将所述状态信息与所述状态参考值进行比较,并根据比较结果确定所述服务器的校验点,包括:
判断所述服务器在第一时刻是否符合第一预设条件;其中,所述第一时刻为所述服务器的设备连续执行时间为所述GPU故障间隔时间的二分之一对应的时刻;所述第一预设条件为所述能耗值小于所述最大能耗的二分之一、所述电流小于所述故障电流的二分之一且所述温度小于所述工作最大温度的二分之一;所述设备连续执行时间内不存在所述校验点;
若是,则将所述第一时刻作为所述服务器当前的校验点。
可选的,根据所述状态信息确定所述服务器的校验点包括:
判断所述状态信息是否符合第二预设条件;其中,所述第二预设条件包括所述能耗值在预设能耗区间、或所述电流在预设电流区间、或所述温度在预设温度区间;
若是,则将当前时刻作为所述服务器当前的校验点。
可选的,根据所述状态信息确定所述服务器的校验点,包括:
若所述电流的涨幅达到第一预设值,则将当前时刻作为所述服务器当前的校验点;
若所述温度的涨幅达到第二预设值,则将当前时刻作为所述服务器当前的校验点;
若所述能耗的涨幅达到第三预设值,则将当前时刻作为所述服务器当前的校验点。
可选的,保存所述服务器在所述校验点的冗余数据,包括:
利用所述服务器中CPU的空闲线程保存所述服务器在所述校验点的冗余数据。
可选的,在保存所述服务器在所述校验点的冗余数据之后,还包括:
获取所述服务器的实际计算结果,并根据所述冗余数据确定冗余计算结果;
若所述实际计算结果与所述冗余计算结果不同,则判定所述服务器出现故障。
本申请还提供了一种服务器故障处理系统,该系统包括:
状态获取模块,用于获取服务器的状态信息;其中,所述状态信息包括电流、温度、能耗值和GPU故障间隔时间;
冗余保存模块,用于根据所述状态信息确定所述服务器的校验点,并保存所述服务器在所述校验点的冗余数据;
故障处理模块,用于若检测到所述服务器出现故障,则利用所述冗余数据回滚至最新的校验点对应的状态。
本申请还提供了一种存储介质,其上存储有计算机程序,所述计算机程序执行时实现上述服务器故障处理方法执行的步骤。
本申请还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现上述服务器故障处理方法执行的步骤。
本申请提供了一种服务器故障处理方法,包括:获取服务器的状态信息;其中,所述状态信息包括电流、温度、能耗值和GPU故障间隔时间;根据所述状态信息确定所述服务器的校验点,并保存所述服务器在所述校验点的冗余数据;若检测到所述服务器出现故障,则利用所述冗余数据回滚至最新的校验点对应的状态。
本申请根据服务器的状态信息设置校验点,并保存服务器在校验点的冗余数据。上述状态信息包括电流、温度、能耗值和GPU故障间隔时间,在服务器出现故障之前服务器的状态信息会发生变化,因此根据服务器的状态信息能够在发生故障之前合理设置校验点,及时对服务器的状态进行备份。当检测到服务器出现故障时,可以利用在校验点存储的冗余数据执行回滚操作,以使服务器恢复至最新的校验点对应的状态。上述方案能够恢复服务器的故障,提高服务器的可靠性。本申请同时还提供了一种服务器故障处理系统、一种电子设备和一种存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种服务器故障处理方法的流程图;
图2为本申请实施例所提供的一种校验点确定方法的流程图;
图3为本申请实施例所提供的一种服务器的错误模型示意图;
图4为本申请实施例所提供的一种异步校验点设置方法的流程图;
图5为本申请实施例所提供的一种故障恢复原理示意图;
图6为本申请实施例所提供的一种容错机制流程图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
从服务器系统运行的持久性来说,可以从多个方面来指定系统可靠性指标。对于可持续计算系统来说,常用可靠度、平均故障间隔时间MTBF(Mean Time BetweenFailures)、平均修复时间MTTR(Mean Time To Restoration)等指标来表示处理器可靠性;而对于不可持续计算系统来说,常用可靠度、故障率等指标表示系统可靠性。
提高可靠性的方法除了降低设备能耗以外还可以通过对故障进行容错来实现。容错的基本途径是冗余,其主要包括时间和空间两个方面:前者是指通过多次计算或数据传输来达到容错目的,而后者则需要额外的资源如处理器、数据等达到容错目的。通常来说,这两种冗余方式是无法独立存在的,基本都是共同使用进行容错。
通过多次计算或数据传输并比较多次执行结果的容错方式是时间冗余。若任务共执行了两次,且两次执行结果并不相同,就可以确定其中至少有一次出现故障,可以通过这种方法进行错误检测;若任务共执行了三次,且三次结果中只有两次结果相同,则可断定另一次不相同结果执行过程发生了故障,并且可得到正确结果。需要注意的是,因为系统硬件无法实现冗余功能,因此时间冗余相关的容错方法只能够解决瞬时故障带来的计算错误,而无法解决硬件出现的永久性失效。
通过编码实现的容错属于信息冗余,通过检测、校正数据在储存、传递甚至计算中出现的故障。ECC(Error Correcting Code)就是一种信息冗余的容错方法,它首先对原始信息进行编码,并纠正信息在程序执行中出现的错误。基于算法的容错(Algorithm-basedfault tolerance,ABFT)是另一种典型的信息冗余的容错方法,其主要针对具体的运算,例如矩阵计算等。基于算法的容错也是通过对原始信息进行编码,然后在程序计算过程中检测这种编码是否仍然保留,进而判断是否发生了错误。
本申请实施例提出了基于能耗分析模型的可靠性提升方案。可以在针对多GPU服务器提出的异步校验点设置的基础上进行的,根据处理器上执行任务的不同,以及各处理器功耗的不同来分别设置校验点间隔,能充分隐藏校验点回滚时间又能最小化容错的冗余计算开销,尽可能的减少容错带来的时间消耗。
下面请参见图1,图1为本申请实施例所提供的一种服务器故障处理方法的流程图。
具体步骤可以包括:
S101:获取服务器的状态信息;
其中,本实施例可以应用于多GPU(graphics processing unit,图形处理器)服务器,即包括多个图像处理器的服务器,上述多GPU服务器还可以包括CPU(centralprocessing unit,中央处理器)。本步骤中获取的服务器的状态信息包括电流、温度、能耗值和GPU故障间隔时间。GPU故障间隔时间即GPU的平均故障间隔时间MTBF,GPU故障间隔时间可以通过大数据统计确定。
S102:根据所述状态信息确定所述服务器的校验点,并保存所述服务器在所述校验点的冗余数据;
其中,由于CPU的平均故障间隔时间MTBF远高于GPU的平均故障间隔时间MTBF,且GPU计算单元由于其高密度高集成度的晶体管在长时间运行中更易导致GPU故障,本实施例中提到的故障可以为GPU故障。
在服务器发生故障之前服务器的状态信息会发生变化,如电流突变、温度突然升高、能耗增加等,因此在得到服务器的状态信息之后,可以根据服务器当前的状态信息确定校验点。校验点用于保存应用程序执行时的状态,即执行过程中的各种数据。
在确定校验点之后,本实施例可以保存所述服务器在所述校验点的冗余数据。本实施例不限定校验点的数量,每一校验点都有其对应的冗余数据,服务器可以利用冗余数据恢复任一校验点对应的状态。
进一步的,在保存所述服务器在所述校验点的冗余数据之后,还可以获取所述服务器的实际计算结果,并根据所述冗余数据确定冗余计算结果;若所述实际计算结果与所述冗余计算结果不同,则判定所述服务器出现故障。
S103:若检测到所述服务器出现故障,则利用所述冗余数据回滚至最新的校验点对应的状态。
其中,在检测到服务器出现故障时,本实施例可以利用最新的校验点对应的冗余数据执行状态回滚操作,以便恢复至最新校验点对应的状态。
本实施例根据服务器的状态信息设置校验点,并保存服务器在校验点的冗余数据。上述状态信息包括电流、温度、能耗值和GPU故障间隔时间,在服务器出现故障之前服务器的状态信息会发生变化,因此根据服务器的状态信息能够在发生故障之前合理设置校验点,及时对服务器的状态进行备份。当检测到服务器出现故障时,可以利用在校验点存储的冗余数据执行回滚操作,以使服务器恢复至最新的校验点对应的状态。上述方案能够恢复服务器的故障,提高服务器的可靠性。
请参见图2,图2为本申请实施例所提供的一种校验点确定方法的流程图,可以将本实施例与图1对应的实施例相结合得到进一步的实施方式,本实施例可以包括以下步骤:
S201:确定所述服务器在首次出现故障时的最大能耗和平均工作电流;
S202:确定所述服务器的工作最大温度;
S203:根据所述的最大能耗、所述平均工作电流和所述工作最大温度确定状态参考值;
S204:将所述状态信息与所述状态参考值进行比较,并根据比较结果确定所述服务器的校验点。
作为一种可行的实施方式,将所述状态信息与所述状态参考值进行比较的过程包括:判断所述服务器在第一时刻是否符合第一预设条件;其中,所述第一时刻为所述服务器的设备连续执行时间为所述GPU故障间隔时间的二分之一对应的时刻;所述第一预设条件为所述能耗值小于所述最大能耗的二分之一、所述电流小于所述故障电流的二分之一且所述温度小于所述工作最大温度的二分之一;若是,则将所述第一时刻作为所述服务器当前的校验点。通过上述方式,本实施例在当前能耗值小于最大能耗的二分之一、当前电流小于故障电流的二分之一、当前温度小于工作最大温度的二分之一的条件下,将设备连续执行二分之一的GPU故障间隔时间的时刻作为备份冗余数据的校验点。上述能耗指瞬时能耗,可以利用功率确定。上述设备连续执行时间内不存在所述校验点,即在设备连续执行时间内不备份冗余数据。
作为另一种可行的实施方式将所述状态信息与所述状态参考值进行比较的过程包括:判断所述状态信息是否符合第二预设条件;其中,所述第二预设条件包括所述能耗值在预设能耗区间、或所述电流在预设电流区间、或所述温度在预设温度区间;若是,则将当前时刻作为所述服务器当前的校验点。上述预设能耗区间的最小值大于或等于最大能耗的二分之一,上述预设电流区间的最小值大于或等于故障电流的二分之一,上述预设温度区间的最小值大于或等于工作最大温度的二分之一。
进一步的,本实施例还可以根据状态信息的涨幅设置校验点,具体方式如下:
(1)若所述状态信息中的电流的涨幅达到第一预设值,则将当前时刻作为所述服务器当前的校验点;
(2)若所述状态信息中的温度的涨幅达到第二预设值,则将当前时刻作为所述服务器当前的校验点;
(3)若所述状态信息中的能耗的涨幅达到第三预设值,则将当前时刻作为所述服务器当前的校验点。
下面通过在实际应用中的实施例说明上述实施例描述的流程。本实施例针对多GPU服务器中出现的故障进行分析和容错,提出一种面向大规模数据处理的多GPU服务器的容错方案。为了提高系统的可靠性,本实施例提出一种低开销的异步检查点工作机制。本实施例利用CPU多线程和流水线技术,把冗余数据通信延迟和故障检测开销,隐藏在GPU并行计算中。通过对系统的实时能耗、设备温度和电流的综合分析,进一步降低检查点出现频率,减少检查点数量。同时在设置的检查点基础上,提出了相对应的错误检测及错误恢复机制。本实施例不仅能够避免由于任务过于集中产生的系统故障,而且对故障产生后中断任务的可持续执行至关重要。
请参见图3,图3为本申请实施例提供的一种服务器的错误模型示意图,在本实施例针对的错误模型中,主要关注GPU计算单元中出现的瞬时故障,因为CPU的MTBF远高于GPU。GPU计算单元由于其高密度高集成度的晶体管在长时间运行中更易导致GPU瞬时故障,甚至会引发CPU故障。图3中有四种不同的错误类型,包括两种CPU错误和两种GPU错误,具体如下:(1)直接在GPU上产生的错误称为GPU原生计算错误;(2)当一些新的GPU指令访问失效数据时引起GPU传播错误;(3)当数据从GPU传输到CPU时,可能产生CPU错误。因此,错误传播到CPU,导致CPU传输错误;(4)如果CPU指令访问错误的CPU数据,最终可能会导致CPU传播错误。
本实施例可以通过以下方式保存冗余数据:利用所述服务器中CPU的空闲线程保存所述服务器在所述校验点的冗余数据。请参见图4,图4为本申请实施例所提供的一种异步校验点设置方法的流程图,图4中H-D Memcpy函数用于将资源内存拷贝到目标内存,可以理解为CPU分配工作给GPU;E表示GPU执行计算;M表示冗余校验点生成,然后传递给CPU;C表示CPU对冗余校验点进行校验计算;X表示CPU检测到冗余数据错误;R表示CPU对数据恢复;Node表示节点;thread0和thread1表示CPU的线程。本实施例提供的异步校验点设置方式如下:
校验点设置是一种向计算系统添加容错能力的技术,它需要保存应用程序执行的状态,以便在出现错误时可以重新恢复计算过程。对于图1中的故障模型,为了避免CPU错误,在将GPU数据传输到CPU之前,对GPU进行校验点设置。
根据CUDA(Compute Unified Device Architecture,统一计算设备架构)编程模型,GPU和CPU之间的数据传输只发生在内核执行的入口和出口。在此期间,不能停止内核执行数据传输,因此应该将校验点放置在核函数之间。另外,由于GPU中设备内存容量的限制,将校验点数据保存并传输到CPU中稳定的存储介质中。因此,本实施例使用异步分布思想进行校验点设置。本实施例使用异步校验点,利用CPU的空闲时间来保存从GPU传输的冗余数据,然后检测冗余数据的正确性。因此,本方案可以有效地减少甚至完全隐藏GPU和CPU之间的数据传输开销,最终实现更高的容错性能。图4模拟了CPU-GPU节点的异步校验点的执行行为。为了简化分析,GPU与相应的CPU线程之间的关系用不同的颜色标记。从图中可以看出,在异步校验点模式下,当CPU端检测到错误时,此时执行恢复过程,将备份下来的冗余数据传回GPU,从而重新进行GPU端的计算,不同的校验点可以充分利用CPU空闲时间进行数据备份和错误检测。
本实施例可以通过以下方式确定校验点位置:
在确定了异步校验点模式后,将确认校验点位置。本实施例提出了一种多因子实时监测的校验点设置方案(MRMCS)来确定校验点的时序,其影响因子包括平均电流、温度、能量消耗和GPU的MTBF。
假设设备出现第一次瞬时故障时消耗的能耗为最大能耗为Epeak。在多重因素综合作用下,校验点设置时机被分为以下几种情况:
情况1:校验点的时间间隔等于设备的MTBF的一半;
Figure BDA0003207294640000091
其中,texecution表示设备连续执行时间,
Figure BDA0003207294640000092
Ereal表示程序执行期间的能耗,Ireal表示程序执行期间的电流,Treal表示程序执行期间的最大温度。当设备执行1/2MTBF时间,且此时能耗、工作电流、温度小于二分之一时设置校验点。Iaverage表示发生首次瞬时故障时的平均工作电流,Tmax表示工作时最大温度,Tintrerval表示校验点设置的时间间隔。
情况2:
Figure BDA0003207294640000093
时,校验点时间间隔被分为以下几种情况:
(1)如果
Figure BDA0003207294640000101
且满足以下第一类条件组中的任一条件时,在当前位置设置校验点。
第一类条件组包括以下三个条件:
Figure BDA0003207294640000102
以及
Figure BDA0003207294640000103
上述方式在设备执行时间不超过1/2MTBF时,如果能耗、电流、温度中任意一种大于等于1/2并小于2/3最大值时,则设置校验点。
(2)如果当前时刻没有故障发生,继续执行计算任务直到满足以下第二类条件组中的任一条件时,在当前时间设置一个新的校验点。随后,继续执行程序。
第二类条件组包括以下三个条件:
Figure BDA0003207294640000104
以及
Figure BDA0003207294640000105
(3)若以上三个指标中任意指标涨幅超过10%,就增加校验点直至满足以下第三类条件组中的任一条件。
第二类条件组包括以下三个条件:
Ereal=0.95Epeak;Ireal=0.95Iaverage;以及Treal=0.95Tmax
上述方式在上一校验点的前提下,只要任意指标涨幅超过10%,就设置校验点,到0.95时就不设置校验点了,就可以采用任务迁移了。此时,为避免设备产生瞬时故障,将暂停当前任务或进行任务迁移来减少当前设备的散热压力。
上述不同情况的阈值是根据经验得到,因为情况2受到多种因素的监测,情况2的校验点相对复杂,分为了几个案例。通过几个因素的结合,可调整校验点间隔,从而有效地减少校验点的数量。较少的校验点数量会降低其开销,而且实时控制的校验点可以更好地保证计算系统的可靠性。
本实施例提供的错误检查机制如下:
在确定校验点位置后,应设计适当的错误检测及故障恢复方法,以实现完全容错过程。在此,使用双模冗余(DMR,Double Modular Redundancy)的思想实现错误检测。在可靠性工程中,DMR可以通过复制数据来提供冗余,以防失败。其主要思想是执行两次核函数,然后比较两个执行版本的输出结果。如果发现了任何不一致的结果,这意味着在计算中有一个错误(或多个错误)。
因此,错误检测过程分为以下三部分:
1、冗余数据备份:在备份数据时,不需要复制所有数据,而只需要复制所选核函数的相应输出结果,复制数据后,此时有两个相同的数据版本。
2、冗余计算:在执行冗余计算时,不需要重复所有计算,而只需要执行上文中得到的冗余数据的第二次计算。然后将输出结果传输并保存到相应CPU的稳定存储介质中。
3、比较这两次结果:把原始输出结果与冗余计算结果进行比较,如果两个结果完全相同,这意味着没有发生错误。如果结果是不同的,这表明在需要纠正的核函数中发生了错误。上述比较在CPU中进行,可以充分利用CPU闲置计算资源并且隐藏在GPU并行计算中,节省容错计算开销。
本实施例提供的故障恢复过程如下:
本实施例采用的故障恢复方法是基于校验点的恢复机制。本实施例定期备份活跃的变量,然后将它们保存到稳定的存储介质中。当故障检测机制检测到错误时,程序会回滚到最近的检查点并重新执行该部分核函数,如图5所示,图5为本申请实施例所提供的一种故障恢复原理示意图。图5显示了一个完整的容错过程。当检测到错误时程序停止,它会回滚到最近的上一个检查点,从该状态重新执行应用程序,直到错误不再出现。与此同时,记录额外的时间消耗,包括校验点部分Ts、回滚部分Tb和恢复部分Tr,在计算系统中将开销隐藏在GPU计算中。结合检查点设置和故障恢复机制,本发明完整的容错过程如图6所示,图6为本申请实施例所提供的一种容错机制流程图,其过程如下:设置校验点,备份冗余变量;进行冗余计算,根据冗余计算结果进行错误检测;若无错误,则删除冗余变量,并删除校验点;若存在错误,则恢复备份数据,并进行恢复计算。
本实施例提供的容错机制,能够有效对多GPU计算过程中出现的故障进行分型和容错,以确保多GPU计算系统可靠的持续运行。
本申请实施例所提供的一种服务器故障处理系统,该系统可以包括:
状态获取模块,用于获取服务器的状态信息;其中,所述状态信息包括电流、温度、能耗值和GPU故障间隔时间;
冗余保存模块,用于根据所述状态信息确定所述服务器的校验点,并保存所述服务器在所述校验点的冗余数据;
故障处理模块,用于若检测到所述服务器出现故障,则利用所述冗余数据回滚至最新的校验点对应的状态。
本实施例根据服务器的状态信息设置校验点,并保存服务器在校验点的冗余数据。上述状态信息包括电流、温度、能耗值和GPU故障间隔时间,在服务器出现故障之前服务器的状态信息会发生变化,因此根据服务器的状态信息能够在发生故障之前合理设置校验点,及时对服务器的状态进行备份。当检测到服务器出现故障时,可以利用在校验点存储的冗余数据执行回滚操作,以使服务器恢复至最新的校验点对应的状态。上述方案能够恢复服务器的故障,提高服务器的可靠性。
进一步的,还包括:
状态参考值确定模块,用于在根据所述状态信息确定所述服务器的校验点之前,确定所述服务器在首次出现故障时的最大能耗和平均工作电流;还用于确定所述服务器的工作最大温度;还用于根据所述的最大能耗、所述平均工作电流和所述工作最大温度确定状态参考值;
相应的,冗余保存模块用于将所述状态信息与所述状态参考值进行比较,并根据比较结果确定所述服务器的校验点。
进一步的,冗余保存模块用于判断所述服务器在第一时刻是否符合第一预设条件;其中,所述第一时刻为所述服务器的设备连续执行时间为所述GPU故障间隔时间的二分之一对应的时刻;所述第一预设条件为所述能耗值小于所述最大能耗的二分之一、所述电流小于所述故障电流的二分之一且所述温度小于所述工作最大温度的二分之一;所述设备连续执行时间内不存在所述校验点;若是,则将所述第一时刻作为所述服务器当前的校验点。
进一步的,冗余保存模块用于判断所述状态信息是否符合第二预设条件;其中,所述第二预设条件包括所述能耗值在预设能耗区间、或所述电流在预设电流区间、或所述温度在预设温度区间;若是,则将当前时刻作为所述服务器当前的校验点。
进一步的,冗余保存模块用于若所述电流的涨幅达到第一预设值,则将当前时刻作为所述服务器当前的校验点;还用于若所述温度的涨幅达到第二预设值,则将当前时刻作为所述服务器当前的校验点;还用于若所述能耗的涨幅达到第三预设值,则将当前时刻作为所述服务器当前的校验点。
进一步的,冗余保存模块用于利用所述服务器中CPU的空闲线程保存所述服务器在所述校验点的冗余数据。
进一步的,还包括:
故障判断模块,用于在保存所述服务器在所述校验点的冗余数据之后,获取所述服务器的实际计算结果,并根据所述冗余数据确定冗余计算结果;若所述实际计算结果与所述冗余计算结果不同,则判定所述服务器出现故障。
由于系统部分的实施例与方法部分的实施例相互对应,因此系统部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本申请还提供了一种存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请还提供了一种电子设备,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述电子设备还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种服务器故障处理方法,其特征在于,包括:
获取服务器的状态信息;其中,所述状态信息包括电流、温度、能耗值和GPU故障间隔时间;
根据所述状态信息确定所述服务器的校验点,并保存所述服务器在所述校验点的冗余数据;
若检测到所述服务器出现故障,则利用所述冗余数据回滚至最新的校验点对应的状态。
2.根据权利要求1所述服务器故障处理方法,其特征在于,在根据所述状态信息确定所述服务器的校验点之前,还包括:
确定所述服务器在首次出现故障时的最大能耗和平均工作电流;
确定所述服务器的工作最大温度;
根据所述的最大能耗、所述平均工作电流和所述工作最大温度确定状态参考值;
相应的,根据所述状态信息确定所述服务器的校验点,包括:
将所述状态信息与所述状态参考值进行比较,并根据比较结果确定所述服务器的校验点。
3.根据权利要求2所述服务器故障处理方法,其特征在于,将所述状态信息与所述状态参考值进行比较,并根据比较结果确定所述服务器的校验点,包括:
判断所述服务器在第一时刻是否符合第一预设条件;其中,所述第一时刻为所述服务器的设备连续执行时间为所述GPU故障间隔时间的二分之一对应的时刻;所述第一预设条件为所述能耗值小于所述最大能耗的二分之一、所述电流小于所述故障电流的二分之一且所述温度小于所述工作最大温度的二分之一;所述设备连续执行时间内不存在所述校验点;
若是,则将所述第一时刻作为所述服务器当前的校验点。
4.根据权利要求1所述服务器故障处理方法,其特征在于,根据所述状态信息确定所述服务器的校验点,包括:
判断所述状态信息是否符合第二预设条件;其中,所述第二预设条件包括所述能耗值在预设能耗区间、或所述电流在预设电流区间、或所述温度在预设温度区间;
若是,则将当前时刻作为所述服务器当前的校验点。
5.根据权利要求1所述服务器故障处理方法,其特征在于,根据所述状态信息确定所述服务器的校验点,包括:
若所述电流的涨幅达到第一预设值,则将当前时刻作为所述服务器当前的校验点;
若所述温度的涨幅达到第二预设值,则将当前时刻作为所述服务器当前的校验点;
若所述能耗的涨幅达到第三预设值,则将当前时刻作为所述服务器当前的校验点。
6.根据权利要求1所述服务器故障处理方法,其特征在于,保存所述服务器在所述校验点的冗余数据,包括:
利用所述服务器中CPU的空闲线程保存所述服务器在所述校验点的冗余数据。
7.根据权利要求1至6任一项所述服务器故障处理方法,其特征在于,在保存所述服务器在所述校验点的冗余数据之后,还包括:
获取所述服务器的实际计算结果,并根据所述冗余数据确定冗余计算结果;
若所述实际计算结果与所述冗余计算结果不同,则判定所述服务器出现故障。
8.一种服务器故障处理系统,其特征在于,包括:
状态获取模块,用于获取服务器的状态信息;其中,所述状态信息包括电流、温度、能耗值和GPU故障间隔时间;
冗余保存模块,用于根据所述状态信息确定所述服务器的校验点,并保存所述服务器在所述校验点的冗余数据;
故障处理模块,用于若检测到所述服务器出现故障,则利用所述冗余数据回滚至最新的校验点对应的状态。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如权利要求1至7任一项所述服务器故障处理方法的步骤。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如权利要求1至7任一项所述服务器故障处理方法的步骤。
CN202110920685.1A 2021-08-11 2021-08-11 一种服务器故障处理方法、系统、电子设备及存储介质 Withdrawn CN113722136A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110920685.1A CN113722136A (zh) 2021-08-11 2021-08-11 一种服务器故障处理方法、系统、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110920685.1A CN113722136A (zh) 2021-08-11 2021-08-11 一种服务器故障处理方法、系统、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN113722136A true CN113722136A (zh) 2021-11-30

Family

ID=78675606

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110920685.1A Withdrawn CN113722136A (zh) 2021-08-11 2021-08-11 一种服务器故障处理方法、系统、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN113722136A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719084A (zh) * 2009-12-11 2010-06-02 中国人民解放军国防科学技术大学 一种通过调节gpu频率来降低gpu故障率的方法
CN107506261A (zh) * 2017-08-01 2017-12-22 北京丁牛科技有限公司 适应cpu、gpu异构集群的级联容错处理方法
CN109189640A (zh) * 2018-08-24 2019-01-11 平安科技(深圳)有限公司 服务器的监控方法、装置、计算机设备及存储介质
US20190042383A1 (en) * 2018-03-30 2019-02-07 Intel Corporation Processor having embedded non-volatile random access memory to support processor monitoring software
CN112433896A (zh) * 2020-11-05 2021-03-02 北京浪潮数据技术有限公司 一种服务器磁盘故障预测方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719084A (zh) * 2009-12-11 2010-06-02 中国人民解放军国防科学技术大学 一种通过调节gpu频率来降低gpu故障率的方法
CN107506261A (zh) * 2017-08-01 2017-12-22 北京丁牛科技有限公司 适应cpu、gpu异构集群的级联容错处理方法
US20190042383A1 (en) * 2018-03-30 2019-02-07 Intel Corporation Processor having embedded non-volatile random access memory to support processor monitoring software
CN109189640A (zh) * 2018-08-24 2019-01-11 平安科技(深圳)有限公司 服务器的监控方法、装置、计算机设备及存储介质
CN112433896A (zh) * 2020-11-05 2021-03-02 北京浪潮数据技术有限公司 一种服务器磁盘故障预测方法、装置、设备及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
方玉玲: "基于GPU能耗分析的集群可靠性方法", 中国博士学位论文全文数据库信息科技辑, no. 2021, pages 28 - 93 *
贾佳;杨学军;李志凌;: "一种基于冗余线程的GPU多副本容错技术", 计算机研究与发展, no. 07 *
贾佳;杨学军;马亚青;: "静态分析面向异构系统的应用级Checkpoint设置问题", 软件学报, no. 06 *

Similar Documents

Publication Publication Date Title
Di et al. Optimization of multi-level checkpoint model for large scale HPC applications
US10261853B1 (en) Dynamic replication error retry and recovery
Lu et al. When is multi-version checkpointing needed?
CN103516736A (zh) 分布式缓存系统的数据恢复方法及装置
CN109614276B (zh) 故障处理方法、装置、分布式存储系统和存储介质
CN109783277B (zh) 灾备端、生产端及两者之间的数据恢复方法
US10275312B1 (en) Systems and methods for selecting a set of storage nodes for use in reconstructing data on a faulted node in an erasure-coded system
US8639968B2 (en) Computing system reliability
US9367413B2 (en) Detecting data loss during site switchover
Montezanti et al. A methodology for soft errors detection and automatic recovery
CN109344009A (zh) 基于分级检查点的移动云系统容错方法
CN110750385B (zh) 一种基于受限恢复的图迭代器及方法
Kavitha et al. Task failure resilience technique for improving the performance of MapReduce in Hadoop
CN113722136A (zh) 一种服务器故障处理方法、系统、电子设备及存储介质
Amrizal et al. Optimizing energy consumption on HPC systems with a multi-level checkpointing mechanism
CN112286727B (zh) 一种基于增量快照的时空隔离域快速恢复方法和系统
Chen et al. Fault-Tolerance Implementation in Typical Distributed Stream Processing Systems.
CN111400098B (zh) 一种副本管理方法、装置、电子设备及存储介质
Bessho et al. Comparing checkpoint and rollback recovery schemes in a cluster system
Chen et al. Low overhead incremental checkpointing and rollback recovery scheme on Windows operating system
Prakash et al. Proactive Fault Tolerance using Heartbeat Strategy for Fault Detection
Khiat Cloud-RAIR: A Cloud Redundant Array of Independent Resources
Panda et al. Performance evaluation of a two level error recovery scheme for distributed systems
WO2021103304A1 (zh) 一种数据回传方法、装置、设备及计算机可读存储介质
CN117389692B (zh) 虚拟机容灾保护方法、装置、电子设备及存储介质

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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20211130