CN112559183B - 计算资源管理方法、装置、电子设备及存储介质 - Google Patents

计算资源管理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN112559183B
CN112559183B CN202011503225.0A CN202011503225A CN112559183B CN 112559183 B CN112559183 B CN 112559183B CN 202011503225 A CN202011503225 A CN 202011503225A CN 112559183 B CN112559183 B CN 112559183B
Authority
CN
China
Prior art keywords
service
computing resource
computing
monitoring
state
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
CN202011503225.0A
Other languages
English (en)
Other versions
CN112559183A (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 CN202011503225.0A priority Critical patent/CN112559183B/zh
Publication of CN112559183A publication Critical patent/CN112559183A/zh
Application granted granted Critical
Publication of CN112559183B publication Critical patent/CN112559183B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • 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

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种计算资源管理方法、装置、电子设备及存储介质,涉及人工智能技术领域,尤其涉及计算机视觉技术领域。具体实现方案为:通过在在线计算业务的计算资源使用率低于第一预设阈值的时间区间内,将第一业务未使用的部分或者全部计算资源分配给离线计算业务使用。这样,可以实现计算资源的最大化利用,提高计算资源利用率。

Description

计算资源管理方法、装置、电子设备及存储介质
技术领域
本申请涉及人工智能技术领域,尤其涉及计算机视觉技术领域,具体涉及一种计算资源管理方法、装置、电子设备及存储介质。
背景技术
计算机视觉智能计算是指使用计算机及相关设备对生物视觉进行模拟的技术,通过摄影机和电脑代替人眼对目标进行识别、跟踪、测量和处理,其主要可以涉及人脸识别、图像审核、文字识别、车辆分析、视频技术等多项智能计算功能。
现有技术中,计算服务提供方通常为计算服务使用方(业务方)部署其请求的全部计算资源,以保证对于计算服务使用方的完全满足度。然而,实际应用中,在业务流量的低谷期,可能产生较大冗余计算资源,使得计算资源的利用率较低,造成计算资源浪费。
发明内容
本申请提供了一种计算资源管理方法、装置、电子设备及存储介质。
根据本申请的一方面,提供了一种计算资源管理方法,所述方法包括:
监测第一业务使用的计算资源;所述第一业务为在线计算业务,所述第一业务预先请求有第一计算资源;
在所述第一业务的计算资源使用率低于第一预设阈值的时间区间内,将目标计算资源分配给第二业务使用;所述目标计算资源为所述时间区间内所述第一计算资源中所述第一业务未使用的计算资源,所述第二业务为离线计算业务。
根据本申请的另一方面,提供了一种计算资源管理装置,所述装置包括:
第一监测模块,用于监测第一业务使用的计算资源;所述第一业务为在线计算业务,所述第一业务预先请求有第一计算资源;
分配模块,用于在所述第一业务的计算资源使用率低于第一预设阈值的时间区间内,将目标计算资源分配给第二业务使用;所述目标计算资源为所述时间区间内所述第一计算资源中所述第一业务未使用的计算资源,所述第二业务为离线计算业务。
根据本申请的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请提供的计算资源管理方法。
根据本申请的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行本申请提供的计算资源管理方法。
根据本申请的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本申请提供的计算资源管理方法。
根据本申请的技术提高了计算资源的利用率。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请第一实施例的计算资源管理方法的流程示意图;
图2是根据本申请第二实施例的计算资源管理方法的流程示意图之一;
图3是根据本申请第二实施例的GPU卡的计算资源分配情况示意图;
图4是根据本申请第二实施例的计算资源管理方法的流程示意图之二;
图5是根据本申请第三实施例的计算资源管理装置的框图之一;
图6是根据本申请第三实施例的计算资源管理装置的框图之一;
图7是用来实现本申请实施例的计算资源管理方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
为方便理解,以下对本申请涉及的一些内容进行说明:
1)计算机视觉(Computer Vision,CV)技术:计算机视觉技术是指使用计算机及相关设备对生物视觉进行模拟的技术,通过摄影机和电脑代替人眼对目标进行识别、跟踪、测量和处理,其可以应用于多种领域,主要可以涉及人脸识别、图像审核、文档分析、车辆分析、视频技术等多项智能计算功能。
示例性的,计算机视觉技术可以应用于视频审核的场景:针对视频类APP,可以为其提供视觉智能计算服务,对用户上传的视频进行敏感内容、违规内容等内容方面的审核,以及清晰度、分辨率等质量方面的审核;之后,还可以对审核通过的视频进行细粒度分类、视频字幕识别、智能截图、视频内物体种类等识别;最后可以按照业务方需求进行推荐和分发。
再示例性的,计算机视觉技术可以应用于人脸识别或者人体检测的场景:需求场景:针对存在人脸/人体检测、人脸识别、人体分割、动态人流检测等需求的业务方,可以将视觉智能计算服务配合业务方的业务系统进行实现,达到多样的人脸识别应用,可以具体应用于公司入口、地铁、机场、超市、小区入口等场所放置的人脸闸机、无接触测温设备、人脸售货机、视频监控等设备上。
现有技术中,智能计算服务使用方(也可以称为业务方,以下简称为业务方)通常需要与智能计算服务提供方(以下简称为服务方)之间签订智能计算服务的相关协议,之后由服务方为业务方分配其请求的全部计算资源,以部署智能计算服务。然而,在实际应用中,智能计算服务可能存在业务流量低谷期,即智能计算请求量较少的时间段。在上述业务流量低谷期,业务方对计算资源的使用率较低,可能存在较大冗余的计算资源,而造成计算资源浪费。
2)在线计算业务:在线计算业务可以视为使用实时计算模型的业务,其对计算的准确性和时延性要求较高。具体的,所述在线计算业务需要对计算业务的输入数据进行实时反馈的服务,对计算服务的准确率和延时比较敏感,会关系到整个业务系统的实时响应效率和用户体验,是一种持续的计算业务。
3)离线计算业务:离线计算业务可以视为使用批量计算模型的业务。具体的,所述离线计算业务可以在累计一定量的数据后,在某一个时刻提交进行批处理,即每隔一段时间,例如几天或者几个月会提交一次批处理请求,每次会进行大批量的数据处理,因而其对计算服务的吞吐要求比较大,但对计算服务的准确率和延时不敏感,可以接受一定程度的重试以提升准确率。
4)算子:算子是指针对单个或多个音视频及相关图像等的模型或者能力的服务化、规范化的封装,符合服务方系统统一的算子标准,可在服务方的计算机视觉平台部署或者运行,并对外提供调用接口。
为了解决上述计算资源利用率较低的问题,根据本申请的实施例,本申请提供了一种计算资源管理方法。所述方法可以应用于电子设备,所述电子设备可以是云端的服务器、计算机等具备数据处理/智能计算功能的数据平台或者设备。
需要说明的是,所述计算资源管理方法可以应用于计算机视觉相关的智能计算服务,当然的,也可以应用于其他计算服务,具体可以根据实际情况决定,本申请实施例在此不作限定。
请参见图1,图1是本申请的实施例提供的一种计算资源管理方法,所述方法包括:
S101、监测第一业务使用的计算资源;所述第一业务为在线计算业务,所述第一业务预先请求有第一计算资源。
本申请实施例中,所述第一业务可以视为主业务。所述计算资源可以理解为图形处理器(Graphics Processing Unit,GPU)卡上的最基本的处理单元(StreamingProcessor,SP),也可以称为CUDA core的数量和显存数。
具体实现时,所述第一业务的业务方可以预先向服务方请求第一计算资源,所述第一计算资源为所述第一业务的业务方请求的全部计算资源。服务方可以基于所述第一计算资源为所述第一业务部署计算服务。
在所述第一业务进行的过程中,电子设备可以监测所述第一业务使用的计算资源。具体的,电子设备可以监测所述第一业务在各时段的计算资源使用率,并可以记录反映所述第一业务的计算资源使用情况的相关信息,上述相关信息可以包括但不限于:1)所述第一业务的业务流量高峰期,即计算资源使用率持续高于某一预设阈值的时间区间:2)所述第一业务的业务流量低谷期,即计算资源使用率持续低于某一预设阈值的时间区间;3)所述第一业务可达到的最大计算资源使用率;4)所述最大计算资源使用率对应的时间信息。
S102、在所述第一业务的计算资源使用率低于第一预设阈值的时间区间内,将目标计算资源分配给第二业务使用;所述目标计算资源为所述时间区间内所述第一计算资源中所述第一业务未使用的计算资源,所述第二业务为离线计算业务。
本申请实施例中,所述第一业务为在线计算业务,所述第二业务为离线计算业务,所述第一业务的优先级高于所述第二业务的优先级,也就是说,在所述第一业务和所述第二业务同时部署的情况下,计算资源优先提供给所述第一业务使用。
需要说明的是,所述第一业务的业务方与所述第二业务的业务方可以相同,也可以不同,具体可根据实际情况决定,本申请实施例在此不作限定。
具体实现时,电子设备可以在先前监测所述第一业务使用的计算资源的过程中,可以根据所述第一业务对应的算子来确定所述第一预设阈值。具体的,每个算子存在一个极限利用率和上线时的平均利用率。其中,所述上线时的平均利用率是动态的,可以通过对算子进行一定时间周期的监测并计算得到。一般情况下,所述平均利用率低于所述极限利用率。所述第一预设阈值只需要高于所述平均利用率即可,并可以预留一部分缓冲buffer资源应对业务流量高峰期的需求。
示例性的,假设所述第一预设阈值为40%,即当所述第一业务的计算资源使用率低于40%时,可以认为所述第一业务的计算资源使用率较低。若电子设备监测到在某一时间区间内,所述第一业务的计算资源使用率持续低于40%,可以将上述时间区间确定为所述第一业务的业务流量低谷期。
本申请实施例中,在上述时间区间内,电子设备可以在所述第一业务未使用的计算资源中确定目标计算资源,并基于所述目标计算资源为所述第二业务部署计算服务。其中,所述目标计算资源可以是所述第一业务未使用的计算资源的部分或者全部。
具体实现时,在上述时间区间内,电子设备可以自行确定所述目标计算资源。电子设备也可以基于所述第二业务的业务方的请求确定所述目标计算资源,示例性的,假设所述第一预设阈值为40%,服务方可以告知业务方在所述第一计算资源的60%的范围内请求所述目标计算资源。
本申请的上述实施例具有如下优点或有益效果:通过在所述第一业务的计算资源使用率低于第一预设阈值的时间区间内,将第一业务未使用的部分或者全部计算资源分配给优先级较低的第二业务使用。这样,在所述第一业务的业务流量低谷期时,所述第一业务未使用的大量冗余资源可以得到充分利用,避免了计算资源,提高计算资源利用率。
请参见图2,图2是本申请的实施例提供的另一种计算资源管理方法的流程图,所述方法包括:
S201、监测第一业务使用的计算资源;所述第一业务为在线计算业务,所述第一业务预先请求有第一计算资源。
S202、在所述第一业务的计算资源使用率低于第一预设阈值的时间区间内,将目标计算资源分配给第二业务使用;所述目标计算资源为所述时间区间内所述第一计算资源中所述第一业务未使用的计算资源,所述第二业务为离线计算业务。
S201至S202的具体实施方式可参见如图1所示实施例中S101至S102的具体说明,为避免重复,在此不再赘述。
本申请实施例中,可选的,所述第一业务为第一业务方的在线计算业务,所述第二业务为第二业务方的离线计算业务。
本可选的实施方式中,所述第一业务和所述第二业务分别为不同业务方的业务,可以这样理解,服务方在向所述第一业务方提供部署所述第一业务的第一计算资源的同时,可以在所述第一业务的业务流量低谷期,将部分计算资源(即所述目标计算资源)超售给所述第二业务方,并为其部署所述第二业务,进一步提高计算资源的利用率。
S203、监测所述第一业务在所述时间区间内的状态。
本申请实施例中,在所述时间区间内,基于所述第一计算资源,同时部署有所述第一业务和所述第二业务。由于所述第一业务的优先级高于所述第二业务的优先级,所述第二业务需要在保证所述第一业务的稳定性的前提下进行。具体实现时,电子设备在所述第一业务和所述第二业务同时部署的情况下,可以对所述第一业务在所述时间区间的状态进行监测。
S204、在所述第一业务的状态不满足预设稳定条件的情况下,执行第一操作;其中,所述第一操作包括以下任一项:
减少分配给所述第二业务使用的计算资源;
暂停所述目标计算资源上进行的所述第二业务;
终止所述目标计算资源上进行的所述第二业务;
增加分配给所述第一业务使用的计算资源。
本申请实施例中,在电子设备监测到所述第二业务影响到所述第一业务的稳定性的情况下,可以执行所述第一操作对所述第一业务和所述第二业务的部署进行管理,以使所述第一业务恢复至稳定状态。其中,所述预设稳定状态可以理解为服务方与业务方之间约定的服务等级协议(Service Level Agreement,SLA)中涉及的业务稳定标准,在此表示为所述预设稳定条件。
需要说明的是,基于所述第一业务为在线计算业务,所述第二业务为离线计算业务,因而在所述第一业务出现不稳定状态时,可以对所述第二业务执行所述第一操作,且所述第二业务可以通过一定的重试保证准确率。若所述第一业务和所述第二业务均为在线计算业务,则在计算服务出现不稳定状态时,无法确定需要对哪一业务进行处理。
具体实现时,所述第一操作的具体实施方式可以包括但不限于以下任一项:1)减少分配给所述第二业务使用的计算资源;2)暂停所述目标计算资源上进行的所述第二业务;3)终止所述目标计算资源上进行的所述第二业务;4)增加分配给所述第一业务使用的计算资源。
其中,实施方式1)是指减少所述目标计算资源对应的计算资源量,也可以理解为对所述第二业务限流。示例性的,假设之前分配给所述第二业务使用的所述目标计算资源为40个单位的计算资源,当电子设备监测到所述第一业务的状态不满足预设稳定条件时,可以将分配给所述第二业务使用的所述目标计算资源减少为20个单位的计算资源,相当于杀掉kill了20个单位的计算资源上进行的所述第二业务。
实施方式2)是指暂时停止所述目标计算资源上进行的所述第二业务,在所述第一业务恢复至所述预设稳定条件的情况下,可以重新开始所述目标计算资源上进行的所述第二业务。
实施方式3)是指终止所述目标计算资源上进行的所述第二业务,相当于杀掉kill所述第二业务,电子设备由所述第一业务和所述第二业务同时部署的状态转变为所述第一业务单独部署的状态。
实施方式4)是指将所述第一业务使用的计算资源进行扩容。由于所述第一业务的优先级高于所述第二业务的优先级,在计算资源冲突的情况下,电子设备优先为所述第一业务分配计算资源;也就是说,所述第一业务可以抢占所述目标计算资源,进而变相杀掉kill部分或者全部所述目标计算资源上进行的所述第二业务。
本申请实施例中,电子设备具体执行何种第一操作,可以根据导致所述第一业务的状态不满足预设稳定条件的情况具体确定。下面对三种可能导致所述第一业务的状态不满足预设稳定条件的情况,以及每种情况下所述第一操作的具体实施方式进行说明:
第一种情况,可选的,所述第一计算资源包括N个计算资源单元,N为正整数;
所述监测所述第一业务在所述时间区间内的状态,包括:
监测每一所述计算资源单元的计算资源使用率;
在监测到所述计算资源单元的计算资源使用率超过第二预设阈值的情况下,确定所述计算资源单元上所述第一业务的状态不满足预设稳定条件。
本可选的实施方式中,导致所述第一业务的状态不满足预设稳定条件的情况可以理解为:单个计算资源单元的计算资源使用率异常。其中,所述计算资源单元可以表现为一张GPU卡。
具体实现时,每一张GPU卡上可以同时部署有所述第一业务和所述第二业务,所述目标计算资源由每一张GPU卡上所述第二业务使用的计算资源组成;也可以一部分GPU卡上部署有所述第一业务,另一部分GPU卡上部署有所述第二业务,具体可根据实际情况确定,在此不作任何限定。
为方便理解,示例性的,如图3所示为单张GPU卡在所述时间区间内计算资源的分配情况:在所述时间区间内,所述第一业务最多使用所述第一预设阈值对应的计算资源;所述第一业务未使用的计算资源中的部分或者全部确定为所述目标计算资源,可以分配给所述第二业务使用。
具体实现时,每一张GPU卡可以设置有一个代理Agent,其主要用于收集GPU卡的信息以及对GPU卡进行管理。Agent可以监测GPU卡上的计算资源使用率,当Agent监测到GPU卡上的计算资源使用率超过第二预设阈值的情况下,表示所述第二业务使用的计算资源较多或者所述第一业务和所述第二业务共同使用的计算资源较多,可能导致GPU卡的处理速度降低,进而可能影响所述第一业务的处理速度。此时,可以认为所述第一业务的状态不满足预设稳定条件,即处于不稳定状态。
此种情况下,电子设备可以自行减少分配给所述目标计算资源,对所述第二业务进行限流;电子设备可以直接终止所述目标计算资源上进行的所述第二业务。具体执行的所述第一操作,可以根据电子设备预先设置的异常恢复预案确定,本申请实施例在此不作限定。
本申请的上述实施例具有如下优点或有益效果:通过监测单个计算资源单元的计算资源使用率,可以避免因所述第二业务使用的计算资源过多而影响所述第一业务的处理速度的情况,保证所述第一业务的稳定性。
第二种情况,可选的,所述第一计算资源包括N个计算资源单元,N为正整数;
所述监测所述第一业务在所述时间区间内的状态,包括:
监测每一所述计算资源单元的处理队列状态;
在监测到所述计算资源单元的处理队列排队超时或者所述计算资源单元的处理队列已满的情况下,确定所述计算资源单元上所述第一业务的状态不满足预设稳定条件。
本可选的实施方式中,导致所述第一业务的状态不满足预设稳定条件的情况可以理解为:单个计算资源单元的计算请求容量异常。其中,所述计算资源单元的具体实现形式可以参照第一种情况中对所述计算资源单元的说明,在此不再赘述。
具体实现时,电子设备可以监测GPU卡上针对计算请求的处理队列状态。所述处理队列可以理解为等待处理的计算请求队列,电子设备可以为处理队列设置有最大等待数量,例如10个,或者可以为处理队列设置最长等待时间,例如10S。当监测到GPU卡上所述第一业务的处理队列排队超时或者所述计算资源单元的处理队列已满的情况下,表示所述第一业务的处理速度明显降低。此时,可以认为所述第一业务的状态不满足预设稳定条件,即处于不稳定状态。
此种情况下,电子设备可以暂停所述目标计算资源上进行的所述第二业务,在所述第一业务的处理速度恢复正常的情况下,重新开始所述目标计算资源上进行的所述第二业务;电子设备也可以直接终止所述目标计算资源上进行的所述第二业务。具体执行的所述第一操作,可以根据电子设备预先设置的异常恢复预案确定,本申请实施例在此不作限定。
本申请的上述实施例具有如下优点或有益效果:通过监测单个计算资源单元的处理队列状态,可以避免因所述第二业务的进行而影响所述第一业务的处理速度的情况,保证所述第一业务的稳定性。
第三种情况,可选的,所述监测所述第一业务在所述时间区间内的状态,包括:
监测所述第一业务的计算请求处理成功率;
在监测到所述第一业务的计算请求处理成功率下降第三预设阈值的情况下,确定所述第一业务的状态不满足预设稳定条件。
本可选的实施方式中,导致所述第一业务的状态不满足预设稳定条件的情况可以理解为:所述第一业务的业务集群的请求处理异常。
具体实现时,电子设备可以监测并统计述第一业务的计算请求处理成功率。当电子设备监测到所述第一业务的计算请求处理成功率下降第三预设阈值的情况下的情况下,表示所述第一业务的对于计算请求的处理出现明显异常。此时,可以认为所述第一业务的状态不满足预设稳定条件,即处于不稳定状态。
此种情况下,电子设备在监测到所述第一业务的计算请求处理成功率每下降第三预设阈值的情况下,示例性的,在监测到所述第一业务的计算请求处理成功率每下降5%的情况下,可以暂停所述目标计算资源上进行的所述第二业务,在所述第一业务的计算请求处理成功率在一个预设时间周期内保持稳定或者升高的情况下,重新开始所述目标计算资源上进行的所述第二业务,或者也可以减少所述目标计算资源对应的计算资源量,对所述第二业务限流;在监测到所述第一业务的计算请求处理成功率持续下降的情况下,可以直接终止所述目标计算资源上进行的所述第二业务。具体执行的所述第一操作,可以根据电子设备预先设置的异常恢复预案确定,本申请实施例在此不作限定。
本申请的上述实施例具有如下优点或有益效果:通过监测所述第一业务的业务集群的请求处理情况,判断所述第一业务的请求处理成功率,进而可以避免因所述第二业务的进行而影响所述第一业务的处理速度的情况,保证所述第一业务的稳定性。
第四种情况,可选的,在操作人员监测到所述第一业务的较大异常的情况下,可以向电子设备输入第一指令,所述第一指令用于将所述第一业务使用的计算资源进行扩容。
具体实现时,电子设备在接收到所述第一指令的情况下,响应于所述第一指令,可以对所述第一业务使用的计算资源进行扩容,进而抢占所述第二业务使用的所述目标计算资源。
本申请的上述实施例具有如下优点或有益效果:在操作人员监测到所述第一业务的较大异常的情况下,通过对所述第一业务使用的计算资源进行扩容,可以抢占所述第二业务使用的所述目标计算资源,将所述第一业务和所述第二业务同时部署的情况恢复至所述第一业务单独部署的情况,保证所述第一业务的稳定性。
可以理解的是,本申请实施例中,所述导致所述第一业务的状态不满足预设稳定条件的情况并不限于此,具体可以根据实际情况确定执行不同的第一操作,以保证所述第一业务的稳定性。
为方便理解,下面以所述第一业务为业务方1的在线视频审核业务,所述第二业务为业务方2的离线视频审核业务为例,对本申请实施例的一种具体的实施方式进行说明,如图4所示:
1)部署第一业务申请的计算资源。
假设业务方1为其在线视频审核业务预先申请有100张GPU卡的计算资源。根据经验值,单独部署在线视频审核业务的情况下,在线视频审核业务使用的计算资源一般不会超过80%(80张GPU卡的计算资源),通常为40%至70%(40张至70张GPU卡的计算资源)。
2)确定所述第二业务可申请的计算资源。
根据经验值,在线视频审核业务的业务流量低谷期确定为每天的02:00至05:00之间的三个小时,在上述业务流量低谷期,在线视频审核业务使用的计算资源不会超过40%(40张GPU卡的计算资源),因此可以将所述第一预设阈值确定为40%(40张GPU卡的计算资源),那么业务方2的离线视频审核业务可申请的计算资源最多为60张GPU卡的计算资源。
3)在所述第一业务的计算资源使用率低于所述第一预设阈值的时间区间内,部署所述第二业务申请的目标计算资源。
业务方2可以在60张GPU卡的基础上申请离线视频审核业务的计算资源,假设业务方2为其离线视频审核业务申请了40张GPU卡。在每天的02:00至05:00之间的三个小时内,可以将业务方1的在线视频审核业务未使用的GPU卡中的40张GPU卡提供给业务方2的离线视频审核业务。
4)监测所述第一业务的状态:在监测到所述第一业务的状态不满足预设稳定条件的情况下,执行第一操作在监测到所述第一业务的状态满足预设稳定条件的情况下,继续监测所述第一业务的状态。
电子设备可以在业务流量低谷期,监测在线视频审核业务的状态,在监测到在线视频审核业务的状态不满足预设稳定条件(低于SLA标准)的情况下,执行第一操作;当在线视频审核业务的状态一直处于预设稳定条件的情况下,继续监测在线视频审核业务的状态。
具体的,当监测到在线视频审核业务使用的GPU卡中出现单卡计算资源使用率超过60%的情况下,终止离线视频审核业务,此情况下的异常感知时间通常为1.3秒至2.5秒;或者当监测到在线视频审核业务使用的GPU卡中出现单卡计算请求处理队列出现超时或者计算请求处理队列已满的情况下,终止离线视频审核业务,此情况下的异常感知时间通常为60秒,异常恢复时间为10秒;或者,当监测到在线视频审核业务的请求处理成功率下降5%的情况下,减少离线视频审核业务使用的GPU卡,此情况下的监测生效时间通常为5分钟至6分钟;或者在接收到操作人员的第一指令的情况下,即在线视频审核业务的处理出现较大异常且可能已经被用户感知的情况下,对在线视频审核业务使用的计算资源进行扩容。
在执行第一操作后,可以继续监测在线视频审核业务的状态使其始终满足预设稳定条件。
本申请的上述实施例具有如下优点或有益效果:本申请实施例中的计算资源管理方法,在图1所示实施例的基础上增加了很多可选的实施方案,可以在同时部署有所述第一业务和所述第二业务的情况下,对所述第一业务的状态进行监测,并在所述第一业务不稳定时,执行第一操作对所述第一业务和所述第二业务的部署情况进行管理,在提高计算资源利用率的基础上,能够保证所述第一业务处理的稳定性。
本申请还提供了一种计算资源管理装置。
如图5所示,计算资源管理装置500包括:
第一监测模块501,用于监测第一业务使用的计算资源;所述第一业务为在线计算业务,所述第一业务预先请求有第一计算资源;
分配模块502,用于在所述第一业务的计算资源使用率低于第一预设阈值的时间区间内,将目标计算资源分配给第二业务使用;所述目标计算资源为所述时间区间内所述第一计算资源中所述第一业务未使用的计算资源,所述第二业务为离线计算业务。
可选的,如图6所示,计算资源管理装置500还包括:
第二监测模块503,用于监测所述第一业务在所述时间区间内的状态;
执行模块504,用于在所述第一业务的状态不满足预设稳定条件的情况下,执行第一操作;其中,所述第一操作包括以下任一项:
减少分配给所述第二业务使用的计算资源;
暂停所述目标计算资源上进行的所述第二业务;
终止所述目标计算资源上进行的所述第二业务;
增加分配给所述第一业务使用的计算资源。
可选的,所述第一计算资源包括N个计算资源单元,N为正整数;
第二监测模块503包括:
第一监测单元,用于监测每一所述计算资源单元的计算资源使用率;
第一确定单元,用于在监测到所述计算资源单元的计算资源使用率超过第二预设阈值的情况下,确定所述计算资源单元上所述第一业务的状态不满足预设稳定条件。
可选的,所述第一计算资源包括N个计算资源单元,N为正整数;
第二监测模块503包括:
第二监测单元,用于监测每一所述计算资源单元的处理队列状态;
第二确定单元,用于在监测到所述计算资源单元上所述第一业务的处理队列排队超时或者所述计算资源单元的处理队列已满的情况下,确定所述计算资源单元上所述第一业务的状态不满足预设稳定条件。
可选的,第二监测模块503包括:
第三监测单元,用于监测所述第一业务的计算请求处理成功率;
第三确定单元,用于在监测到所述第一业务的计算请求处理成功率下降第三预设阈值的情况下,确定所述第一业务的状态不满足预设稳定条件。
可选的,所述第一业务为第一业务方的在线计算业务,所述第二业务为第二业务方的离线计算业务。
本申请的上述实施例中,计算资源管理装置500可实现图1和图2和图4所示的方法实施例中实现的各个过程,且可以达到相同有益效果,为避免重复,这里不再赘述。
根据本申请的实施例,本申请还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图7示出了可以用来实施本申请的实施例的示例电子设备700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图7所示,设备700包括计算单元701,其可以根据存储在只读存储器(ROM)702中的计算机程序或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序,来执行各种适当的动作和处理。在RAM 703中,还可存储设备700操作所需的各种程序和数据。计算单元701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元701的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元701执行上文所描述的各个方法和处理,例如计算资源管理方法。例如,在一些实施例中,计算资源管理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序加载到RAM 703并由计算单元701执行时,可以执行上文描述的计算资源管理方法的一个或多个步骤。备选地,在其他实施例中,计算单元701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行计算资源管理方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (12)

