CN110737504A - 一种深度学习模型训练容错方法、***、终端及存储介质 - Google Patents
一种深度学习模型训练容错方法、***、终端及存储介质 Download PDFInfo
- Publication number
- CN110737504A CN110737504A CN201910820081.2A CN201910820081A CN110737504A CN 110737504 A CN110737504 A CN 110737504A CN 201910820081 A CN201910820081 A CN 201910820081A CN 110737504 A CN110737504 A CN 110737504A
- Authority
- CN
- China
- Prior art keywords
- container
- physical node
- configuration information
- deep learning
- state data
- 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
Images
Classifications
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
- G06F11/1484—Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1489—Generic software techniques for error detection or fault masking through recovery blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
- Retry When Errors Occur (AREA)
Abstract
本发明提供一种深度学习模型训练容错方法、***、终端及存储介质,包括:通过设置内部事件实时将模型状态数据保存至容器所在物理节点;获取异常容器的配置信息;获取所述模型状态数据存储路径,并根据所述存储路径和所述配置信息定义容器对象;利用kuberentes根据所述容器对象恢复容器,读取所述恢复容器的模型状态数据恢复容器训练状态。本发明可以最大限度的将训练过程恢复到发生异常的状态,将异常带来的损失降到最低,极大弥补了容器不稳定在深度学习领域带来的问题。同时该发明极大的提高了可以极大的提高aistation在同类产品中的竞争力。
Description
技术领域
本发明涉及服务器测试技术领域,具体涉及一种深度学习模型训练容错方法、***、终端及存储介质。
背景技术
深度学***台的出现,让这种技术方案被更多的企业和个人所接受,而且是产品化的一个主要技术。Kuberentes对于容器的调度,自动运维功能,让训练任务可以更容易的在容器运行,但是现在有一个比较严重的问题,就是容器相比较虚拟机,物理机,它的稳定性还是比较差的,如果训练任务在容器中运行,则必须要承担容器异常,训练被终止的风险。可是训练任务有时候周期会比较长,如果训练到末尾容器异常,那么之前的训练则可能前功尽弃,需要重新再来,这种成本付出是很多企业和个人无法忍受的。
因此,急需一种具有高容错性的深度学习训练模型。
发明内容
针对现有技术的上述不足,本发明提供一种深度学习模型训练容错方法、***、终端及存储介质,以解决上述技术问题。
第一方面,本发明提供一种深度学习模型训练容错方法,包括:
通过设置内部事件实时将模型状态数据保存至容器所在物理节点;
获取异常容器的配置信息;
获取所述模型状态数据存储路径,并根据所述存储路径和所述配置信息定义容器对象;
利用kuberentes根据所述容器对象恢复容器,读取所述恢复容器的模型状态数据恢复容器训练状态。
进一步的,所述获取异常容器的配置信息,包括:
读取etcd组件中容器资源的配置信息;
从所述配置信息中筛选异常容器的资源配置信息和所在物理节点IP信息。
进一步的,所述获取模型状态数据存储路径,并根据所述存储路径和所述配置信息定义容器对象,包括:
获取所述异常容器的模型状态数据的存储路径信息;
将所述存储路径信息写入容器对象的挂载路径信息。
进一步的,所述利用kuberentes根据所述容器对象恢复容器,包括:
将所述容器对象***kuberentes调度队列;
利用kubelet组件会从队列中获取所述容器对象的定义信息;
根据所述定义信息在相应物理节点上创建容器。
进一步的,在所述利用kuberentes根据所述容器对象恢复容器之前,所述方法还包括:
确认所述容器对象对应的物理节点资源不足;
选取所述对应物理节点中与所述容器对象资源匹配度最高的低级容器;
删除所述低级容器释放所述对应物理节点资源;
通过锁定所述对应物理节点,不再向所述对应物理节点调度新容器;
确认容器恢复完成,解除对所述对应物理节点的锁定。
第二方面,本发明提供一种深度学习模型训练容错***,包括:
数据保存单元,配置用于通过设置内部事件实时将模型状态数据保存至容器所在物理节点;
配置获取单元,配置用于获取异常容器的配置信息;
容器定义单元,配置用于获取所述模型状态数据存储路径,并根据所述存储路径和所述配置信息定义容器对象;
容器恢复单元,配置用于利用kuberentes根据所述容器对象恢复容器,读取所述恢复容器的模型状态数据恢复容器训练状态。
进一步的,所述容器恢复单元包括:
调度插队模块,配置用于将所述容器对象***kuberentes调度队列;
定义读取模块,配置用于利用kubelet组件会从队列中获取所述容器对象的定义信息;
容器创建模块,配置用于根据所述定义信息在相应物理节点上创建容器。
进一步的,所述***还包括:
资源确认模块,配置用于确认所述容器对象对应的物理节点资源不足;
匹配查找模块,配置用于选取所述对应物理节点中与所述容器对象资源匹配度最高的低级容器;
资源释放模块,配置用于删除所述低级容器释放所述对应物理节点资源;
节点锁定模块,配置用于通过锁定所述对应物理节点,不再向所述对应物理节点调度新容器;
锁定解除模块,配置用于确认容器恢复完成,解除对所述对应物理节点的锁定。
第三方面,提供一种终端,包括:
处理器、存储器,其中,
该存储器用于存储计算机程序,
该处理器用于从存储器中调用并运行该计算机程序,使得终端执行上述的终端的方法。
第四方面,提供了一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
本发明的有益效果在于,
本发明提供的深度学习模型训练容错方法、***、终端及存储介质,通过设置内部事件实时将模型状态数据保存至容器所在物理节点,相对于现有技术中将模型状态数据存储至共享存储,读取本地的数据要比读取共享存储的速率大大提高,让容器可以最低损失率下回复。然后重新编写scheduler调度逻辑,根据保存的模型状态数据恢复异常容器。本发明可以最大限度的将训练过程恢复到发生异常的状态,将异常带来的损失降到最低,极大弥补了容器不稳定在深度学习领域带来的问题。同时该发明极大的提高了可以极大的提高aistation在同类产品中的竞争力。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的方法的示意性流程图。
图2是本发明一个实施例的***的示意性框图。
图3为本发明实施例提供的一种终端的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
下面对本发明中出现的关键术语进行解释。
Kubernetes,简称K8s,是用8代替8个字符“ubernete”而成的缩写。是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。
Checkpoint是一个内部事件,这个事件激活以后会触发数据库写进程(DBWR)将数据缓冲(DATABUFFER CACHE)中的脏数据块写出到数据文件中。
图1是本发明一个实施例的方法的示意性流程图。其中,图1执行主体可以为一种深度学习模型训练容错***。
如图1所示,该方法100包括:
步骤110,通过设置内部事件实时将模型状态数据保存至容器所在物理节点;
步骤120获取异常容器的配置信息;
步骤130,获取所述模型状态数据存储路径,并根据所述存储路径和所述配置信息定义容器对象;
步骤140,利用kuberentes根据所述容器对象恢复容器,读取所述恢复容器的模型状态数据恢复容器训练状态。
可选地,作为本发明一个实施例,所述获取异常容器的配置信息,包括:
读取etcd组件中容器资源的配置信息;
从所述配置信息中筛选异常容器的资源配置信息和所在物理节点IP信息。
可选地,作为本发明一个实施例,所述获取模型状态数据存储路径,并根据所述存储路径和所述配置信息定义容器对象,包括:
获取所述异常容器的模型状态数据的存储路径信息;
将所述存储路径信息写入容器对象的挂载路径信息。
可选地,作为本发明一个实施例,所述利用kuberentes根据所述容器对象恢复容器,包括:
将所述容器对象***kuberentes调度队列;
利用kubelet组件会从队列中获取所述容器对象的定义信息;
根据所述定义信息在相应物理节点上创建容器。
可选地,作为本发明一个实施例,在所述利用kuberentes根据所述容器对象恢复容器之前,所述方法还包括:
确认所述容器对象对应的物理节点资源不足;
选取所述对应物理节点中与所述容器对象资源匹配度最高的低级容器;
删除所述低级容器释放所述对应物理节点资源;
通过锁定所述对应物理节点,不再向所述对应物理节点调度新容器;
确认容器恢复完成,解除对所述对应物理节点的锁定。
为了便于对本发明的理解,下面以本发明深度学习模型训练容错方法的原理,结合实施例中对异常容器进行恢复的过程,对本发明提供的深度学习模型训练容错方法做进一步的描述。
具体的,所述深度学习模型训练容错方法包括:
S1、通过设置内部事件实时将模型状态数据保存至容器所在物理节点。
容器是执行训练的虚拟节点,一个屋里节点上可以有多个容器。将每个容器的checkpoint数据(模型训练数据,即训练过程中生成的中间数据和模型网络结构数据。),保存在容器运行的物理节点上,通过重新编写调度逻辑,可以保证容器还是创建在原来的物理节点。读取本地的数据要比读取共享存储的速率大大提高,让容器可以最低损失率下回复。
现有kubernetes默认的调度策略是资源最大化调度方案,也就是说kuberentes在调度容器创建在哪个物理服务器是按照哪台服务器的计算资源(CPU、内存资源统称计算资源)空闲最多来实现的。这种实现方案在分布式训练过程中会造成训练效率降低的问题。在分布式训练中,是由多个ps容器和worker容器配合来完成的,每个worker运行在几台服务器上,可以让他们的数据交互损失最低,都是事先计算好的,并不是随机的。如果原本运行在一台物理服务器上的两个worker,其中一个发生异常,如果被调度到其他物理节点上,那么两个worker直接的数据交互就需要通过网络,这样必然会降低他们之间数据交互的速率,从而影响训练过程的时间长短。因此本发明实施例中需要重新编写调度策略。
S2、获取异常容器的配置信息。
获取异常容器的配置信息。容器的配置信息都保存在etcd组件中。在配置信息中会有容器资源的配置信息和运行物理节点的ip信息,提取这些关键信息。
S3、获取所述模型状态数据存储路径,并根据所述存储路径和所述配置信息定义容器对象。
获取异常容器对应的模型训练数据保存在物理服务器的路径信息,写入容器对象的挂载路径信息中,根据挂载路径信息和步骤S2获取的配置信息定义异常容器的容器对象。
S4、利用kuberentes根据所述容器对象恢复容器,读取所述恢复容器的模型状态数据恢复容器训练状态。
将容器对象***调度队列最前。Kuberentes的kubelet组件会从队列中获取容器对象定义信息,按照定义好的容器内容,在物理服务器上创建相应的容器。这样,就可以保证恢复的容器可以依旧运行在以前物理节点,且恢复的容器可以读取到相应的模型训练数据,以便恢复容器训练状态。
在极端情况下,有可能存在恢复容器所在物理节点资源不足的问题。此时,调度策略会自动选取与恢复容器资源配置匹配度最高的低级容器(按容器执行训练的重要性区分高级和低级),首先会kill该低级容器,并在其他物理节点创建该低级容器,使恢复容器所在物理节点释放出足够恢复容器的资源。同时锁定恢复容器所在物理节点,不让新的调度容器被调度到该物理节点。等恢复容器完成之后,解除该物理节点的锁定。
根据上述的调度策略,异常容器被恢复运行状态,但是还未将容器上运行的训练任务恢复。本发明的调度策略实现,除了会让容器自动绑定checkpoint路径信息,还会在容器的启动命令中增加读取checkpoint的逻辑,当容器恢复之后,首先执行模型训练数据读取逻辑,让容器中的深度学习训练过程,从模型训练数据继续往下训练。
如图2示,该***200包括:
数据保存单元210,配置用于通过设置内部事件实时将模型状态数据保存至容器所在物理节点;
配置获取单元220,配置用于获取异常容器的配置信息;
容器定义单元230,配置用于获取所述模型状态数据存储路径,并根据所述存储路径和所述配置信息定义容器对象;
容器恢复单元240,配置用于利用kuberentes根据所述容器对象恢复容器,读取所述恢复容器的模型状态数据恢复容器训练状态。
可选地,作为本发明一个实施例,所述容器恢复单元包括:
调度插队模块,配置用于将所述容器对象***kuberentes调度队列;
定义读取模块,配置用于利用kubelet组件会从队列中获取所述容器对象的定义信息;
容器创建模块,配置用于根据所述定义信息在相应物理节点上创建容器。
可选地,作为本发明一个实施例,所述***还包括:
资源确认模块,配置用于确认所述容器对象对应的物理节点资源不足;
匹配查找模块,配置用于选取所述对应物理节点中与所述容器对象资源匹配度最高的低级容器;
资源释放模块,配置用于删除所述低级容器释放所述对应物理节点资源;
节点锁定模块,配置用于通过锁定所述对应物理节点,不再向所述对应物理节点调度新容器;
锁定解除模块,配置用于确认容器恢复完成,解除对所述对应物理节点的锁定。
图3为本发明实施例提供的一种终端***300的结构示意图,该终端***300可以用于执行本发明实施例提供的深度学习模型训练容错方法。
其中,该终端***300可以包括:处理器310、存储器320及通信单元330。这些组件通过一条或多条总线进行通信,本领域技术人员可以理解,图中示出的服务器的结构并不构成对本发明的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
其中,该存储器320可以用于存储处理器310的执行指令,存储器320可以由任何类型的易失性或非易失性存储终端或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。当存储器320中的执行指令由处理器310执行时,使得终端300能够执行以下上述方法实施例中的部分或全部步骤。
处理器310为存储终端的控制中心,利用各种接口和线路连接整个电子终端的各个部分,通过运行或执行存储在存储器320内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行电子终端的各种功能和/或处理数据。所述处理器可以由集成电路(Integrated Circuit,简称IC)组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器310可以仅包括中央处理器(Central Processing Unit,简称CPU)。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
通信单元330,用于建立通信信道,从而使所述存储终端可以与其它终端进行通信。接收其他终端发送的用户数据或者向其他终端发送用户数据。
本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
因此,本发明通过设置内部事件实时将模型状态数据保存至容器所在物理节点,相对于现有技术中将模型状态数据存储至共享存储,读取本地的数据要比读取共享存储的速率大大提高,让容器可以最低损失率下回复。然后重新编写scheduler调度逻辑,根据保存的模型状态数据恢复异常容器。本发明可以最大限度的将训练过程恢复到发生异常的状态,将异常带来的损失降到最低,极大弥补了容器不稳定在深度学习领域带来的问题。同时该发明极大的提高了可以极大的提高aistation在同类产品中的竞争力,本实施例所能达到的技术效果可以参见上文中的描述,此处不再赘述。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中如U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,包括若干指令用以使得一台计算机终端(可以是个人计算机,服务器,或者第二终端、网络终端等)执行本发明各个实施例所述方法的全部或部分步骤。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
在本发明所提供的几个实施例中,应该理解到,所揭露的***、***和方法,可以通过其它的方式实现。例如,以上所描述的***实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,***或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种深度学习模型训练容错方法,其特征在于,包括:
通过设置内部事件实时将模型状态数据保存至容器所在物理节点;
获取异常容器的配置信息;
获取所述模型状态数据存储路径,并根据所述存储路径和所述配置信息定义容器对象;
利用kuberentes根据所述容器对象恢复容器,读取所述恢复容器的模型状态数据恢复容器训练状态。
2.根据权利要求1所述的深度学习模型训练容错方法,其特征在于,所述获取异常容器的配置信息,包括:
读取etcd组件中容器资源的配置信息;
从所述配置信息中筛选异常容器的资源配置信息和所在物理节点IP信息。
3.根据权利要求1所述的深度学习模型训练容错方法,其特征在于,所述获取模型状态数据存储路径,并根据所述存储路径和所述配置信息定义容器对象,包括:
获取所述异常容器的模型状态数据的存储路径信息;
将所述存储路径信息写入容器对象的挂载路径信息。
4.根据权利要求1所述的深度学习模型训练容错方法,其特征在于,所述利用kuberentes根据所述容器对象恢复容器,包括:
将所述容器对象***kuberentes调度队列;
利用kubelet组件会从队列中获取所述容器对象的定义信息;
根据所述定义信息在相应物理节点上创建容器。
5.根据权利要求1所述的深度学习模型训练容错方法,其特征在于,在所述利用kuberentes根据所述容器对象恢复容器之前,所述方法还包括:
确认所述容器对象对应的物理节点资源不足;
选取所述对应物理节点中与所述容器对象资源匹配度最高的低级容器;
删除所述低级容器释放所述对应物理节点资源;
通过锁定所述对应物理节点,不再向所述对应物理节点调度新容器;
确认容器恢复完成,解除对所述对应物理节点的锁定。
6.一种深度学习模型训练容错***,其特征在于,包括:
数据保存单元,配置用于通过设置内部事件实时将模型状态数据保存至容器所在物理节点;
配置获取单元,配置用于获取异常容器的配置信息;
容器定义单元,配置用于获取所述模型状态数据存储路径,并根据所述存储路径和所述配置信息定义容器对象;
容器恢复单元,配置用于利用kuberentes根据所述容器对象恢复容器,读取所述恢复容器的模型状态数据恢复容器训练状态。
7.根据权利要求6所述的深度学习模型训练容错***,其特征在于,所述容器恢复单元包括:
调度插队模块,配置用于将所述容器对象***kuberentes调度队列;
定义读取模块,配置用于利用kubelet组件会从队列中获取所述容器对象的定义信息;
容器创建模块,配置用于根据所述定义信息在相应物理节点上创建容器。
8.根据权利要求6所述的深度学习模型训练容错***,其特征在于,所述***还包括:
资源确认模块,配置用于确认所述容器对象对应的物理节点资源不足;
匹配查找模块,配置用于选取所述对应物理节点中与所述容器对象资源匹配度最高的低级容器;
资源释放模块,配置用于删除所述低级容器释放所述对应物理节点资源;
节点锁定模块,配置用于通过锁定所述对应物理节点,不再向所述对应物理节点调度新容器;
锁定解除模块,配置用于确认容器恢复完成,解除对所述对应物理节点的锁定。
9.一种终端,其特征在于,包括:
处理器;
用于存储处理器的执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-5任一项所述的方法。
10.一种存储有计算机程序的计算机可读存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910820081.2A CN110737504B (zh) | 2019-08-31 | 2019-08-31 | 一种深度学习模型训练容错方法、***、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910820081.2A CN110737504B (zh) | 2019-08-31 | 2019-08-31 | 一种深度学习模型训练容错方法、***、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110737504A true CN110737504A (zh) | 2020-01-31 |
CN110737504B CN110737504B (zh) | 2022-10-18 |
Family
ID=69267440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910820081.2A Active CN110737504B (zh) | 2019-08-31 | 2019-08-31 | 一种深度学习模型训练容错方法、***、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110737504B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625420A (zh) * | 2020-05-21 | 2020-09-04 | 浪潮电子信息产业股份有限公司 | 一种分布式训练任务处理方法、装置、设备及存储介质 |
CN112612641A (zh) * | 2020-12-16 | 2021-04-06 | 苏州浪潮智能科技有限公司 | 一种模型训练的保护方法、装置、电子设备及存储介质 |
CN114474150A (zh) * | 2021-12-31 | 2022-05-13 | 苏州通标检测科技有限公司 | 七轴机器人的稳定性测试方法及*** |
CN114936117A (zh) * | 2021-09-02 | 2022-08-23 | 华为技术有限公司 | 模型训练的方法、服务器、芯片以及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107480717A (zh) * | 2017-08-16 | 2017-12-15 | 北京奇虎科技有限公司 | 训练作业处理方法及***、计算设备、计算机存储介质 |
US10019323B1 (en) * | 2014-03-25 | 2018-07-10 | EMC IP Holding Company LLC | Method and system for container data recovery in a storage system |
CN109885389A (zh) * | 2019-02-19 | 2019-06-14 | 山东浪潮云信息技术有限公司 | 一种基于容器的并行深度学习调度训练方法及*** |
-
2019
- 2019-08-31 CN CN201910820081.2A patent/CN110737504B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10019323B1 (en) * | 2014-03-25 | 2018-07-10 | EMC IP Holding Company LLC | Method and system for container data recovery in a storage system |
CN107480717A (zh) * | 2017-08-16 | 2017-12-15 | 北京奇虎科技有限公司 | 训练作业处理方法及***、计算设备、计算机存储介质 |
CN109885389A (zh) * | 2019-02-19 | 2019-06-14 | 山东浪潮云信息技术有限公司 | 一种基于容器的并行深度学习调度训练方法及*** |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625420A (zh) * | 2020-05-21 | 2020-09-04 | 浪潮电子信息产业股份有限公司 | 一种分布式训练任务处理方法、装置、设备及存储介质 |
CN112612641A (zh) * | 2020-12-16 | 2021-04-06 | 苏州浪潮智能科技有限公司 | 一种模型训练的保护方法、装置、电子设备及存储介质 |
CN112612641B (zh) * | 2020-12-16 | 2022-12-02 | 苏州浪潮智能科技有限公司 | 一种模型训练的保护方法、装置、电子设备及存储介质 |
CN114936117A (zh) * | 2021-09-02 | 2022-08-23 | 华为技术有限公司 | 模型训练的方法、服务器、芯片以及*** |
CN114474150A (zh) * | 2021-12-31 | 2022-05-13 | 苏州通标检测科技有限公司 | 七轴机器人的稳定性测试方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN110737504B (zh) | 2022-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9467460B1 (en) | Modularized database architecture using vertical partitioning for a state machine | |
US7937618B2 (en) | Distributed, fault-tolerant and highly available computing system | |
CN111124277B (zh) | 一种深度学习数据集缓存方法、***、终端及存储介质 | |
CN110737504B (zh) | 一种深度学习模型训练容错方法、***、终端及存储介质 | |
US8364636B2 (en) | Real time data replication | |
CN105159818A (zh) | 内存数据管理中日志恢复方法及其仿真*** | |
CN110046029A (zh) | 应用于集群内多级缓存的数据处理方法和装置 | |
CN103034564B (zh) | 数据容灾演练方法、数据容灾演练装置及*** | |
US9753792B2 (en) | Method and system for byzantine fault tolerant data replication | |
CN103562904A (zh) | 在服务的次要位置重放作业 | |
CN109196466B (zh) | 用于评估升级活动的方法和*** | |
CN103152390A (zh) | 分布式存储***的节点配置方法、装置、节点及*** | |
CN110502523A (zh) | 业务数据存储方法、装置、服务器及计算机可读存储介质 | |
CN110162344A (zh) | 一种隔离限流的方法、装置、计算机设备及可读存储介质 | |
CN102024021A (zh) | 一种逻辑文件***元数据的日志方法 | |
CN107402843A (zh) | 数据库损坏的恢复方法、装置和设备 | |
CN107391539B (zh) | 事务处理方法、服务器和存储介质 | |
CN110286852A (zh) | 双控构架分布式存储***、数据读取方法、装置和存储介质 | |
CN112612775B (zh) | 一种数据存储方法、装置、计算机设备及存储介质 | |
CN110908644B (zh) | 状态节点的配置方法、装置、计算机设备和存储介质 | |
CN115878386A (zh) | 容灾方法、装置、电子设备及存储介质 | |
CN109241110A (zh) | 订单管理方法及***、电子设备、存储介质 | |
CN109766313A (zh) | 地质项目数据处理方法、装置及计算机设备 | |
CN114996955A (zh) | 一种云原生混沌工程实验的靶场环境构建方法及装置 | |
CN113687935A (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 |