CN113127163A - 模型验证方法、装置及电子设备 - Google Patents

模型验证方法、装置及电子设备 Download PDF

Info

Publication number
CN113127163A
CN113127163A CN201911417164.3A CN201911417164A CN113127163A CN 113127163 A CN113127163 A CN 113127163A CN 201911417164 A CN201911417164 A CN 201911417164A CN 113127163 A CN113127163 A CN 113127163A
Authority
CN
China
Prior art keywords
model
processing unit
verification
card
found
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
Application number
CN201911417164.3A
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.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital 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 Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN201911417164.3A priority Critical patent/CN113127163A/zh
Publication of CN113127163A publication Critical patent/CN113127163A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例提出模型验证方法、装置及电子设备。方法包括:接收针对第一模型的模型验证任务;在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务;判断是否查找到,若查找到,则将针对第一模型的模型验证任务调度到该进程上。本发明实施例提高了对图形处理单元资源的利用率。

Description

模型验证方法、装置及电子设备
技术领域
本发明涉及AI(Artificial Intelligence,人工智能)技术领域,尤其涉及模型验证方法、装置及电子设备。
背景技术
深度学习是ML(Machine Learning,机器学习)领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标—人工智能。
深度学习平台训练出来的模型经过一系列转化封装操作后形成最终的算法包,算法包便可落地到推理产品中进行应用,但是在真正的落地到产品中使用之前,一般会进行模型的效果验证。现有的验证方案主要有如下两种:
方案一,使用独立的推理平台进行模型验证,预先定义好一张用于模型验证的GPU(Graphics Processing Unit,图形处理单元)卡可以同时加载的算法的数量,具体的操作流程如下:
步骤01:在模型训练平台上训练出模型,导出模型到本地,进行转化、封装、组件和引擎的添加,最终打包成算法包;
步骤02:将算法包导入到独立的推理平台中,申请一张模型验证GPU卡,在申请到的GPU卡上启动该算法的推理应用进行模型验证;
步骤03:当需要同时验证多个算法时,根据预先定义的一张模型验证GPU卡上可以加载的算法的数量,优先占满一张GPU卡资源。
方案二,模型训练平台中集成推理应用,预先定义好一张训练GPU卡可以同时加载的算法数量,具体的操作流程如下:
步骤01:模型训练平台训练出模型,直接在平台上进行模型转化,转化为GPU应用类型的算法包;
步骤02:模型训练平台上操作进行算法包的验证,在没有该模型验证的GPU卡的情况下,平台会为模型验证任务申请一张训练GPU卡,并将需要验证的算法包加载到申请到的训练GPU卡上,启动推理应用进行模型验证;
步骤03:当需要同时验证多个算法时,根据预先定义的一张训练GPU卡上可以加载的算法的数量,优先占满一张GPU卡资源。
上述两个方案的缺陷如下:
一、预先定义好一张模型验证或者训练GPU卡可以同时加载的算法数量,无法自动满足全新类型GPU卡的情况,需要针对全新的GPU重新定义这个预设值;
二、预先定义好一张模型验证或者训练GPU卡可以同时加载的算法数量,达不到最大化的资源的使用率,当算法大小减小时,不能自动加载更多的算法进行模型验证,而当算法大小变大时,则预先定义的算法数量将无法满足;
三、采用独立的推理平台需要增加额外的服务器,增加成本。
发明内容
本发明实施例提出模型验证方法、装置及电子设备,以提高对GPU资源的利用率。
本发明实施例的技术方案是这样实现的:
一种模型验证方法,该方法包括:
接收针对第一模型的模型验证任务;
在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务;
判断是否查找到,若查找到,则将针对第一模型的模型验证任务调度到该进程上。
所述判断是否查找到之后进一步包括:
若未查找到,则计算加载第一模型所需的算力大小,并在已申请到的用于模型验证的图形处理单元卡中,查找满足如下第二条件的图形处理单元卡:图形处理单元卡的空闲算力的大小不小于所述加载第一模型所需的算力大小;
判断是否查找到满足第二条件的图形处理单元卡,若查找到,则将第一模型加载到查找到的图形处理单元卡上进行模型验证。
所述判断是否查找到满足第二条件的图形处理单元卡之后进一步包括:
若未查找到,则向图形处理单元资源池申请用于模型验证的图形处理单元卡;
判断是否申请到,若申请到,则创建进程,并将第一模型加载到申请到的图形处理单元卡上,采用该进程对第一模型进行模型验证。
所述判断是否申请到之后进一步包括:
若未申请到,则在已申请到的用于模型验证的各图形处理单元卡中,查找满足如下第三条件的图形处理单元卡:假设将该图形处理单元卡上的一个或多个进程关闭后,该图形处理单元卡的空闲算力的大小不小于加载第一模型所需的算力大小;
判断是否查找到满足第三条件的图形处理单元卡,若查找到,则关闭查找到的图形处理单元卡上所述一个或多个进程,并将第一模型加载到该图形处理单元卡上进行模型验证。
所述接收针对第一模型的模型验证任务之后、在当前所有进程中查找满足如下第一条件的进程之前进一步包括:
判断当前是否存在已申请到的用于模型验证的图形处理单元卡,若不存在,则向图形处理单元资源池申请用于模型验证的图形处理单元卡;若存在,执行所述在当前所有进程中查找满足如下第一条件的进程的动作。
所述接收针对第一模型的模型验证任务之前进一步包括:
接收针对第一模型的模型训练请求,向图形处理单元资源池申请训练图形处理单元卡,申请到后,创建模型训练进程。
一种模型验证装置,该装置包括:
模型验证任务接收模块,用于接收针对第一模型的模型验证任务;
模型验证任务处理模块,用于在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务;判断是否查找到,若查找到,则将针对第一模型的模型验证任务调度到该进程上。
所述模型验证任务处理模块判断是否查找到之后进一步用于:
若未查找到,则计算加载第一模型所需的算力大小,并在已申请到的用于模型验证的图形处理单元卡中,查找满足如下第二条件的图形处理单元卡:图形处理单元卡的空闲算力的大小不小于所述加载第一模型所需的算力大小;判断是否查找到满足第二条件的图形处理单元卡,若查找到,则将第一模型加载到查找到的图形处理单元卡上进行模型验证。
所述模型验证任务处理模块判断是否查找到满足第二条件的图形处理单元卡之后进一步用于:
若未查找到,则向图形处理单元资源池申请用于模型验证的图形处理单元卡;判断是否申请到,若申请到,则创建进程,并将第一模型加载到申请到的图形处理单元卡上,采用该进程对第一模型进行模型验证。
所述模型验证任务处理模块判断是否申请到之后进一步用于:
若未申请到,则在已申请到的用于模型验证的各图形处理单元卡中,查找满足如下第三条件的图形处理单元卡:假设将该图形处理单元卡上的一个或多个进程关闭后,该图形处理单元卡的空闲算力的大小不小于加载第一模型所需的算力大小;判断是否查找到满足第三条件的图形处理单元卡,若查找到,则关闭查找到的图形处理单元卡上所述一个或多个进程,并将第一模型加载到该图形处理单元卡上进行模型验证。
所述模型验证任务处理模块在当前所有进程中查找满足如下第一条件的进程之前进一步用于:
判断当前是否存在已申请到的用于模型验证的图形处理单元卡,若不存在,则向图形处理单元资源池申请用于模型验证的图形处理单元卡;若存在,执行所述在当前所有进程中查找满足如下第一条件的进程的动作。
一种电子设备,包括如上任一所述的模型验证装置。
本发明实施例中,当接收到针对第一模型的模型验证任务时,若当前存在针对第一模型的模型验证进程且该进程仍能被调度任务,则无需向GPU资源池申请GPU卡,直接将第一模型的验证任务调度到该进程上即可,从而最大化地利用了本地已申请到的GPU资源,提高了对GPU资源的利用率。
附图说明
图1为本发明一实施例提供的模型验证方法流程图;
图2为本发明另一实施例提供的模型验证方法流程图;
图3为本发明又一实施例提供的模型验证方法流程图;
图4为本发明又一实施例提供的模型验证方法流程图;
图5为本发明又一实施例提供的模型验证方法流程图;
图6为本发明又一实施例提供的模型验证方法流程图;
图7为本发明实施例提供的模型验证装置的结构示意图。
具体实施方式
下面结合附图及具体实施例对本发明再作进一步详细的说明。
图1为本发明一实施例提供的模型验证方法流程图,其具体步骤如下:
步骤101:接收针对第一模型的模型验证任务。
步骤102:在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务。
步骤103:判断是否查找到,若查找到,则将针对第一模型的模型验证任务调度到该进程上。
上述实施例中,当接收到针对第一模型的模型验证任务时,若当前存在针对第一模型的模型验证进程且该进程仍能被调度任务,则无需向GPU资源池申请GPU卡,直接将第一模型的验证任务调度到该进程上即可,从而最大化地利用了本地已申请到的GPU资源,提高了对GPU资源的利用率;
且,上述实施例自动支持不同新类型的GPU卡资源,如NVIDIA Tesla T4、P40、P100、V100等,无需人工干预调整预设值,节省人力,更加自动化;
且,上述实施例支持各种大小的模型的验证,不受模型大小的限制,更加人性化和自动化;
另外,推理后台模块可内嵌在模型训练后台模块中,节省了单独配置推理平台硬件资源的成本。
图2为本发明另一实施例提供的模型验证方法流程图,其具体步骤如下:
步骤201:接收针对第一模型的模型验证任务。
步骤202:在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务。
步骤203:判断是否查找到,若查找到,则将针对第一模型的模型验证任务调度到该进程上;若未查找到,则计算加载第一模型所需的算力大小,并在已申请到的用于模型验证的GPU卡中,查找满足如下第二条件的GPU卡:GPU卡的空闲算力的大小不小于加载第一模型所需的算力大小。
步骤204:判断是否查找到满足第二条件的GPU卡,若查找到,则将第一模型加载到查找到的GPU卡上进行模型验证。
上述实施例中,当接收到针对第一模型的模型验证任务时,若当前不存在针对第一模型的模型验证进程,或者虽存在但该进程已不能再被调度任务,则查找满足:空闲算力的大小不小于加载第一模型所需的算力大小的GPU卡,若查找到,则将第一模型加载到查找到的GPU卡上进行模型验证,此时也无需向GPU资源池申请GPU卡,从而最大化地利用了本地已申请到的GPU资源,提高了对GPU资源的利用率。
图3为本发明又一实施例提供的模型验证方法流程图,其具体步骤如下:
步骤301:接收针对第一模型的模型验证任务。
步骤302:在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务。
步骤303:判断是否查找到,若查找到,则将针对第一模型的模型验证任务调度到该进程上;若未查找到,则计算加载第一模型所需的算力大小,并在已申请到的用于模型验证的GPU卡中,查找满足如下第二条件的GPU卡:GPU卡的空闲算力的大小不小于加载第一模型所需的算力大小。
步骤304:判断是否查找到满足第二条件的GPU卡,若查找到,则将第一模型加载到查找到的GPU卡上进行模型验证;若未查找到,则向GPU资源池申请用于模型验证的GPU卡。
步骤305:判断是否申请到,若申请到,则创建进程,并将第一模型加载到申请到的GPU卡上,采用该进程对第一模型进行模型验证。
上述实施例中,当接收到针对第一模型的模型验证任务时,在确定:当前不存在针对第一模型的模型验证进程,或者虽存在但该进程已不能再被调度任务,且,已申请到的所有用于模型验证的GPU卡的空闲算力的大小都小于加载第一模型所需的算力大小时,再向GPU资源池申请GPU卡,从而保证了对本地已申请到的GPU资源的最大化的利用。
图4为本发明又一实施例提供的模型验证方法流程图,其具体步骤如下:
步骤401:接收针对第一模型的模型验证任务。
步骤402:在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务。
步骤403:判断是否查找到,若查找到,则将针对第一模型的模型验证任务调度到该进程上;若未查找到,则计算加载第一模型所需的算力大小,并在已申请到的用于模型验证的GPU卡中,查找满足如下第二条件的GPU卡:GPU卡的空闲算力的大小不小于加载第一模型所需的算力大小。
步骤404:判断是否查找到满足第二条件的GPU卡,若查找到,则将第一模型加载到查找到的GPU卡上进行模型验证;若未查找到,则向GPU资源池申请用于模型验证的GPU卡。
步骤405:判断是否申请到,若申请到,则创建进程,并将第一模型加载到申请到的GPU卡上,采用该进程对第一模型进行模型验证;若未申请到,则在已申请到的用于模型验证的各GPU卡中,查找满足如下第三条件的GPU卡:假设将该GPU卡上的一个或多个任务列表为空的进程关闭后,该GPU卡的空闲算力的大小不小于加载第一模型所需的算力大小。
步骤406:判断是否查找到满足第三条件的GPU卡,若查找到,则关闭查找到的GPU卡上所述一个或多个任务列表为空的进程,并将第一模型加载到该GPU卡上进行模型验证。
上述实施例中,当接收到针对第一模型的模型验证任务时,在确定:当前不存在针对第一模型的模型验证进程,或者虽存在但该进程已不能再被调度任务,且,已申请到的所有用于模型验证的GPU卡的空闲算力的大小都小于加载第一模型所需的算力大小,且向GPU资源池申请GPU卡失败时,则将已申请到的用于模型验证的GPU卡中任务列表为空的一个或多个进程关闭,以使得该GPU卡的空闲算力的大小不小于加载第一模型所需的算力大小,然后将第一模型加载到该GPU卡上进行模型验证,从而在不影响已有模型验证进程的正常执行的前提下,最大化地利用了GPU资源。
图5为本发明又一实施例提供的模型验证方法流程图,其具体步骤如下:
步骤501:接收针对第一模型的模型验证任务。
步骤502:判断当前是否存在已申请到的用于模型验证的GPU卡,若不存在,则向GPU资源池申请用于模型验证的GPU卡。
步骤503:若存在,在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务。
步骤504:判断是否查找到,若查找到,则将针对第一模型的模型验证任务调度到该进程上。
上述实施例中,当接收到针对第一模型的模型验证任务时,先判断当前是否存在已申请到的用于模型验证的GPU卡,若不存在,则向GPU资源池申请GPU卡,若存在且当前存在针对第一模型的模型验证进程且该进程仍能被调度任务,则无需向GPU资源池申请GPU卡,直接将第一模型的验证任务调度到该进程上即可,从而最大化地利用了本地已申请到的GPU资源,提高了对GPU资源的利用率。
图6为本发明又一实施例提供的模型验证方法流程图,其具体步骤如下:
步骤601:模型训练客户端作为操作入口,在做好前期准备工作(如:训练数据集准备)之后,启动模型训练,向模型训练后台模块发送针对第一模型的模型训练请求;模型训练后台模块接收该模型训练请求,调用GPU资源池接口向GPU资源池发送训练GPU卡申请。
步骤602:GPU资源池接收该训练GPU卡申请,分配训练GPU卡,并创建针对第一模型的模型训练进程;模型训练后台模块接收到该模型训练进程上报的第一模型训练完成消息,将第一模型放入推理后台模块的模型仓库。
GPU资源池接收训练GPU卡申请后,要先判断自身是否剩余训练GPU卡,若是,则创建针对第一模型的模型训练进程。
步骤603:模型训练客户端接收用户输入的针对第一模型的模型验证请求,将该请求转发给模型训练后台模块,模型训练后台模块调用推理后台模块接口向推理后台模块派发针对第一模型的模型验证任务。
用户可通过模型训练客户端访问模型仓库,查看模型仓库中的各个模型,若需要对某个模型进行验证,则在该客户端上输入针对该模型的模型验证请求。
步骤604:推理后台模块接收针对第一模型的模型验证任务,判断当前自身是否存在用于模型验证的GPU卡,若是,执行步骤606;否则,执行步骤605。
步骤605:推理后台模块向GPU资源池发送模型验证GPU卡申请,GPU资源池接收该申请,创建进程,并分配用于模型验证的GPU卡,该进程将第一模型加载到该GPU卡上,开始对第一模型进行验证,本流程结束。
GPU资源池会设置用于模型验证的GPU卡的分配上限,若已分配出的用于模型验证的GPU卡的数目超出该上限,则不再分配用于模型验证的GPU卡。本步骤中,若GPU资源池已分配出的用于模型验证的GPU卡的数目超出该上限,则会通知推理后台模块,推理后台模块再通知模型训练后台模块,模型训练后台模块再通过模型训练客户端通知用户模型验证失败,并告知原因。
进程创建后会注册到模型验证节点管理模块,此后,模型验证节点管理模块可实时从进程获取模型验证进展状态、GPU卡的使用状态等,推理后台模块再从模型验证节点管理模块实时获取模型验证进展状态、GPU卡的使用状态等。
步骤606:推理后台模块在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务。
进程仍能被调度任务指的是,还可将任务调度到该进程上,例如:该进程的任务队列还未满。
步骤607:推理后台模块判断是否查找到,若是,执行步骤608;否则,执行步骤609。
步骤608:推理后台模块将针对第一模型的模型验证任务调度到该进程上,本流程结束。
步骤609:推理后台模块计算加载第一模型所需的算力大小,并在已申请到的用于模型验证的GPU卡中,查找满足如下第二条件的GPU卡:GPU卡的空闲算力的大小不小于加载第一模型所需的算力大小。
步骤610:推理后台模块判断是否查找到,若是,执行步骤611;否则,执行步骤612。
步骤611:推理后台模块为针对第一模型的模型验证任务指定进程,该进程将第一模型加载到查找到的GPU卡上,开始对第一模型进行验证,本流程结束。
步骤612:推理后台模块向GPU资源池发送模型验证GPU卡申请,GPU资源池接收该申请,判断已分配出的用于模型验证的GPU卡的数目是否达到预设上限,若是,执行步骤614;否则,执行步骤613。
GPU资源池会设置用于模型验证的GPU卡的分配上限,若已分配出的用于模型验证的GPU卡的数目超出该上限,则不再分配用于模型验证的GPU卡。
步骤613:GPU资源池创建进程,并分配用于模型验证的GPU卡,该进程将第一模型加载到该GPU卡上,开始对第一模型进行验证,本流程结束。
步骤614:GPU资源池向推理后台模块发送分配失败通知,推理后台模块接收该通知在已申请到的用于模型验证的各GPU卡中,查找满足如下第三条件的GPU卡:假设将该GPU卡上的一个或多个任务列表为空的进程关闭后,该GPU卡的空闲算力的大小不小于加载第一模型所需的算力大小。
步骤615:推理后台模块判断是否查找到,若查找到,则关闭查找到的GPU卡的一个或多个任务列表为空的进程,以使得该GPU卡的空闲算力的大小不小于加载第一模型所需的算力大小,将第一模型加载到该GPU卡上进行模型验证。
本步骤中,若推理后台模块未查找到满足第三条件的GPU卡,则通知模型训练后台模块模型验证失败,并告知失败原因,模型训练后台模块再通过模型训练客户端通知用户。
图7为本发明实施例提供的模型验证装置的结构示意图,该装置主要包括:模型验证任务接收模块71和模型验证任务处理模块72,其中:
模型验证任务接收模块71,用于接收针对第一模型的模型验证任务。
模型验证任务处理模块72,用于在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务;判断是否查找到,若查找到,则将针对第一模型的模型验证任务调度到该进程上。
上述实施例中,当接收到针对第一模型的模型验证任务时,若当前存在针对第一模型的模型验证进程且该进程仍能被调度任务,则无需向GPU资源池申请GPU卡,直接将第一模型的验证任务调度到该进程上即可,从而最大化地利用了本地已申请到的GPU资源,提高了对GPU资源的利用率。
一可选实施例中,模型验证任务处理模块72判断是否查找到之后进一步用于:若未查找到,则计算加载第一模型所需的算力大小,并在已申请到的用于模型验证的GPU卡中,查找满足如下第二条件的GPU卡:GPU卡的空闲算力的大小不小于所述加载第一模型所需的算力大小;判断是否查找到满足第二条件的GPU卡,若查找到,则将第一模型加载到查找到的GPU卡上进行模型验证。
一可选实施例中,模型验证任务处理模块72判断是否查找到满足第二条件的GPU卡之后进一步用于:若未查找到,则向GPU资源池申请用于模型验证的GPU卡;判断是否申请到,若申请到,则创建进程,并将第一模型加载到申请到的GPU卡上,采用该进程对第一模型进行模型验证。
一可选实施例中,模型验证任务处理模块72判断是否申请到之后进一步用于:若未申请到,则在已申请到的用于模型验证的各GPU卡中,查找满足如下第三条件的GPU卡:假设将该GPU卡上的一个或多个任务列表为空的进程关闭后,该GPU卡的空闲算力的大小不小于加载第一模型所需的算力大小;判断是否查找到满足第三条件的GPU卡,若查找到,则关闭查找到的GPU卡上所述一个或多个任务列表为空的进程,并将第一模型加载到该GPU卡上进行模型验证。
一可选实施例中,模型验证任务处理模块72在当前所有进程中查找满足如下第一条件的进程之前进一步用于:判断当前是否存在已申请到的用于模型验证的GPU卡,若不存在,则向GPU资源池申请用于模型验证的GPU卡;若存在,执行所述在当前所有进程中查找满足如下第一条件的进程的动作。
本发明实施例还提供一种电子设备,包括如上所述的模型验证装置。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (12)