1.一种计算资源管理方法,包括:
监测第一业务使用的计算资源;所述第一业务为在线计算业务,所述第一业务预先请求有第一计算资源;
在所述第一业务的计算资源使用率低于第一预设阈值的时间区间内,将目标计算资源分配给第二业务使用;所述目标计算资源为所述时间区间内所述第一计算资源中所述第一业务未使用的计算资源,所述第二业务为离线计算业务;
所述在所述第一业务的计算资源使用率低于第一预设阈值的时间区间内,将目标计算资源分配给第二业务使用之后,所述方法还包括:
监测所述第一业务在所述时间区间内的状态;
在所述第一业务的状态不满足预设稳定条件的情况下,执行第一操作;其中,所述第一操作包括以下任一项:
减少分配给所述第二业务使用的计算资源;
暂停所述目标计算资源上进行的所述第二业务;
终止所述目标计算资源上进行的所述第二业务;
增加分配给所述第一业务使用的计算资源。
2.根据权利要求1所述的方法,其中,所述第一计算资源包括N个计算资源单元,N为正整数;
所述监测所述第一业务在所述时间区间内的状态,包括:
监测每一所述计算资源单元的计算资源使用率;
在监测到所述计算资源单元的计算资源使用率超过第二预设阈值的情况下,确定所述计算资源单元上所述第一业务的状态不满足预设稳定条件。
3.根据权利要求1所述的方法,其中,所述第一计算资源包括N个计算资源单元,N为正整数;
所述监测所述第一业务在所述时间区间内的状态,包括:
监测每一所述计算资源单元的处理队列状态;
在监测到所述计算资源单元上所述第一业务的处理队列排队超时或者所述计算资源单元的处理队列已满的情况下,确定所述计算资源单元上所述第一业务的状态不满足预设稳定条件。
4.根据权利要求1所述的方法,其中,所述监测所述第一业务在所述时间区间内的状态,包括:
监测所述第一业务的计算请求处理成功率;
在监测到所述第一业务的计算请求处理成功率下降第三预设阈值的情况下,确定所述第一业务的状态不满足预设稳定条件。
5.根据权利要求1所述的方法,其中,所述第一业务为第一业务方的在线计算业务,所述第二业务为第二业务方的离线计算业务。
6.一种计算资源管理装置,包括:
第一监测模块,用于监测第一业务使用的计算资源;所述第一业务为在线计算业务,所述第一业务预先请求有第一计算资源;
分配模块,用于在所述第一业务的计算资源使用率低于第一预设阈值的时间区间内,将目标计算资源分配给第二业务使用;所述目标计算资源为所述时间区间内所述第一计算资源中所述第一业务未使用的计算资源,所述第二业务为离线计算业务;
所述装置还包括:
第二监测模块,用于监测所述第一业务在所述时间区间内的状态;
执行模块,用于在所述第一业务的状态不满足预设稳定条件的情况下,执行第一操作;其中,所述第一操作包括以下任一项:
减少分配给所述第二业务使用的计算资源;
暂停所述目标计算资源上进行的所述第二业务;
终止所述目标计算资源上进行的所述第二业务;
增加分配给所述第一业务使用的计算资源。
7.根据权利要求6所述的装置,其中,所述第一计算资源包括N个计算资源单元,N为正整数;
所述第二监测模块包括:
第一监测单元,用于监测每一所述计算资源单元的计算资源使用率;
第一确定单元,用于在监测到所述计算资源单元的计算资源使用率超过第二预设阈值的情况下,确定所述计算资源单元上所述第一业务的状态不满足预设稳定条件。
8.根据权利要求6所述的装置,其中,所述第一计算资源包括N个计算资源单元,N为正整数;
所述第二监测模块包括:
第二监测单元,用于监测每一所述计算资源单元的处理队列状态;
第二确定单元,用于在监测到所述计算资源单元上所述第一业务的处理队列排队超时或者所述计算资源单元的处理队列已满的情况下,确定所述计算资源单元上所述第一业务的状态不满足预设稳定条件。
9.根据权利要求6所述的装置,其中,所述第二监测模块包括:
第三监测单元,用于监测所述第一业务的计算请求处理成功率;
第三确定单元,用于在监测到所述第一业务的计算请求处理成功率下降第三预设阈值的情况下,确定所述第一业务的状态不满足预设稳定条件。
10.根据权利要求6所述的装置,其中,所述第一业务为第一业务方的在线计算业务,所述第二业务为第二业务方的离线计算业务。
11.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-5中任一项所述的方法。
CN202011503225.0A 2020-12-18 2020-12-18 计算资源管理方法、装置、电子设备及存储介质 Active CN112559183B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011503225.0A CN112559183B (zh) 2020-12-18 2020-12-18 计算资源管理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011503225.0A CN112559183B (zh) 2020-12-18 2020-12-18 计算资源管理方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN112559183A CN112559183A (zh) 2021-03-26
CN112559183B true CN112559183B (zh) 2023-08-04

