CN109726080B - 监控异构计算系统的工作状态的方法及装置 - Google Patents

监控异构计算系统的工作状态的方法及装置 Download PDF

Info

Publication number
CN109726080B
CN109726080B CN201811638269.7A CN201811638269A CN109726080B CN 109726080 B CN109726080 B CN 109726080B CN 201811638269 A CN201811638269 A CN 201811638269A CN 109726080 B CN109726080 B CN 109726080B
Authority
CN
China
Prior art keywords
monitoring
computing system
heterogeneous computing
result
unit
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.)
Active
Application number
CN201811638269.7A
Other languages
English (en)
Other versions
CN109726080A (zh
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201811638269.7A priority Critical patent/CN109726080B/zh
Publication of CN109726080A publication Critical patent/CN109726080A/zh
Application granted granted Critical
Publication of CN109726080B publication Critical patent/CN109726080B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本公开提供了一种监控异构计算系统的工作状态的方法,包括:位于异构计算系统中的第一元件中的监控单元对所述异构计算系统的程序运行状态进行监控;所述监控单元根据监控结果判断所述异构计算系统是否发生异常。本公开还提供了监控异构计算系统的工作状态的装置、硬件设备和计算机可读介质。

Description

监控异构计算系统的工作状态的方法及装置
技术领域
本公开实施例涉及计算机技术技术领域,特别涉及监控异构计算系统的工作状态的方法及装置。
背景技术
现代社会信息量的暴增对计算机的计算性能提出了更高的要求,通过纵向提高CPU(Central Processing Unit,中央处理器)的处理性能已经遇到了制作工艺、功耗等技术瓶颈。异构计算技术由于具有能经济有效地获取高性能计算能力、可扩展性好、计算资源利用率高、发展潜力巨大等优点,目前已成为计算领域中的研究热点之一。
采用异构计算技术的异构计算系统的应用也越来越广泛,异构计算系统,是指将使用不同类型的指令集和体系架构的计算单元组成的计算系统。在对安全可靠性要求极高的场合,对异构计算系统中运行的程序的运行状态的监控至关重要,如自动驾驶领域。但是目前对异构计算系统的监控,仍然停留在监控异构计算系统的硬件的物理参数的层面,如对内存温度、风扇转速的监控等。
发明内容
本公开实施例提供一种监控异构计算系统的工作状态的方法及装置。
第一方面,本公开实施例提供了一种监控异构计算系统的工作状态的方法,包括:
位于异构计算系统中的第一元件中的监控单元对所述异构计算系统的程序运行状态进行监控;
所述监控单元根据监控结果判断所述异构计算系统是否发生异常。
在一些实施例中,所述第一元件为现场可编程门阵列FPGA、专用集成电路ASIC和图形处理器GPU中的至少一种。
在一些实施例中,所述异构计算系统中还包括第二元件;
位于异构计算系统中的第一元件中的监控单元对所述异构计算系统的程序运行状态进行监控,包括:
所述监控单元监控运行在所述第一元件上的程序的运行状态,得到第一监控结果;
所述监控单元监控运行在所述第二元件上的程序的运行状态,得到第二监控结果。
在一些实施例中,所述监控单元根据监控结果判断所述异构计算系统是否发生异常,包括:
所述监控单元判定所述第一监控结果符合第一预设条件,及所述第二监控结果符合第二预设条件时,确定所述异构计算系统正常运行;
所述监控单元判定所述第一监控结果不符合第一预设条件,和/或所述第二监控结果不符合第二预设条件时,确定所述异构计算系统发生异常。
在一些实施例中,所述方法还包括:
所述监控单元将判断结果存储至非易失性存储器。
第二方面,本公开实施例提供了一种监控异构计算系统的工作状态的装置,该装置包括监控单元,所述监控单元包括监控模块和判断模块,其中:
所述监控模块,用于对包括所述装置的异构计算系统的程序运行状态进行监控;
所述判断模块,用于根据监控结果判断所述异构计算系统是否发生异常。
在一些实施例中,所述装置还包括计算单元,用于对运行在所述装置上的程序执行计算操作;
所述监控模块具体用于,对所述计算单元在正常运行和/或异常运行的情况下均进行监控。
在一些实施例中,所述装置为现场可编程门阵列FPGA、专用集成电路ASIC和图形处理器GPU中的至少一种。
在一些实施例中,所述异构计算系统中还包括第二元件;
所述监控模块具体用于,监控运行在所述装置上的程序的运行状态,得到第一监控结果;监控运行在所述第二元件上的程序的运行状态,得到第二监控结果。
在一些实施例中,所述判断模块具体用于,判定所述第一监控结果符合第一预设条件,及所述第二监控结果符合第二预设条件时,确定所述异构计算系统正常运行;判定所述第一监控结果不符合第一预设条件,和/或所述第二监控结果不符合第二预设条件时,确定所述异构计算系统发生异常。
在一些实施例中,所述监控单元还包括发送模块,用于将判断结果发送至非易失性存储器进行存储。
第三方面,本公开实施例提供了一种硬件设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述的方法。
第四方面,本公开实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如上述的方法。
本公开实施例提供的监控异构计算系统的工作状态的方法及装置,由于能够实现对异构计算系统中的程序的运行状态进行监控,因此,当运行在异构计算系统上的程序发生异常时,根据监控记录能够及时且有针对性地对故障进行修复,提高了异构计算系统的工作效率及稳定性。
附图说明
附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开,并不构成对本公开的限制。通过参考附图对详细示例实施例进行描述,以上和其他特征和优点对本领域技术人员将变得更加显而易见,在附图中:
图1A为本公开实施例提供的一种监控异构计算系统的工作状态的方法的流程图;
图1B为本公开实施例中步骤100的一种具体实现方式的流程图;
图1C为本公开实施例中步骤110的一种具体实现方式的流程图;
图1D为本公开实施例提供的另一种监控异构计算系统的工作状态的方法的流程图;
图1E为本公开实施例提供的一种监控异构计算系统的工作状态的方法的具体示例的流程图;
图2A为本公开实施例提供的一种监控异构计算系统的工作状态的装置的示意图;
图2B为本公开实施例提供的另一种监控异构计算系统的工作状态的装置的示意图;
图2C为本公开实施例提供的监控单元的示意图。
具体实施方式
为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图对本发明提供的监控异构计算系统的工作状态的方法及装置进行详细描述。
在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。
如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。
本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其他特征、整体、步骤、操作、元件、组件和/或其群组。
本文所述实施例可借助本公开的理想示意图而参考平面图和/或截面图进行描述。因此,可根据制造技术和/或容限来修改示例图示。因此,实施例不限于附图中所示的实施例,而是包括基于制造工艺而形成的配置的修改。因此,附图中例示的区具有示意性属性,并且图中所示区的形状例示了元件的区的具体形状,但并不旨在是限制性的。
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。
参考图1A所示,本公开实施例中,提出一种监控异构计算系统的工作状态的方法10,包括:
步骤100:位于异构计算系统中的第一元件中的监控单元对所述异构计算系统的程序运行状态进行监控。
步骤110:所述监控单元根据监控结果判断所述异构计算系统是否发生异常。
本公开实施例中,较佳地,第一元件中的各个单元具有能够并行运行的特点,这样,当某个或者某几个单元发生异常时,不会对其他单元造成影响,其他单元还可以正常运行。如,第一元件中还包括计算单元,计算单元用于对运行在第一元件上的程序执行计算操作,由于监控单元和计算单元能够并行运行,因此,当计算单元发生异常时,监控单元仍然可以对计算单元进行监控,准确记录计算单元的异常状况,这样,维修人员可以及时发现异常,能够根据准确记录的监控结果有针对性地进行修复,进而提高异构计算系统的稳定性。
本公开实施例中的第一元件的形式有多种,如可以为FPGA(Field-ProgrammableGate Array,现场可编程门阵列),或者也可以为ASIC(Application Specific IntegratedCircuit,专用集成电路),或者还可以为GPU(Graphics Processing Unit,图形处理器),当然,上述只是几种具体示例,在此不做具体限定。
本公开实施例中,进一步的,所述异构计算系统中还包括第二元件;此时,步骤100具体可以包括步骤100A和步骤100B,参考图1B所示。
具体为,步骤100:位于异构计算系统中的第一元件中的监控单元对所述异构计算系统的程序运行状态进行监控,包括:
步骤100A:所述监控单元监控运行在所述第一元件上的程序的运行状态,得到第一监控结果。
步骤100B:所述监控单元监控运行在所述第二元件上的程序的运行状态,得到第二监控结果。
也就是说,所述异构计算系统中还包括第二元件时,监控单元在监控程序的运行状态时,不仅要监控运行在所述第一元件上的程序的运行状态,还要监控运行在所述第二元件上的程序的运行状态,这样,无论第一元件发生异常,还是第二元件发生异常,都可以根据监控记录,及时并准确地发现故障,进而修复故障,提高异构计算系统的稳定性。
当然,步骤100A和步骤100B只是一个示例,并不限定于此,如,监控单元可以仅仅监控运行在第一元件上的程序的运行状况,也可以仅仅监控运行在第二元件上的程序的运行状况,如果异构计算系统还包括其他元件,为了更进一步提高异构计算系统的稳定性,当然,也可以监控运行在其他元件上的程序的运行状况,在此不做具体限定。
其中,较佳地,第二元件可以为CPU(Central Processing Unit,中央处理器),第二元件可以用于对第一元件进行调度,如指示第一元件要执行哪些操作,执行操作时采用的参数有哪些。
本公开实施例中,第一元件和第二元件可以位于同一芯片内,也可以分别为独立的芯片,如第一元件为FPGA芯片,第二元件为ARM芯片,只要能够实现第二元件对第一元件的调度即可,二者之间的形式不做具体限定。
本公开实施例中,在监控过程中,监控的内容可以有多种,如不仅可以监控计算的顺序是否符合预设条件,还可以监控计算的结果是否符合预设条件,当然,还可以监控其他参数,在此不再进行详述,如第一元件是对神经网络进行计算,那么监控单元不仅可以监控计算过程是否符合预设条件,还可以监控预设结果。
当监控的内容不同时,判断异构计算系统是否发生异常的方式也不同,当步骤100包括步骤100A和步骤100B时,步骤110包括步骤110A和步骤110B,参考图1C所示。
具体为,步骤110:所述监控单元根据监控结果判断所述异构计算系统是否发生异常,包括:
步骤110A:所述监控单元判定所述第一监控结果符合第一预设条件,及所述第二监控结果符合第二预设条件时,确定所述异构计算系统正常运行。
步骤110B:所述监控单元判定所述第一监控结果不符合第一预设条件,和/或所述第二监控结果不符合第二预设条件时,确定所述异构计算系统发生异常。
本公开实施例中,由于运行在第一元件和第二元件的程序的作用可以是不同的,如运行在第一元件上的程序是用于计算,运行在第二元件上的程序是用于对第一元件进行调度,因此,针对两个元件所设置的预设条件也是不同的,如针对第一元件设置的是第一预设条件,针对第二元件设置的第二预设条件。
但是需要注意的是,即使针对同一元件,监控的内容不同的话,根据监控结果判断所述异构计算系统是否发生异常时所采用的参考基准也是不同的,如监控的是计算的顺序的话,比较的基准是正确的计算顺序,如监控的是计算的结果的话,比较的基准是正确的计算结果。
本公开实施例中,如果监控到的结果存储不当,造成丢失的话,那么就失去监控的意义,因为监控的目的就是根据监控的结果来修复故障,或者更进一步优化异构计算系统,但是如果监控的结果很容易丢失的话,监控的目的并没有达到。因此,本公开实施例中,为了避免监控结果丢失,参阅图1D所示,所述方法还包括:
步骤120:所述监控单元将判断结果存储至非易失性存储器。
这样,如果将判断结果存储至非易失性存储器,监控的结果就不容易丢失,后续可以根据监控的结果对故障进行修复,或者对异构计算系统进行优化。
需要说明的是,将判断结果存储至非易失性存储器时,可以是是实时存储,也可以是周期性存储,如以30秒为周期进行存储,当然,也可以是其他周期,在此不做具体限定。
其中,非易失性存储器可以是FLASH,也可以是EEPROM,当然也可以是其他存储介质,在此不做具体限定。
由于存储器的存储资源是有限的,为了提高存储器的存储资源的利用率,本公开实施例中,当监控单元判断出异构计算系统发生异常时,才将判断结果发送至非易失性存储器。
本公开实施例中,为了提高监控到的数据的安全性,非易失性存储器可以是独立于异构计算系统之外的设备。
下面以具体示例对方法10进行举例,参阅图1E所示。
该具体示例中,第一元件是FPGA、第二元件是CPU,FPGA对神经网络resnet50进行加速计算,CPU对FPGA进行调度,神经网络resnet50的作用是分类,该示例中提及的神经网络resnet50共有74层,主要包括4种不同功能的运算层:如convelution layer(卷积层)、pooling layer(汇集层)、element-wise layer(单元层)、full connection layer(全连接层),当然,前面说的4种不同功能的运算层是主要用到的运算层,该示例中提及的神经网络resnet50还包括其他运算层,在此不一一列举。
步骤S1:CPU向FPGA发送第一层调度命令,第一层调度命令用于指示FPGA对神经网络resnet50的第一层进行计算。
该第一层调度命令还具体用于通知FPGA对神经网络resnet50的第一层convelution layer的进行卷积操作。
第一层调度命令中还携带图像数据的存储位置的信息、输入图像尺寸、输出图像尺寸、卷积的kernel尺寸、卷积的步长等信息。
步骤S2:FPGA中的监控单元监控CPU对FPGA针对神经网络resnet50的第一层的调度过程,得到监控结果1,并将得到监控结果1与CPU对FPGA针对神经网络resnet50的第一层正确的调度过程相比较,判断CPU是否正常运行;
步骤S3:FPGA中接收到第一层调度命令后,根据第一层调度命令对神经网络resnet50的第一层进行卷积计算。
步骤S4:FPGA中的监控单元监控FPGA对神经网络resnet50的第一层进行的卷积计算,得到监控结果2,FPGA中的监控单元将得到监控结果2与FPGA对神经网络resnet50的第一层正确的计算过程相比较,判断FPGA是否正常运行。
步骤S5:FPGA对神经网络resnet50的第一层计算完成后,向CPU发送第一通知消息,通知CPU神经网络resnet50的第一层的运算已经完成。
步骤S6:CPU向FPGA发送第二层调度命令,第二层调度命令用于指示FPGA对神经网络resnet50的第二层进行计算。
第二层调度命令还用于通知FPGA神经网络resnet50的第二层为pooling层;通知FPGA具体要执行哪一种pooling操作,及pooling的窗口大小和步长等参数信息。
步骤S7:FPGA中的监控单元监控CPU对FPGA针对神经网络resnet50的第二层的调度过程,得到监控结果3,并将得到监控结果3与CPU对FPGA针对神经网络resnet50的第二层正确的调度过程相比较,判断CPU是否正常运行。
步骤S8:FPGA中接收到第二层调度命令后,根据第二层调度命令对神经网络resnet50的第二层进行计算。
步骤S9:FPGA中的监控单元监控FPGA对神经网络resnet50的第二层进行的计算,得到监控结果4,FPGA中的监控单元将得到监控结果4与FPGA对神经网络resnet50的第二层正确的计算过程相比较,判断FPGA是否正常运行。
步骤S10:FPGA对神经网络resnet50的第二层计算完成后,向CPU发送第二通知消息,通知CPU神经网络resnet50的第二层的运算已经完成。
步骤S1-步骤S10描述的是FPGA对神经网络resnet50的第一层和第二层进行计算,CPU对FPGA针对FPGA对神经网络resnet50的第一层和第二层进行调度的过程,对神经网络resnet50剩余的72层中的每一层的调度过程和计算过程与对第一层和第二层的调度过程、计算过程类似,在此不再详述。
参阅图2A所示,本公开实施例中,还提出一种监控异构计算系统的工作状态的装置20,该装置包括监控单元200,所述监控单元200包括监控模块200A和判断模块200B,其中:
所述监控模块200A,用于对包括所述装置的异构计算系统的程序运行状态进行监控;
所述判断模块200B,用于根据监控结果判断所述异构计算系统是否发生异常。
参阅图2B所示,本公开实施例中,进一步的,所述装置20还包括计算单元210,用于对运行在所述装置上的程序执行计算操作;
所述监控模块200A具体用于,对所述计算单元210在正常运行和/或异常运行的情况下均进行监控。
由于监控单元200在计算单元210正常运行和异常运行的情况下都能够进行监控,即监控单元200和计算单元210能够并行运行,因此,即使计算单元210发生异常,监控单元200仍然可以对计算单元210进行监控,准确记录计算单元210的异常状况,这样,维修人员可以及时发现异常,还能够根据准确记录的监控结果有针对性地进行修复,进而提高异构计算系统的稳定性。
本公开实施例中的装置20的形式有多种,如可以为FPGA,或者也可以为ASIC,或者还可以为GPU,当然,上述只是几种具体示例,在此不做具体限定。
本公开实施例中,进一步的,所述异构计算系统中还包括第二元件;
所述监控模块200A具体用于,监控运行在所述装置20上的程序的运行状态,得到第一监控结果;监控运行在所述第二元件上的程序的运行状态,得到第二监控结果。
也就是说,所述异构计算系统中还包括第二元件时,监控模块200A在监控程序的运行状态时,不仅要监控运行在所述装置20上的程序的运行状态,还要监控运行在所述第二元件上的程序的运行状态,这样,无论装置20发生异常,还是第二元件发生异常,都可以根据监控记录,及时并准确地发现故障,进而修复故障,提高异构计算系统的稳定性。
当然,上述描述只是一个示例,并不限定于此,如,监控模块200A可以仅仅监控运行在装置20上的程序的运行状况,也可以仅仅监控运行在第二元件上的程序的运行状况,如果异构计算系统还包括其他元件,为了更进一步提高异构计算系统的稳定性,当然,也可以监控运行在其他元件上的程序的运行状况,在此不做具体限定。
其中,较佳地,第二元件可以为CPU,第二元件可以用于对装置20进行调度,如指示装置20要执行哪些操作,执行操作时采用的参数有哪些。
本公开实施例中,装置20和第二元件可以位于同一芯片内,也可以分别为独立的芯片,如装置20为FPGA芯片,第二元件为ARM芯片,只要能够实现第二元件对装置20的调度即可,二者之间的形式不做具体限定。
本公开实施例中,在监控过程中,监控的内容可以有多种,如不仅可以监控计算的顺序是否符合预设条件,还可以监控计算的结果是否符合预设条件,当然,还可以监控其他参数,在此不再进行详述,如装置20是对神经网络进行计算,那么监控单元不仅可以监控计算过程是否符合预设条件,还可以监控预设结果。
本公开实施例中,所述判断模块200B具体用于,判定所述第一监控结果符合第一预设条件,及所述第二监控结果符合第二预设条件时,确定所述异构计算系统正常运行;判定所述第一监控结果不符合第一预设条件,和/或所述第二监控结果不符合第二预设条件时,确定所述异构计算系统发生异常。
本公开实施例中,由于运行在装置20和第二元件的程序的作用可以是不同的,如运行在装置20上的程序是用于计算,运行在第二元件上的程序是用于对装置20进行调度,因此,针对二者所设置的预设条件也是不同的,如针对装置20设置的是第一预设条件,针对第二元件设置的第二预设条件。
但是需要注意的是,即使针对同一元件,监控的内容不同的话,根据监控结果判断所述异构计算系统是否发生异常时所采用的参考基准也是不同的,如监控的是计算的顺序的话,比较的基准是正确的计算顺序,如监控的是计算的结果的话,比较的基准是正确的计算结果。
本公开实施例中,如果监控到的结果存储不当,造成丢失的话,那么就失去监控的意义,因为监控的目的就是根据监控的结果来修复故障,或者更进一步优化异构计算系统,但是如果监控的结果很容易丢失的话,监控的目的并没有达到。因此,本公开实施例中,为了避免监控结果丢失,监控单元200还包括发送模块200C,用于将判断结果发送至非易失性存储器进行存储,如图2C所示。
这样,如果将判断结果存储至非易失性存储器,监控的结果就不容易丢失,后续可以根据监控的结果对故障进行修复,或者对异构计算系统进行优化。
需要说明的是,将判断结果存储至非易失性存储器时,可以是是实时存储,也可以是周期性存储,如以30秒为周期进行存储,当然,也可以是其他周期,在此不做具体限定。
其中,非易失性存储器可以是FLASH,也可以是EEPROM,当然也可以是其他存储介质,在此不做具体限定。
由于存储器的存储资源是有限的,为了提高存储器的存储资源的利用率,本公开实施例中,当监控单元判断出异构计算系统发生异常时,才将判断结果发送至非易失性存储器。
本公开实施例中,为了提高监控到的数据的安全性,非易失性存储器可以是独立于异构计算系统之外的设备。
本公开实施例中,还提出一种硬件设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如方法10所述的方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其他实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。

Claims (9)

1.一种监控异构计算系统的工作状态的方法,所述方法应用于卷积神经网络,包括:
位于异构计算系统中的第一元件中的监控单元对所述异构计算系统的程序运行状态进行监控;
所述监控单元根据监控结果判断所述异构计算系统是否发生异常;
所述第一元件为现场可编程门阵列FPGA,还包括计算单元,所述计算单元与所述监控单元并行运行,所述计算单元用于对运行在装置上的程序执行计算操作;
所述异构计算系统中还包括第二元件,所述第二元件用于根据所述卷积神经网络的各层对第一元件进行调度;
位于异构计算系统中的第一元件中的监控单元对所述异构计算系统的程序运行状态进行监控,包括:
所述监控单元监控运行在所述第一元件上的程序的运行状态,得到第一监控结果;
所述监控单元监控运行在所述第二元件上的程序的运行状态,得到第二监控结果。
2.根据权利要求1所述的方法,所述监控单元根据监控结果判断所述异构计算系统是否发生异常,包括:
所述监控单元判定所述第一监控结果符合第一预设条件,及所述第二监控结果符合第二预设条件时,确定所述异构计算系统正常运行;
所述监控单元判定所述第一监控结果不符合第一预设条件,和/或所述第二监控结果不符合第二预设条件时,确定所述异构计算系统发生异常。
3.根据权利要求1所述的方法,所述方法还包括:
所述监控单元将判断结果存储至非易失性存储器。
4.一种监控异构计算系统的工作状态的装置,该装置应用于卷积神经网络,包括第一元件和第二元件,所述第二元件用于根据所述卷积神经网络的各层对第一元件进行调度;
所述第一元件为现场可编程门阵列FPGA,包括监控单元和计算单元,所述计算单元与所述监控单元并行运行;所述计算单元用于对运行在所述装置上的程序执行计算操作;
所述监控单元包括监控模块和判断模块,其中:
所述监控模块,用于对包括所述装置的异构计算系统的程序运行状态进行监控;
所述判断模块,用于根据监控结果判断所述异构计算系统是否发生异常;
所述监控模块具体用于,监控运行在所述装置上的程序的运行状态,得到第一监控结果;监控运行在所述第二元件上的程序的运行状态,得到第二监控结果。
5.根据权利要求4所述的装置,所述监控模块具体用于,对所述计算单元在正常运行和/或异常运行的情况下均进行监控。
6.根据权利要求4或5所述的装置,所述判断模块具体用于,判定所述第一监控结果符合第一预设条件,及所述第二监控结果符合第二预设条件时,确定所述异构计算系统正常运行;判定所述第一监控结果不符合第一预设条件,和/或所述第二监控结果不符合第二预设条件时,确定所述异构计算系统发生异常。
7.根据权利要求4所述的装置,所述监控单元还包括发送模块,用于将判断结果发送至非易失性存储器进行存储。
8.一种硬件设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-3任一所述的方法。
9.一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-3任一所述的方法。
CN201811638269.7A 2018-12-29 2018-12-29 监控异构计算系统的工作状态的方法及装置 Active CN109726080B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811638269.7A CN109726080B (zh) 2018-12-29 2018-12-29 监控异构计算系统的工作状态的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811638269.7A CN109726080B (zh) 2018-12-29 2018-12-29 监控异构计算系统的工作状态的方法及装置

Publications (2)

Publication Number Publication Date
CN109726080A CN109726080A (zh) 2019-05-07
CN109726080B true CN109726080B (zh) 2023-07-14

Family

ID=66298590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811638269.7A Active CN109726080B (zh) 2018-12-29 2018-12-29 监控异构计算系统的工作状态的方法及装置

Country Status (1)

Country Link
CN (1) CN109726080B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113296988A (zh) * 2020-06-08 2021-08-24 阿里巴巴集团控股有限公司 基于多容器共享异构计算设备实现故障隔离的方法及装置
CN113821396A (zh) * 2020-06-18 2021-12-21 中车株洲电力机车研究所有限公司 处理器运行状态监视诊断方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105279037A (zh) * 2014-06-30 2016-01-27 惠州市伟乐科技股份有限公司 看门狗监控方法和系统
CN107273331A (zh) * 2017-06-30 2017-10-20 山东超越数控电子有限公司 一种基于cpu+gpu+fpga架构的异构计算系统和方法
CN108549591A (zh) * 2018-03-02 2018-09-18 烽火通信科技股份有限公司 一种嵌入式系统的黑匣子装置及其实现方法
CN108920334A (zh) * 2018-07-25 2018-11-30 郑州云海信息技术有限公司 一种fpga异构加速卡的监控装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9280395B2 (en) * 2012-05-30 2016-03-08 Intel Corporation Runtime dispatching among a heterogeneous group of processors

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105279037A (zh) * 2014-06-30 2016-01-27 惠州市伟乐科技股份有限公司 看门狗监控方法和系统
CN107273331A (zh) * 2017-06-30 2017-10-20 山东超越数控电子有限公司 一种基于cpu+gpu+fpga架构的异构计算系统和方法
CN108549591A (zh) * 2018-03-02 2018-09-18 烽火通信科技股份有限公司 一种嵌入式系统的黑匣子装置及其实现方法
CN108920334A (zh) * 2018-07-25 2018-11-30 郑州云海信息技术有限公司 一种fpga异构加速卡的监控装置

Also Published As

Publication number Publication date
CN109726080A (zh) 2019-05-07

Similar Documents

Publication Publication Date Title
US10558545B2 (en) Multiple modeling paradigm for predictive analytics
CN103092746B (zh) 线程异常的定位方法及系统
US9372717B2 (en) Interruption of chip component managing tasks
CN109726080B (zh) 监控异构计算系统的工作状态的方法及装置
CN111090502B (zh) 一种流数据任务调度方法和装置
EP3985512B1 (en) Robust hardware/software error recovery system
US10417062B2 (en) Method and apparatus of unloading out of memory processing flow to user space
US10684906B2 (en) Monitoring peripheral transactions
US20220138012A1 (en) Computing Resource Scheduling Method, Scheduler, Internet of Things System, and Computer Readable Medium
CN110806960B (zh) 信息处理方法、装置及终端设备
WO2005017736A1 (ja) ディスクアレイ装置におけるボトルネックを検出するシステムおよびプログラム
CN108845912A (zh) 服务接口调用故障的报警方法及计算设备
CN113194029B (zh) 自动识别和隔离服务网格边车故障的方法、系统、介质和设备
US20140289437A1 (en) Expander interrupt processing
CN114676019B (zh) 一种中央处理器状态监测方法、装置、设备、存储介质
CN110704228A (zh) 一种固态硬盘异常处理方法及系统
CN109992477B (zh) 用于电子设备的信息处理方法、系统以及电子设备
WO2017041671A1 (zh) 故障恢复的方法和装置
US8620621B2 (en) Maintenance of intelligent assets
CN117325881A (zh) 一种车辆告警预测方法、装置、电子设备及存储介质
CN113377573A (zh) 一种自动驾驶车辆的异常处理方法、装置、设备和存储介质
CN109933487B (zh) 智能机器人的监测方法和装置
CN111897701A (zh) 针对应用的告警处理方法、装置、计算机系统和介质
CN113886490A (zh) 分布式数据库中无状态计算实例高可用的实现方法及系统
CN108959028B (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
GR01 Patent grant
GR01 Patent grant