CN117076209A - 执行计算任务的方法、装置和存储介质 - Google Patents
执行计算任务的方法、装置和存储介质 Download PDFInfo
- Publication number
- CN117076209A CN117076209A CN202310403497.0A CN202310403497A CN117076209A CN 117076209 A CN117076209 A CN 117076209A CN 202310403497 A CN202310403497 A CN 202310403497A CN 117076209 A CN117076209 A CN 117076209A
- Authority
- CN
- China
- Prior art keywords
- computing
- hardware
- resources
- task
- resource
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000015654 memory Effects 0.000 claims description 47
- 238000004088 simulation Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 11
- 238000013461 design Methods 0.000 claims description 9
- 230000007613 environmental effect Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 11
- 238000012795 verification Methods 0.000 description 26
- 238000011084 recovery Methods 0.000 description 19
- 238000012544 monitoring process Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 230000002093 peripheral effect Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 description 4
- 239000002699 waste material Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007257 malfunction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000004321 preservation Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 208000020329 Zika virus infectious disease Diseases 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/02—CAD in a network environment, e.g. collaborative CAD or distributed simulation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Hardware Redundancy (AREA)
Abstract
本申请提供一种执行计算任务的方法、装置和存储介质,在计算任务的运行过程中,当接收到第一计算资源的故障导致计算任务下线的信息时,确定与该计算任务对应的第二计算资源,并在该第二计算资源上恢复该计算任务的运行。该方法解决了目前由于计算资源的故障导致计算任务下线无法恢复的问题。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种执行计算任务的方法、装置和存储介质。
背景技术
近年来,伴随着芯片设计规模的增大,在验证过程中本地算力在一些情况下会捉襟见肘。此外,验证过程通常涉及多种工具,例如,软件仿真器、形式化验证工具、硬件仿真器(包括原型验证装置)。完整的芯片设计会涉及更多的工具。
因此,在芯片设计行业,一方面存在着部分工具在特定时段的计算资源紧缺,另一方面又存在着由于工具链过于长而导致部分工具无法充分利用计算资源的情况。为此,将EDA(Electronic Design Automation,电子设计自动化)工具上云作为云计算资源提供成了一种解决上述问题的方案。
相比于传统的云计算仅提供相似的计算和存储能力,EDA工具上云提供的计算资源极为复杂。当EDA云计算资源出现故障时,传统的云计算故障恢复方法无法直接应用于EDA云计算的故障恢复。
发明内容
有鉴于此,本申请提出了一种执行计算任务的方法、装置和存储介质。
本申请第一方面,提供了一种执行计算任务的方法,所述方法包括:接收在计算系统上执行所述计算任务的指令,所述计算系统包括多个硬件资源,所述多个硬件资源包括至少3种硬件资源;响应于所述指令,根据所述计算任务配置所述多个硬件资源的一部分为第一计算资源;在所述第一计算资源上运行所述计算任务;响应于接收到所述第一计算资源的故障导致所述计算任务下线的信息,在所述多个硬件资源中确定与所述计算任务对应的第二计算资源;以及在所述第二计算资源上恢复所述计算任务的运行。
本申请第二方面,提供了一种执行计算任务的装置,包括:存储器,存储用于多个指令;以及至少一个处理器,用于执行所述多个指令以使得所述计算系统进行如第一方面所述的方法。
本申请的第三方面,提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算装置的一组指令,该组指令用于使所述计算装置执行如第一方面所述的方法。
本申请提供的一种执行计算任务的方法、装置和存储介质,在计算任务的运行过程中,当接收到第一计算资源的故障导致计算任务下线的信息时,确定与该计算任务对应的第二计算资源,并在该第二计算资源上恢复该计算任务的运行。该方法解决了目前由于计算资源的故障导致计算任务下线无法恢复的问题。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本申请实施例的一种计算装置的示意图。
图2示出了根据本申请实施例的一种云系统的示意图。
图3示出了根据本申请实施例的一种EDA计算系统的示意图。
图4示出了根据本申请实施例的示例性硬件资源的示意图。
图5A示出了根据本申请实施例的示例性计算系统的示意图。
图5B示出了根据本申请实施例的又一示例性计算系统的示意图。
图6示出了根据本申请实施例的示例性用于执行计算任务的方法的流程图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本申请进一步详细说明。
需要说明的是,除非另外定义,本申请使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
如上所述,在EDA工具上云作为云计算资源的背景下,硬件仿真资源作为构成EDA云计算资源的重要资源。针对EDA工具上云作为云计算资源的故障恢复问题,目前业内没有任何可行方案。
相比于传统的云计算仅提供相似的计算和存储能力,EDA工具上云提供的计算资源极为复杂。当EDA云计算资源出现故障时,传统的云计算故障恢复方法无法直接应用于EDA云计算的故障恢复。这是由以下几方面共同导致的。
一方面,对于传统的云计算而言,其计算资源仅限于处理器和存储器,而处理器和存储器都是同一性质的资源,不同的处理器和存储器具有高度兼容性,可以互相替代。例如,不同型号的X86处理器都可以用作处理器资源,并且可以互相兼容;不同厂家不同型号的内存也同样都可以用作存储器资源,并且可以互相兼容。当一处计算资源(处理器或存储器)出现故障时,可以直接寻找其它可用的计算资源来替换。而在EDA云上进行计算任务则无法这样操作。这是由于对于EDA工具而言,硬件的不同参数和不同配置都会产生不兼容的硬件资源。因此,出现故障的计算资源很可能没有足够的可以满足计算任务资源要求的替代资源。因此,EDA云计算存在明显的短缺资源的问题。
另一方面,传统的云计算出现故障通常原因限于几种,例如,内存不足、硬盘空间不足、设备下线、通信故障等。而EDA云计算除了这些共性问题,还可能出现由于硬件资源故障导致的计算任务下线。而由于EDA云计算资源中存在的硬件资源种类极为多样,这使得出现EDA云计算资源因故障而计算任务下线的概率也较高。
再一方面,对于传统的云计算而言,其故障恢复主要目的在于快速恢复业务。因此,传统的云计算通常采用各种数据备份的方式来确保业务产生的数据是安全,这样,即使由于计算资源因故障而出现下线,云系统可以快速调动新的处理器和内存根据备份的数据实现业务连续(即,在很短的时间内恢复业务)。EDA云计算的特点在于,EDA云计算是单纯的计算任务,无需与用户进行交互,主要目标是实现验证任务,并取得仿真数据。这使得EDA云计算的故障恢复对于恢复时间的要求并不高。因此,EDA云计算并不会为了更快的故障恢复时间而投入巨额的冗余资源。这使得EDA云计算更容易出现资源短缺的问题。
可以看到,当传统的云计算出现故障时,可以直接寻找其它可用的计算资源来替换,这意味着传统的云计算对于计算资源的性质(例如,计算资源提供的资源量)并没有要求。传统的云计算的故障恢复主要目的是确保数据的安全,这是由于传统的云计算上的任务的运行高度依赖于已存储的数据。而EDA验证任务对于已经产生的波形数据并没有依赖,EDA验证任务只需要几个关键信号就可以驱动验证任务的执行。与传统的云计算相反,EDA云计算对于计算资源性质的要求更高,对于资源的兼容性要求也更高。
由于EDA云计算刚刚起步,目前并没有成熟的面向EDA云计算的故障恢复方法。传统的线下EDA工具在遭遇故障时,通常的做法就是计算任务下线并且报错,完全由人工进行故障恢复。
因此,如何根据以上特点提供用于计算任务,特别是EDA云计算的故障恢复方法,是一个亟待解决的问题。有鉴于此,本申请提供了一种执行计算任务的方法、装置和存储介质,在计算任务的运行过程中,当接收到第一计算资源的故障导致计算任务下线的信息时,确定与该计算任务对应的第二计算资源,并在该第二计算资源上恢复该计算任务的运行。该方法解决了目前由于计算资源的故障导致计算任务下线无法恢复的问题。
图1示出了根据本申请实施例的一种计算装置100的示意图。如图1所示,计算装置100可以包括:处理器102、存储器104、网络接口106、外围接口108和总线110。其中,处理器102、存储器104、网络接口106和外围接口108通过总线110实现彼此之间在计算装置内部的通信连接。
处理器102可以是中央处理器(Central Processing Unit,CPU)、图像处理器、神经网络处理器(NPU)、微控制器(MCU)、可编程逻辑器件、数字信号处理器(DSP)、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路。处理器102可以用于执行与本申请描述的技术相关的功能。在一些实施例中,处理器102还可以包括集成为单一逻辑组件的多个处理器。如图1所示,处理器102可以包括多个处理器102a、102b和102c。
存储器104可以配置为存储数据(例如,指令、TCL对象的列表、计算机代码、对象的属性与属性的值等)。如图1所示,存储器存储的数据可以包括程序指令(例如,用于实现本申请的显示逻辑系统设计的目标模块的方法的程序指令)以及要处理的数据(例如,存储器可以存储在编译过程产生的临时代码、对象的属性与属性的值等)。处理器102也可以访问存储器存储的程序指令和数据,并且执行程序指令以对要处理的数据进行操作。存储器104可以包括易失性存储装置或非易失性存储装置。在一些实施例中,存储器104可以包括随机访问存储器(RAM)、只读存储器(ROM)、光盘、磁盘、硬盘、固态硬盘(SSD)、闪存、存储棒等。
网络接口106可以配置为经由网络向计算装置100提供与其他外部设备的通信。该网络可以是能够传输和接收数据的任何有线或无线的网络。例如,该网络可以是有线网络、本地无线网络(例如,蓝牙、WiFi、近场通信(NFC)等)、蜂窝网络、因特网、或上述的组合。可以理解的是,网络的类型不限于上述具体示例。在一些实施例中,网络接口106可以包括任意数量的网络接口控制器(NIC)、射频模块、接收发器、调制解调器、路由器、网关、适配器、蜂窝网络芯片等的任意组合。
外围接口108可以配置为将计算装置100与一个或多个外围装置连接,以实现信息输入及输出。例如,外围装置可以包括键盘、鼠标、触摸板、触摸屏、麦克风、各类传感器等输入设备以及显示器、扬声器、振动器、指示灯等输出设备。
总线110可以被配置为在计算装置100的各个组件(例如处理器102、存储器104、网络接口106和外围接口108)之间传输信息,诸如内部总线(例如,处理器-存储器总线)、外部总线(USB端口、PCI-E总线)等。
需要说明的是,尽管上述计算装置架构仅示出了处理器102、存储器104、网络接口106、外围接口108和总线110,但是在具体实施过程中,该计算装置架构还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述计算装置架构中也可以仅包含实现本申请实施例方案所必需的组件,而不必包含图中所示的全部组件。
图2示出了根据本申请实施例的一种云系统120的示意图。
如图2所示,云系统120可以包括多个云服务器(122、124)。这些云服务器例如可以是如图1所示的计算装置100或者由云计算服务器提供的计算机。云服务器(122、124)一方面可以向用户提供计算资源,另一方还可以作为硬件仿真资源的主机去调用云系统120中的多个硬件仿真工具。可以理解的是,多个硬件仿真工具可以连接到多个主机,图2仅为示例。
多个硬件仿真工具可以包括硬件仿真器(emulator)、原型验证工具、以及与硬件仿真器或原型验证工具连接的外围板块(例如,各种子卡等)。可以理解的是,多个硬件仿真工具可以包括更多硬件资源而不限于上述示例。
云系统120可以用于提供验证云计算资源。因此,云系统120在本申请中也被称为云计算资源120。
图3示出了根据本申请实施例的一种EDA计算系统130的示意图。
本申请的EDA计算系统130可以是一个本地的计算系统,并且可以包括计算装置132。在一些实施例中,计算系统130还可以包括本地计算资源134。
计算装置132可以是如图1所示的计算装置100。计算装置132可以向用户提供资源管理器,并提供连接到云系统120的接口和连接到计算资源134a和134b的接口。计算装置132还可以将不同的计算任务相应地分配到云端或本地。
在一些实施例中,本地计算资源134可以包括服务器134a或硬件验证工具134b的至少一种。多个EDA任务可以部分在云计算资源120上执行,可以部分在本地计算资源134上执行,以获得弹性的计算资源以及节约计算资源的费用。可以理解的是,多个EDA计算任务也可以仅在云计算资源120上执行或者仅在本地计算资源134上执行。
服务器134a可以是如图1所示的计算装置100。在一些实施例中,服务器134a可以运行至少一种EDA软件工具(例如,软件仿真器(simulator)、形式验证工具等)。服务器134a还可以作为硬件验证工具134b的主机,用于与硬件验证工具134b协同完成验证任务并读取验证结果。
硬件验证工具134b可以示例性地包括原型验证板、硬件仿真器(emulator)等硬件验证工具。
尽管图3中仅示出有限数量的本地计算资源134,但是本领域技术人员可以理解任意数量的本地计算资源134可以根据实际需要而提供。也就是说,可以存在多个服务器134a和多个硬件验证工具134b。服务器134a和硬件验证工具134b也不一定采用一一配对的形式来提供。例如,一台服务器134a可以与多台硬件验证工具对接。在本申请实施例中,计算系统可以包括如图2所示的云计算资源120和/或如图3所示的本地计算资源134。
图4示出了根据本申请实施例的示例性计算系统400的硬件资源410的示意图。
在一些实施例中,计算系统400的硬件资源410可以提供如图3所示的本地计算资源134,也可以提供如图2和图3所示的云计算资源120。如图4所示,硬件资源410可以包括硬件仿真器资源,例如,板卡4121和板卡4141。板卡4121和板卡4141可以是原型验证工具或者硬件仿真器(emulator)。板卡4121和板卡4141分别通过线缆4123和线缆4143连接到子卡资源,例如,子卡4122和子卡4142。子卡4122和子卡4142可以包括存储器子卡(例如,提供DDR内存接口)、通信子卡(例如,提供多种网络接口或无线网卡接口)等,用于向如图3所示的计算系统130或者云系统120中的云服务器提供多种接口以及对应的硬件能力。
硬件资源410还可以包括处理器资源(例如,处理器404)和存储器资源(例如,存储器406)。存储器406用于存储在执行计算任务的过程中产生的数据(例如,各种信号值)。在一些实施例中,执行计算任务的过程中产生的信号值可以直接被计算装置132或者云系统120中作为主机的云服务器读取。处理器404也可以读取存储器406存储的数据,并且对读取的数据执行计算任务。可以理解的是,硬件资源410可以包括更多硬件资源而不限于上述示例。
在硬件资源410中,相同的板卡或子卡在不同的情况下会构成不同的计算资源。例如,相同的子卡连接到不同的板卡可以构成不同的计算资源;不同的子卡连接到相同的板卡也可以构成不同的计算资源;甚至相同的子卡和相同的板卡由不同的线缆连接都会形成不同的计算资源。其中,计算资源是由子卡提供的资源和板卡提供的资源构成的,资源可以例如包括:可用时钟源、可用I/O接口的种类和数量、板卡和子卡的连接方式(例如,数据传输速率的配置)等。这样,当执行计算任务的计算资源出现故障需要寻找其它新的计算资源时,很可能会出现不存在能够满足该计算任务的资源要求的计算资源的问题,从而无法恢复计算任务。
例如,板卡4121、子卡4122和线缆4123可以形成计算资源412,板卡4141、子卡4142和线缆4143可以形成计算资源414。当板卡4121和板卡4141完全相同,子卡4122和子卡4142不同时,包括板卡4121、子卡4122和线缆4123的计算资源412的资源量与包括板卡4141、子卡4142和线缆4143的计算资源414的资源量不同。当板卡4121和板卡4141完全相同,并且子卡4122和子卡4142也完全相同,而线缆4123和线缆4143不同时,包括板卡4121、子卡4122和线缆4123的计算资源412的资源量与包括板卡4141、子卡4142和线缆4143的计算资源414的资源量不同。这样,当执行计算任务的计算资源412故障时,如果计算资源414所提供的资源量与计算资源412所提供的资源量不同,且不能满足该计算任务的资源要求,则该计算任务无法被继续执行。
如图4所示,在一些实施例中,计算系统400可以将计算任务402(例如,一个硬件仿真任务)分配在计算资源412上执行。其中,计算资源412的资源可以大于等于运行计算任务402所需要的最小资源。可以理解的是,由于资源量包括多种资源的数量,因此计算资源412的资源大于等于运行计算任务402所需要的最小资源是指,相比于运行计算任务402所需要的资源,计算资源412中的最小资源大于等于运行计算任务402所需要的资源。例如,运行计算任务402需要一个具有4个1000万门的FPGA的原型验证板、一个4GB的DDR4的内存子卡以及连接在原型验证板和内存子卡之间速率为100MB/S的线缆,那么当计算资源412包括了一个具有6个1000万门的FPGA的原型验证板、一个8GB的DDR4的内存子卡以及一个速率为100MB/S的线缆时,上述4个1000万门的FPGA、一个4GB的DDR4的内存子卡、6个1000万门的FPGA、一个8GB的DDR4的内存子卡、速率为100MB/S的线缆都是计算资源,并且该速率为100MB/S的线缆是计算资源412的最小资源。可以理解的是,计算资源可以包括其他用于执行计算任务所需的硬件资源或软件资源(例如,运行某个EDA软件所需的许可证)。
当计算资源412出现故障,导致计算任务402下线时,需要在硬件资源410中确定可提供计算任务402所需资源的其它计算资源(即,与计算任务402所需资源兼容的其他计算资源)。由于计算资源412可以是运行计算任务402所需要的最小资源,因此,该其它计算资源所提供的资源应大于或等于计算资源412的资源。例如,如图4所示,当计算资源412出现故障时,如果计算资源414的资源大于或等于计算资源412的资源,那么可以在计算资源414上运行计算任务402。即,板卡4141、子卡4142和线缆4143提供的资源量大于或等于板卡4121、子卡4122和线缆4123提供的资源量。当板卡4121上的资源量和板卡4141上的资源量完全相同,并且子卡4122上的资源量和子卡4142上的资源量也完全相同,而线缆4123上的资源量和线缆4143上的资源量不同时,如果线缆4143可以兼容线缆4123,例如,线缆4143的最高带宽高于或等于线缆4123的最高带宽,那么计算资源414可以提供计算任务402所需要的最小资源量,可以在计算资源414上运行计算任务402。反之,如果线缆4143不可以兼容线缆4123,例如,线缆4143的最高带宽低于线缆4123的最高带宽,则计算资源414无法提供计算任务402所需要的最小资源量,无法在计算资源414上运行计算任务402。
由此可见,当计算资源412出现故障导致计算任务402下线时,由于硬件资源410中的多个硬件资源的复杂性,无法直接分配给计算任务402任一硬件资源以恢复故障。针对上述问题,如何解决计算任务的运行过程中的故障恢复,保证计算任务的顺利执行,是一个亟待解决的问题。
图5A示出了根据本申请实施例的示例性计算系统500的示意图。
本申请的计算系统500可以是如图2和图3所示的云系统120,也可以是如图3所示的EDA计算系统130。如图5A所示,在一些实施例中,计算系统500可以包括硬件资源510和控制中心520。硬件资源510可以包括多个硬件资源,例如,处理器资源512(例如,可以是如图4所示的处理器404)、存储资源514(例如,可以是如图4所示的存储器406)、硬件仿真器资源516(例如,可以是如图4所示的板卡4121和板卡4141)和子卡资源518(例如,可以是如图4所示的子卡4122和子卡4142)。控制中心520可以包括监控单元522、调度单元524和保存单元526。监控单元522通过接口和调度单元524、保存单元526通信。在一些实施例中,保存单元526可以是用于保存会话(session)信息的保存单元。
监控单元522用于监控计算任务的运行,以及监控与计算任务对应的硬件资源的使用情况。如图5B所示,在一些实施例中,计算装置可以将计算任务402分配在计算系统500上执行。监控单元522可以在硬件资源510中确定与计算任务402对应的当前可用的硬件资源,以使得调度单元524可以根据计算任务402对当前可用的硬件资源进行合理配置。例如,调度单元524可以配置硬件资源510中的板卡4121、子卡4122和第一线缆4123为第一计算资源412,并在第一计算资源412上运行计算任务402。如上所述,由于EDA云计算资源中存在的硬件资源种类极为多样,这使得出现EDA云计算资源因故障而计算任务下线的概率也较高。这样,如果人工监控计算任务的执行,很可能出现由于计算资源出现故障的概率较高而无法及时发现故障并进行处理的问题。由此,通过监控单元522的设置,无需人工监控计算任务的运行,监控单元522可以及时发现运行过程中硬件资源出现故障的情况,并发送给调度单元524,进而实现故障的自动恢复,为计算系统500提供高可用能力。
监控单元522在监控到第一计算资源412出现故障(例如,第一计算资源412的板卡4121和第一线缆4123出现故障),导致计算任务402下线后,监控单元522发送计算任务402下线的信息至调度单元524,以使得调度单元524为计算任务402确定并调用其它的计算资源。如图5B所示,在一些实施例中,调度单元524接收监控单元522发送的第一计算资源412的板卡4121和第一线缆4123故障导致的计算任务402下线的信息,为了保证计算任务的顺利执行,调度单元524需要确定除板卡4121和第一线缆4123之外的其它计算资源来恢复下线的计算任务402的运行。然而,在硬件资源410中很可能出现不存在能够满足计算任务402资源要求的其它计算资源,或者能够满足计算任务402资源要求的其它计算资源正在被其它计算任务占用的情况,从而无法直接调用可替换的计算资源。鉴于此,为保证计算任务能够有序执行,调度单元524可以将计算任务402置于一个执行队列中顺序排列。
在调度单元524寻找除板卡4121和第一线缆4123之外的其它计算资源时,在一些实施例中,调度单元524可以将计算任务402置于以先进先出(First in First out,简称FIFO)原则执行的队列中。该队列与每一种当前可用硬件资源相关联,且根据硬件资源510中每一种当前可用硬件的数量和约束条件(例如,计算任务的完成时间、优先级、执行计算任务所需的最小资源量等),定义了当前可用的硬件资源执行计算任务的分配方式,以及计算任务的执行顺序。例如,一个与硬件资源板卡相关联的队列,该队列中的多个计算任务已根据执行计算任务所需的最小资源量进行顺序排列,计算任务402下线后,调度单元524将计算任务402置于该队列的队首。这样,刚被置于队列中的计算任务402相对于其它计算任务被优先分配可用的硬件资源,从而可以及时恢复故障的计算任务402。在一些实施例中,第一计算资源412可以包括第一硬件。当第一硬件的故障导致计算任务402下线时,调度单元524可以将下线的计算任务402置于与第一硬件关联的队列,并在硬件资源510中确定是否存在当前可用的第二硬件,第一硬件与第二硬件为同一种硬件资源。如上所述,在EDA云计算出现故障时,出现故障的计算资源很可能没有足够的可以满足计算任务资源要求的替代资源。同时,EDA云计算的故障恢复对于故障的恢复时间的要求不高。因此,如果在硬件资源510中不存在当前可用的第二硬件,计算任务402则在队列中等待。例如,如图5B所示,第一硬件可以包括板卡4121,当板卡4121的故障(故障的板卡4121以灰色背景展示)导致计算任务402下线(计算任务402下线以虚线箭头展示)时,调度单元524可以将下线的计算任务402置于与板卡4121关联的队列的队首,并在硬件资源510中确定当前可用的第二硬件。如果硬件资源510中不存在当前可用的第二硬件(例如,第二硬件正在被其它计算任务占用),计算任务402则在队列中等待,直至其它计算任务执行完毕,第二硬件被释放。这样,由于计算任务402被置于一个先进先出的队列,被释放的第二硬件也能首先被分配给计算任务402,使得计算任务402能够及时恢复执行。
用于确定当前可用的第二硬件的方式可以有多种。在一些实施例中,调度单元524可以首先确定出硬件资源510中的短缺硬件,该短缺硬件可以是执行计算任务402所必需的资源但是也是最为短缺的资源。短缺硬件可以根据硬件资源510中的一种硬件资源的当前可用硬件数量是否低于给定阈值来确定。当一种硬件资源的当前可用硬件数量低于给定阈值时,调度单元524将该种硬件资源确定为短缺硬件。由于短缺硬件可以是执行计算任务402所必需的资源,同时在形成的计算资源还需要满足计算任务402所需的资源量的约束下,根据该短缺硬件来确定执行计算任务402所对应的当前可用硬件资源可以加快查找速度。
例如,第一硬件还可以包括子卡4122。在硬件资源510中,子卡4122的数量低于给定阈值,调度单元524可以确定子卡4122是执行计算任务402的短缺硬件,并且在硬件资源510中找到可用的子卡4122。在找到子卡4122后,根据计算任务402所需的最小资源量,调度单元524可以进一步判断与该子卡4122连接的其它硬件资源(例如,硬件仿真器资源516和第二线缆513)是否可以构成第二硬件,即是否可以满足该最小资源量,进而可以确定该第二硬件与子卡4122是否可以形成与计算任务402对应的第二计算资源。
如图5B所示,在一些实施例中,第一硬件还可以包括第一线缆4123。在调度单元524确定硬件仿真器资源516和第二线缆513是否可以构成第二硬件时,需要确定硬件仿真器资源516和第二线缆513是否可以提供满足执行计算任务402的资源量。由于第一计算资源412可以是满足计算任务402的最小资源量,子卡4122的硬件资源类型不变,即子卡4122所提供的资源量不变,因此,调度单元524需要确定硬件仿真器资源516是否兼容板卡4121(即,硬件仿真器资源516上的资源量是否大于或等于板卡4121上的资源量),第二线缆513是否兼容第一线缆4123(例如,第二线缆513的最高带宽是否高于或等于第一线缆4123的最高带宽)。如果调度单元524确定硬件仿真器资源516和第二线缆513所提供的资源量满足计算任务402的要求,即,硬件仿真器资源516和第二线缆513可以作为第二硬件,并与子卡4122形成可以满足计算任务402的资源量的第二计算资源515。调度单元524在第二计算资源515上运行计算任务402(计算任务402的恢复以实线箭头展示)。
需要说明的是,针对不同的计算任务,在运行时所需的子卡可以是不同的,因此,前述实施例以子卡4122未被占用为例进行说明。可以理解,在一些实施例中,当子卡4122被占用时,还可以查找其他的可用子卡来作为当前可用资源。此外,前述实施例以子卡作为短缺硬件来进行说明,实际上,短缺硬件还可以包括很多其他硬件资源,例如,具有接口a的板卡等,因此不局限于子卡。
由于EDA云计算中的硬件资源有限,当计算资源故障导致计算任务下线时,可以首先通过重启计算资源来判断故障是否可以由于重启而被消除,而不是直接调用其它可用硬件资源。在又一些实施例中,调度单元524接收到监控单元522发送的第一计算资源412的故障的信息,调度单元524可以重启第一计算资源412,并检查重启后的第一计算资源412的故障是否消除。如果故障消除,则将计算任务402在重启后的第一计算资源412上运行,无需寻找其它可用计算资源。这样,就避免了在重启计算资源可以消除故障的情况下依然去调用其它可用计算资源带来的资源浪费的问题。如果故障无法消除,再去寻找其它可用计算资源形成第二计算资源515分配给计算任务402。
调度单元524在第二计算资源515上恢复计算任务402,并读取保存单元526中存储的用于恢复计算任务402的会话信息(例如,关键信号以及环境配置参数)。关键信号可以是用于芯片设计仿真的多个FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)的信号值,该信号值用于驱动芯片设计仿真。而FPGA中存在多个模块,多个模块会产生多个模块的信号值。如果将该多个模块的信号值也进行存储,则会降低计算任务的执行效率。鉴于此,设置保存单元526中的信息以会话(session)的机制进行存储。会话机制代表了用户与服务器的交互过程,而将关键信号与环境配置参数以会话机制进行存储,则保存了在某个FPGA上运行的计算任务的执行状态。这样,无需存储FPGA中多个模块的信号值,只需以会话机制存储该FPGA的关键信号值即可在读取了该关键信号后,恢复该FPGA上执行计算任务的执行状态。同时,由于关键信号的数量极为有限,以至于在计算任务402的运行中周期性的保存有限的关键信号值不会影响计算任务的实际执行的效率。环境配置参数可以在恢复计算任务402时在新的计算资源上完成环境配置。通过周期性地保存执行计算任务402过程中的关键信号和环境配置参数,可以及时保存计算任务402的运行进度。而传统的云计算通常不需要为了恢复故障的任务而专门保存计算任务运行的进度。
在一些实施例中,保存单元526可以周期性地保存会话信息。例如,可以设置100ns为一个保存周期,保存单元526在每100ns的时间点保存一次会话信息。在一些实施例中,保存单元526可以保存多个时间点的会话信息,也可以在保存当前时间点的会话信息时释放上一时间点的会话信息,以释放保存单元526中上一时间点的会话信息占用的内存,保证计算系统500的运行速度。
如上所述,EDA验证任务对于已经产生的波形数据并没有依赖。因此,周期性地保存会话信息后,调度单元524可以读取计算资源出现故障的时间点所保存的计算任务402的进度用于恢复计算任务,无需考虑在该时间点之前执行计算任务402所产生的波形数据的状态。在一些实施例中,调度单元524可以读取保存单元526在距离计算任务402发生故障时最近的时间点保存的会话信息,并根据该会话信息在第二计算资源515上恢复计算任务402。例如,保存单元526在第二个时间点保存了会话信息后,第一计算资源412发生了故障,那么调度单元524读取该第二个时间点保存的会话信息,并根据该会话信息在第二计算资源515上运行计算任务402。这样,在第二计算资源515上恢复计算任务402,可以在故障发生的时间点继续执行计算任务402,避免了从头开始重新执行计算任务402所带来的不必要的时间的浪费。在又一些实施例中,调度单元524重启第一计算资源412之后,使得第一计算资源412的故障因为重启而消除,调度单元524可以读取保存单元526在距离计算任务402发生故障时最近的时间点保存的会话信息,并将计算任务402在重启后的第一计算资源412上运行。
由此可见,本申请实施例所提供的执行计算任务的方法,在执行计算任务的过程中接收到监控单元发送的当前的计算资源出现故障导致计算任务下线的信息后,调度单元在硬件资源中寻找与计算任务对应的其它计算资源,进而调用新的计算资源,并读取保存单元中存储的计算任务发生故障时的执行状态,以在新的计算资源上继续计算任务的运行。这样,实现了EDA云计算故障的自动监控,以及故障的及时恢复。
图6示出了根据本申请实施例的示例性用于执行计算任务的方法600的流程图。方法600可以由如图5A所示的计算系统500执行。该计算任务可以由用户经由图3中的计算装置132发送至计算系统500。方法600可以包括如下步骤。
在步骤602,计算系统500接收在计算系统500上执行该计算任务(例如,图5B中的计算任务402)的指令。计算系统500包括多个硬件资源,该多个硬件资源包括至少3种硬件资源。可以理解的是,计算系统500还可以包括软件资源(例如,由许可证控制数量的EDA软件工具)。
在一些实施例中,该至少3种硬件资源包括处理器资源(例如,图4中的处理器404,图5A和图5B中的处理器资源512)、存储资源(例如,图4中的存储器406,图5A和图5B中的存储资源514)、硬件仿真器资源(例如,图4中的板卡4121、板卡4141,图5A和图5B中的硬件仿真器资源516)或子卡资源(例如,图4中的子卡4122、子卡4142,图5A和图5B中的子卡资源518)。
在步骤604,响应于该指令,计算系统500根据该计算任务配置该多个硬件资源的一部分(例如,图5B中的板卡4121、子卡4122和线缆4123)为第一计算资源(例如,图5B中的第一计算资源412)。
在步骤606,计算系统500在该第一计算资源上运行该计算任务。
在一些实施例中,该计算任务可以是与芯片设计的仿真有关的、由EDA工具执行的EDA任务。在执行该计算任务的过程中,计算系统500在至少一个时间点保存该计算任务的会话信息。该会话信息可以包括用于驱动该仿真的关键信号值(例如,一些输入寄存器的信号值)以及环境配置参数(例如,FPGA的运行频率、线缆的传输速率等)。通过周期性的保存执行计算任务402过程中的关键信号和环境配置参数,可以及时保存计算任务402的运行进度。这样,无需存储FPGA中多个模块的信号值,只需以会话机制存储该FPGA的关键信号值即可在读取了该关键信号后,恢复该FPGA上执行计算任务的执行状态。同时,由于关键信号的数量极为有限,以至于在计算任务402的运行中周期性的保存有限的关键信号值不会影响计算任务的实际执行的效率。
在步骤608,响应于接收到该第一计算资源的故障导致该计算任务下线的信息,计算系统500在该多个硬件资源中确定与该计算任务对应的第二计算资源(例如,图5B中的第二计算资源515)。
在一些实施例中,该第一计算资源包括第一硬件(例如,图5B中的板卡4121)。将该计算任务置于与第一硬件关联的队列,该队列是先进先出队列。在该多个硬件资源中确定是否存在当前可用的第二硬件(例如,图5B中的硬件仿真器资源516),该第二硬件兼容该第一硬件(例如,图5B中的硬件仿真器资源516上的资源量是否大于或等于板卡4121上的资源量)。响应于在该多个硬件资源中不存在当前可用的第二硬件,该计算任务在该队列中等待;或者响应于在该多个硬件资源中存在当前可用的第二硬件,将该当前可用的第二硬件分配给该计算任务作为该第二计算资源的至少一部分。这样,由于计算任务402被置于一个先进先出的队列,被释放的第二硬件也能首先被分配给计算任务402,使得计算任务402能够及时恢复执行。
在一些实施例中,确定所述至少3种硬件资源的每一种的当前可用硬件数量。响应于一种硬件资源的当前可用硬件数量低于给定阈值,确定所述硬件资源为短缺硬件,所述第一硬件是短缺硬件(例如,图5B中的子卡4122)。例如,第一硬件还可以包括子卡4122。在硬件资源510中,子卡4122的数量低于给定阈值,调度单元524可以确定子卡4122是执行计算任务402的短缺硬件,并且在硬件资源510中找到可用的子卡4122。在找到子卡4122后,调度单元524可以进一步判断与该子卡4122连接的其它硬件资源(例如,硬件仿真器资源516和第二线缆513)是否可以构成第二硬件,进而可以确定是否存在与计算任务402对应的第二计算资源。由于短缺硬件可以是执行计算任务402所必需的资源,同时在形成的计算资源还需要满足计算任务402所需的资源量的约束下,根据该短缺硬件来确定执行计算任务402所对应的当前可用硬件资源可以加快查找速度。
在一些实施例中,计算系统500可以重启所述第一计算资源。在重启所述第一计算资源之后,计算系统500可以确定重启后的所述第一计算资源是否消除所述故障;以及响应于重启后的所述第一计算资源消除所述故障,将重启后的所述第一计算资源作为所述第二计算资源。也就是说,将重启后并消除故障的计算资源纳入到可用计算资源中。例如,调度单元524可以重启第一计算资源412,并检查重启后的第一计算资源412的故障是否消除。如果故障消除,则将计算任务402在重启后的第一计算资源412上运行,也就是将第一计算资源412作为第二计算资源515。如果故障无法消除,则在硬件资源510中查找第二硬件,以形成第二计算资源515分配给计算任务402。这样,就避免了在重启计算资源可以消除故障的情况下依然去调用其它可用计算资源带来的资源浪费的问题。
在一些实施例中,第一硬件包括第一线缆(例如,图5B中的第一线缆4123),所述第二硬件包括第二线缆(例如,图5B中的第二线缆513),所述第二线缆的最高带宽高于等于所述第一线缆的最高带宽。即,第二线缆可以兼容第一线缆。
在步骤610,计算系统500在该第二计算资源上恢复该计算任务的运行。
在一些实施例中,计算系统500可以读取距离所述故障最近的所述会话信息。计算系统500可以根据所述会话信息在所述第二计算资源上恢复所述计算任务的运行。例如,保存单元526在第二个时间点保存了会话信息后,第一计算资源412发生了故障,那么调度单元524读取该第二个时间点保存的会话信息,并根据该会话信息在第二计算资源515上运行计算任务402。调度单元524可以读取计算资源出现故障的时间点所保存的计算任务402的进度,以及时恢复计算任务402的运行。这样,在第二计算资源515上恢复计算任务402,可以在故障发生的时间点继续执行计算任务402,避免了从头开始重新执行计算任务402所带来的不必要的时间的浪费。
本申请实施例还提供一种执行计算任务的装置(例如,图1的计算装置100),包括:存储器,存储用于多个指令;以及至少一个处理器,用于执行所述多个指令以使得所述计算系统进行如上所述方法600。
本申请实施例还提供一种执行计算任务的计算系统(例如,图5A的计算系统500),包括:如上所述计算装置;以及与所述计算装置通信地连接的本地计算资源,所述本地计算资源包括:服务器或硬件验证工具的至少一种。
本申请实施例还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算装置的一组指令,该组指令用于使所述计算装置执行如上所述的方法600。
如上所述,本申请提供的执行计算任务的方法、装置和存储介质,在计算任务的运行过程中,当接收到第一计算资源的故障导致计算任务下线的信息时,确定与该计算任务对应的第二计算资源,并在该第二计算资源上恢复该计算任务的运行,实现了可用硬件资源的合理配置,以及时恢复计算任务的运行,从而解决了现有技术中存在的多个问题。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述对本申请特定实施例进行了描述。其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请的不同方面的许多其它变化,为了简明它们没有在细节中提供。
尽管已经结合了本申请的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本申请旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种执行计算任务的方法,包括:
接收在计算系统上执行所述计算任务的指令,所述计算系统包括多个硬件资源,所述多个硬件资源包括至少3种硬件资源;
响应于所述指令,根据所述计算任务配置所述多个硬件资源的一部分为第一计算资源;
在所述第一计算资源上运行所述计算任务;
响应于接收到所述第一计算资源的故障导致所述计算任务下线的信息,在所述多个硬件资源中确定与所述计算任务对应的第二计算资源;以及
在所述第二计算资源上恢复所述计算任务的运行。
2.如权利要求1所述的方法,其中,所述计算任务是与芯片设计的仿真有关的EDA任务,在所述第一计算资源上运行所述计算任务进一步包括:
在至少一个时间点保存所述计算任务的会话信息,所述会话信息包括用于驱动所述仿真的关键信号值以及环境配置参数。
3.如权利要求1所述的方法,其中,所述第一计算资源包括第一硬件,在所述多个硬件资源中确定与所述计算任务对应的第二计算资源进一步包括:
将所述计算任务置于与第一硬件关联的队列,所述队列是先进先出队列;
在所述多个硬件资源中确定是否存在当前可用的第二硬件,所述第二硬件兼容所述第一硬件;
响应于在所述多个硬件资源中不存在当前可用的第二硬件,所述计算任务在所述队列中等待;或者
响应于在所述多个硬件资源中存在当前可用的第二硬件,将所述当前可用的第二硬件分配给所述计算任务作为所述第二计算资源的至少一部分。
4.如权利要求3所述的方法,进一步包括:
确定所述至少3种硬件资源的每一种的当前可用硬件数量;
响应于一种硬件资源的当前可用硬件数量低于给定阈值,确定所述硬件资源为短缺硬件,所述第一硬件是短缺硬件。
5.如权利要求2所述的方法,其中,在所述第二计算资源上恢复所述计算任务的运行进一步包括:
读取距离所述故障最近的所述会话信息;
根据所述会话信息在所述第二计算资源上恢复所述计算任务的运行。
6.如权利要求3所述的方法,进一步包括:
重启所述第一计算资源;
确定重启后的所述第一计算资源是否消除所述故障;以及
响应于重启后的所述第一计算资源消除所述故障,将重启后的所述第一计算资源作为所述第二计算资源。
7.如权利要求1所述的方法,其中,所述至少3种硬件资源包括处理器资源、存储资源、硬件仿真器资源或子卡资源。
8.如权利要求3所述的方法,其中,所述第一硬件包括第一线缆,所述第二硬件包括第二线缆,所述第二线缆的最高带宽高于所述第一线缆的最高带宽。
9.一种执行计算任务的装置,包括:
存储器,存储用于多个指令;以及
至少一个处理器,用于执行所述多个指令以使得所述装置进行如权利要求1-8的任一项所述的方法。
10.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算装置的一组指令,该组指令用于使所述计算装置执行如权利要求1至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310403497.0A CN117076209A (zh) | 2023-04-14 | 2023-04-14 | 执行计算任务的方法、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310403497.0A CN117076209A (zh) | 2023-04-14 | 2023-04-14 | 执行计算任务的方法、装置和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117076209A true CN117076209A (zh) | 2023-11-17 |
Family
ID=88712190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310403497.0A Pending CN117076209A (zh) | 2023-04-14 | 2023-04-14 | 执行计算任务的方法、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117076209A (zh) |
-
2023
- 2023-04-14 CN CN202310403497.0A patent/CN117076209A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102493449B1 (ko) | 엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체 | |
US9665521B2 (en) | System and method for providing a processing node with input/output functionality by an I/O complex switch | |
US8910172B2 (en) | Application resource switchover systems and methods | |
US8862927B2 (en) | Systems and methods for fault recovery in multi-tier applications | |
US9535754B1 (en) | Dynamic provisioning of computing resources | |
CN113032085A (zh) | 云操作系统的管理方法、装置、服务器、管理系统及介质 | |
CN103415840A (zh) | 跨硬件层和软件层的错误管理 | |
RU2653254C1 (ru) | Способ, узел и система управления данными для кластера базы данных | |
WO2014200551A1 (en) | Identifying the introduction of a software failure | |
US10042688B2 (en) | Self-diagnosis of device drive-detected errors and automatic diagnostic data collection | |
US20170149864A1 (en) | Distributed applications management with dependent resilient distributed services | |
US9195528B1 (en) | Systems and methods for managing failover clusters | |
CN116266150A (zh) | 一种业务恢复方法、数据处理单元及相关设备 | |
US11544091B2 (en) | Determining and implementing recovery actions for containers to recover the containers from failures | |
CN116627702A (zh) | 虚拟机的宕机重启方法及装置 | |
JP6219514B2 (ja) | 仮想マルチパス状態アクセスを提供するコンピューティングデバイス、仮想マルチパス用のリモートコンピューティングデバイス、仮想マルチパス状態アクセスを提供する方法、仮想マルチパス用の方法、コンピューティングデバイス、コンピューティングデバイスに複数の方法を実行させるプログラム、及び、機械可読記録媒体 | |
JP2023129318A (ja) | アクセラレータについてオンデマンドチェックポイントを実行する電子装置及びその動作方法 | |
CN117076209A (zh) | 执行计算任务的方法、装置和存储介质 | |
US20240012651A1 (en) | Enhanced service operating system capabilities through embedded controller system health state tracking | |
US8938639B1 (en) | Systems and methods for performing fast failovers | |
CN116578446B (zh) | 虚拟机备份方法、装置、系统、电子设备及存储介质 | |
US20240345915A1 (en) | Pcie device error handling system | |
CN107851033B (zh) | 减轻远程存储装置的间歇不可用性对虚拟机的影响 | |
CN118535316A (zh) | 在云系统上进行云计算的方法、装置及存储介质 | |
CN115955503A (zh) | 一种基于arm阵列安卓云服务器的usb链路保活方法、设备和存储介质 |
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 |