1.一种模型验证方法,其特征在于,该方法包括:
接收针对第一模型的模型验证任务;
在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务;
判断是否查找到,若查找到,则将针对第一模型的模型验证任务调度到该进程上。
2.根据权利要求1所述的方法,其特征在于,所述判断是否查找到之后进一步包括:
若未查找到,则计算加载第一模型所需的算力大小,并在已申请到的用于模型验证的图形处理单元卡中,查找满足如下第二条件的图形处理单元卡:图形处理单元卡的空闲算力的大小不小于所述加载第一模型所需的算力大小;
判断是否查找到满足第二条件的图形处理单元卡,若查找到,则将第一模型加载到查找到的图形处理单元卡上进行模型验证。
3.根据权利要求2所述的方法,其特征在于,所述判断是否查找到满足第二条件的图形处理单元卡之后进一步包括:
若未查找到,则向图形处理单元资源池申请用于模型验证的图形处理单元卡;
判断是否申请到,若申请到,则创建进程,并将第一模型加载到申请到的图形处理单元卡上,采用该进程对第一模型进行模型验证。
4.根据权利要求3所述的方法,其特征在于,所述判断是否申请到之后进一步包括:
若未申请到,则在已申请到的用于模型验证的各图形处理单元卡中,查找满足如下第三条件的图形处理单元卡:假设将该图形处理单元卡上的一个或多个进程关闭后,该图形处理单元卡的空闲算力的大小不小于加载第一模型所需的算力大小;
判断是否查找到满足第三条件的图形处理单元卡,若查找到,则关闭查找到的图形处理单元卡上所述一个或多个进程,并将第一模型加载到该图形处理单元卡上进行模型验证。
5.根据权利要求1所述的方法,其特征在于,所述接收针对第一模型的模型验证任务之后、在当前所有进程中查找满足如下第一条件的进程之前进一步包括:
判断当前是否存在已申请到的用于模型验证的图形处理单元卡,若不存在,则向图形处理单元资源池申请用于模型验证的图形处理单元卡;若存在,执行所述在当前所有进程中查找满足如下第一条件的进程的动作。
6.根据权利要求1所述的方法,其特征在于,所述接收针对第一模型的模型验证任务之前进一步包括:
接收针对第一模型的模型训练请求,向图形处理单元资源池申请训练图形处理单元卡,申请到后,创建模型训练进程。
7.一种模型验证装置,其特征在于,该装置包括:
模型验证任务接收模块,用于接收针对第一模型的模型验证任务;
模型验证任务处理模块,用于在当前所有进程中查找满足如下第一条件的进程:该进程为针对第一模型的模型验证进程、且该进程仍能被调度任务;判断是否查找到,若查找到,则将针对第一模型的模型验证任务调度到该进程上。
8.根据权利要求7所述的装置,其特征在于,所述模型验证任务处理模块判断是否查找到之后进一步用于:
若未查找到,则计算加载第一模型所需的算力大小,并在已申请到的用于模型验证的图形处理单元卡中,查找满足如下第二条件的图形处理单元卡:图形处理单元卡的空闲算力的大小不小于所述加载第一模型所需的算力大小;判断是否查找到满足第二条件的图形处理单元卡,若查找到,则将第一模型加载到查找到的图形处理单元卡上进行模型验证。
9.根据权利要求8所述的装置,其特征在于,所述模型验证任务处理模块判断是否查找到满足第二条件的图形处理单元卡之后进一步用于:
若未查找到,则向图形处理单元资源池申请用于模型验证的图形处理单元卡;判断是否申请到,若申请到,则创建进程,并将第一模型加载到申请到的图形处理单元卡上,采用该进程对第一模型进行模型验证。
10.根据权利要求9所述的装置,其特征在于,所述模型验证任务处理模块判断是否申请到之后进一步用于:
若未申请到,则在已申请到的用于模型验证的各图形处理单元卡中,查找满足如下第三条件的图形处理单元卡:假设将该图形处理单元卡上的一个或多个进程关闭后,该图形处理单元卡的空闲算力的大小不小于加载第一模型所需的算力大小;判断是否查找到满足第三条件的图形处理单元卡,若查找到,则关闭查找到的图形处理单元卡上所述一个或多个进程,并将第一模型加载到该图形处理单元卡上进行模型验证。
11.根据权利要求7所述的装置,其特征在于,所述模型验证任务处理模块在当前所有进程中查找满足如下第一条件的进程之前进一步用于:
判断当前是否存在已申请到的用于模型验证的图形处理单元卡,若不存在,则向图形处理单元资源池申请用于模型验证的图形处理单元卡;若存在,执行所述在当前所有进程中查找满足如下第一条件的进程的动作。
12.一种电子设备,其特征在于,包括如权利要求7至11任一所述的模型验证装置。
CN201911417164.3A 2019-12-31 2019-12-31 模型验证方法、装置及电子设备 Pending CN113127163A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911417164.3A CN113127163A (zh) 2019-12-31 2019-12-31 模型验证方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911417164.3A CN113127163A (zh) 2019-12-31 2019-12-31 模型验证方法、装置及电子设备