Family

ID=75063626

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011503225.0A Active CN112559183B (zh) 2020-12-18 2020-12-18 计算资源管理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN112559183B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114564374A (zh) * 2022-02-21 2022-05-31 北京百度网讯科技有限公司 算子性能评估方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109471727A (zh) * 2018-10-29 2019-03-15 北京金山云网络技术有限公司 一种任务处理方法、装置及系统
CN111338785A (zh) * 2018-12-18 2020-06-26 北京京东尚科信息技术有限公司 资源调度方法及装置、电子设备、存储介质
CN111694646A (zh) * 2020-05-29 2020-09-22 北京百度网讯科技有限公司 资源调度方法、装置、电子设备及计算机可读存储介质
CN111813535A (zh) * 2019-04-11 2020-10-23 中国移动通信集团四川有限公司 一种资源配置确定方法、装置及电子设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10572306B2 (en) * 2016-09-14 2020-02-25 Cloudera, Inc. Utilization-aware resource scheduling in a distributed computing cluster

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109471727A (zh) * 2018-10-29 2019-03-15 北京金山云网络技术有限公司 一种任务处理方法、装置及系统
CN111338785A (zh) * 2018-12-18 2020-06-26 北京京东尚科信息技术有限公司 资源调度方法及装置、电子设备、存储介质
CN111813535A (zh) * 2019-04-11 2020-10-23 中国移动通信集团四川有限公司 一种资源配置确定方法、装置及电子设备
CN111694646A (zh) * 2020-05-29 2020-09-22 北京百度网讯科技有限公司 资源调度方法、装置、电子设备及计算机可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
数据中心上异构资源的细粒度分配算法研究;汤小春;符莹;樊雪枫;;西北工业大学学报(03);全文 *