Publications (1)

Publication Number Publication Date
CN113127163A true CN113127163A (zh) 2021-07-16

Family

ID=76769766

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911417164.3A Pending CN113127163A (zh) 2019-12-31 2019-12-31 模型验证方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN113127163A (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103984743A (zh) * 2014-05-23 2014-08-13 北京金山网络科技有限公司 一种管理内存资源的方法及装置
US20140359111A1 (en) * 2013-06-02 2014-12-04 Microsoft Corporation Idle Worker-Process Page-Out
CN106445686A (zh) * 2016-09-21 2017-02-22 东软集团股份有限公司 资源分配方法及装置
CN109062700A (zh) * 2018-08-21 2018-12-21 郑州云海信息技术有限公司 一种基于分布式系统的资源管理方法及服务器
CN109213600A (zh) * 2018-09-11 2019-01-15 郑州云海信息技术有限公司 一种基于ai云的gpu资源调度方法和装置
CN109684064A (zh) * 2018-12-26 2019-04-26 亚信科技(中国)有限公司 一种任务调度方法及任务调度设备
US20190228303A1 (en) * 2018-01-25 2019-07-25 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for scheduling resource for deep learning framework
CN110597635A (zh) * 2019-09-12 2019-12-20 腾讯科技(深圳)有限公司 图形处理资源分配方法、装置、计算机设备及存储介质
CN110618870A (zh) * 2019-09-20 2019-12-27 广东浪潮大数据研究有限公司 一种深度学习训练任务的工作方法及装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140359111A1 (en) * 2013-06-02 2014-12-04 Microsoft Corporation Idle Worker-Process Page-Out
CN103984743A (zh) * 2014-05-23 2014-08-13 北京金山网络科技有限公司 一种管理内存资源的方法及装置
CN106445686A (zh) * 2016-09-21 2017-02-22 东软集团股份有限公司 资源分配方法及装置
US20190228303A1 (en) * 2018-01-25 2019-07-25 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for scheduling resource for deep learning framework
CN109062700A (zh) * 2018-08-21 2018-12-21 郑州云海信息技术有限公司 一种基于分布式系统的资源管理方法及服务器
CN109213600A (zh) * 2018-09-11 2019-01-15 郑州云海信息技术有限公司 一种基于ai云的gpu资源调度方法和装置
CN109684064A (zh) * 2018-12-26 2019-04-26 亚信科技(中国)有限公司 一种任务调度方法及任务调度设备
CN110597635A (zh) * 2019-09-12 2019-12-20 腾讯科技(深圳)有限公司 图形处理资源分配方法、装置、计算机设备及存储介质
CN110618870A (zh) * 2019-09-20 2019-12-27 广东浪潮大数据研究有限公司 一种深度学习训练任务的工作方法及装置

Similar Documents

Publication Publication Date Title
CN108829494B (zh) 基于负载预测的容器云平台智能资源优化方法
CN110780914B (zh) 服务发布方法及装置
CN103810048A (zh) 一种面向资源利用最优的线程数量自动调整方法及装置
CN104657220A (zh) 混合云中基于截止时间和费用约束的调度模型及方法
CN111178517B (zh) 模型部署方法、系统、芯片、电子设备及介质
CN113656179B (zh) 云计算资源的调度方法及装置、电子设备和存储介质
CN109918201A (zh) 任务卸载的控制方法和系统
CN111191789B (zh) 模型优化部署系统、芯片、电子设备及介质
CN109976911B (zh) 一种自适应资源调度方法
TW202119255A (zh) 推理系統、推理方法、電子設備及電腦儲存媒體
CN107832143A (zh) 一种物理机资源的处理方法和装置
CN106713168A (zh) 一种流量控制方法及系统
CN107741899A (zh) 处理终端数据的方法、装置及系统
CN107861796A (zh) 一种支持云数据中心能耗优化的虚拟机调度方法
CN108829415B (zh) 模型加载方法、服务器及计算机可读存储介质
CN110875838B (zh) 一种资源部署方法、装置和存储介质
CN105808341A (zh) 一种资源调度的方法、装置和系统
US20210383279A1 (en) Intelligent recommendation method and apparatus, model training method and apparatus, electronic device, and storage medium
CN110580195A (zh) 一种基于内存热插拔的内存分配方法和装置
CN109347982A (zh) 一种数据中心的调度方法及装置
CN113127163A (zh) 模型验证方法、装置及电子设备
CN106874020A (zh) 启动插件的方法及装置
CN111597035A (zh) 基于多线程的仿真引擎时间推进方法及系统
CN109462663A (zh) 一种限制系统资源占用的方法、语音交互系统及存储介质
CN106484879B (zh) 一种基于MapReduce的Map端数据的聚合方法

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