Also Published As

Publication number Publication date
CN112559183A (zh) 2021-03-26

Similar Documents

Publication Publication Date Title
CN112559182B (zh) 资源分配方法、装置、设备及存储介质
US11582166B2 (en) Systems and methods for provision of a guaranteed batch
JP6480642B2 (ja) 確率的帯域幅調整
US10417062B2 (en) Method and apparatus of unloading out of memory processing flow to user space
CN115277566B (zh) 数据访问的负载均衡方法、装置、计算机设备及介质
CN112650575B (zh) 资源调度方法、装置和云端服务系统
CN112988727A (zh) 数据标注方法、装置、设备、存储介质及计算机程序产品
CN113590329A (zh) 资源处理方法及装置
CN112559183B (zh) 计算资源管理方法、装置、电子设备及存储介质
CN113986497B (zh) 基于多租户技术的队列调度方法、装置及系统
CN113392984B (zh) 用于训练模型的方法、装置、设备、介质和产品
CN111309483A (zh) 一种服务器集群的管理方法、装置、设备及存储介质
CN112887407B (zh) 用于分布式集群的作业流量控制方法和装置
CN112615795A (zh) 流量控制方法、装置、电子设备、存储介质及产品
CN114489963A (zh) 人工智能应用任务的管理方法、系统、设备及存储介质
CN116594563A (zh) 分布式存储扩容方法、装置、电子设备和存储介质
CN115967677A (zh) 服务调用的流量控制方法、装置、设备及存储介质
CN109960572B (zh) 设备资源管理方法和装置以及智能终端
CN114265692A (zh) 服务调度方法、装置、设备以及存储介质
CN114253710A (zh) 计算请求的处理方法、智能终端、云服务器、设备及介质
CN112632074A (zh) 用于数据库的库存分配方法、装置、电子设备和介质
CN114222073B (zh) 视频输出方法、装置、电子设备和存储介质
CN114710406B (zh) 超时阈值的动态确定方法、装置、电子设备和介质
WO2021074997A1 (ja) 解析処理装置、システム、方法及びプログラムが格納された非一時的なコンピュータ可読媒体
CN116450915A (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