CN115080209A - 系统资源调度方法、装置、电子设备及存储介质 - Google Patents

系统资源调度方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN115080209A
CN115080209A CN202210745484.7A CN202210745484A CN115080209A CN 115080209 A CN115080209 A CN 115080209A CN 202210745484 A CN202210745484 A CN 202210745484A CN 115080209 A CN115080209 A CN 115080209A
Authority
CN
China
Prior art keywords
system resource
resource
target
load
real
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
CN202210745484.7A
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.)
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 CN202210745484.7A priority Critical patent/CN115080209A/zh
Publication of CN115080209A publication Critical patent/CN115080209A/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/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Landscapes

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

Abstract

本申请公开了一种系统资源调度方法、装置、电子设备及存储介质,涉及系统资源调度技术领域。具体实现方案为:在目标应用运行的情况下,获取当前系统的实时运行状态参数;基于实时运行状态参数与对应的预设参数,确定处于高负载状态的高负载系统资源;确定高负载系统资源中用于运行目标应用的目标系统资源;对目标系统资源进行调度。本申请的技术方案满足了设备在高负荷状态下的灵活资源调度,提高了目标应用的处理速度。

Description

系统资源调度方法、装置、电子设备及存储介质
技术领域
本申请公开了一种系统资源调度方法、装置、电子设备及存储介质,涉及计算机技术领域,尤其涉及系统资源调度技术。
背景技术
图像处理等算法在终端设备上计算的流程分支固定,在不同的终端设备上采取相同的计算策略,即按照固定的策略实现图像处理等算法,预测的线程数等参数都是确定的,不会根据实际机器资源的使用情况去动态调整。这样在高负载的情况下,容易形成资源抢占,阻塞调用,从而降低图像处理等算法和整个应用的处理速度。
发明内容
本申请提供了一种系统资源调度方法、装置、电子设备及存储介质,以提高处理速度。
根据本申请的第一方面,提供了一种系统资源调度方法,包括:
在目标应用运行的情况下,获取当前系统的实时运行状态参数;
基于所述实时运行状态参数与对应的预设参数,确定处于高负载状态的高负载系统资源;
确定所述高负载系统资源中用于运行所述目标应用的目标系统资源;
对所述目标系统资源进行调度。
根据本申请的第二方面,提供了一种系统资源调度装置,包括:
参数获取模块,用于在目标应用运行的情况下,获取当前系统的实时运行状态参数;
高负载资源确定模块,基于所述实时运行状态参数与对应的预设参数,确定处于高负载状态的高负载系统资源;
目标资源确认模块,用于确定所述高负载系统资源中用于运行所述目标应用的目标系统资源;
资源调度模块,用于对所述目标系统资源进行调度。
根据本申请的第三方面,提供了一种系统资源调度系统,包括:
基础算子底层,包括多种算法;
算力调度层,包括第二方面所述的系统资源调度装置;
功能接口层,用于提供对外输出的功能接口;
平台封装层,用于提供多种对外接入方式。
根据本申请的第四方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所述的方法。
根据本申请的第五方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行第一方面所述的方法。
根据本申请的第六方面,提供了一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现第一方面所述方法的步骤。
根据本申请的技术方案满足了设备在高负荷状态下的灵活资源调度,提高了目标应用的处理速度。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请第一实施例的系统资源调度方法的示意图;
图2是根据本申请第二实施例的系统资源调度方法的示意图;
图3是根据本申请第三实施例的系统资源调度装置的结构框图;
图4是根据本申请第四实施例的系统资源调度系统的结构框图;
图5是用来实现本申请实施例的系统资源调度的方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
其中,在本申请的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
现有技术中,以图像处理算法为例,是按照固定的策略去做图像处理,预测的线程数等参数都是确定的,不会根据实际机器资源的使用情况去动态调整。这样在高负载情况下,就容易形成资源抢占,阻塞调用,从而处理速度降低。
为解决上述技术问题,本申请提出了一种系统资源调度方法、装置、电子设备和计算机可读存储介质,可以实现设备在高负荷状态下的灵活资源调度,提高了目标应用的处理速度。
下面参照附图来描述根据本申请实施例提出的系统资源调度方法、装置、电子设备和计算机可读存储介质。
图1是根据本申请一个实施例的系统资源调度方法的流程图。需要说明的是,本申请实施例的系统资源调度方法可应用于本申请实施例的系统资源调度装置。该系统资源调度装置可被配置于电子设备上。如图1所示,该系统资源调度方法可以包括如下步骤。
S101,在目标应用运行的情况下,获取当前系统的实时运行状态参数。
在本申请的具体实施例中,系统是指计算机等电子设备上安装的操作系统,为管理电子设备硬件和软件资源的计算机系统程序。操作系统上层可以安装多种应用程序,例如图像处理程序、视频处理程序、文字编辑程序等,操作系统为各种应用程序提供运行环境,各种应用程序的运行会占用一定的系统资源。
系统资源指的是中央处理器(central processing unit,简称CPU)、内存等资源。操作系统上一般会同时运行多个应用程序,为多个应用程序同时提供系统资源,操作系统为各个应用程序分配系统资源即进行资源调度。
实时运行状态参数可以包括但不限于CPU利用率、内存利用率,可以包括任何能够实时监测系统运行状态的参数。
在实际运行过程中,某些应用程序的运行需要较少的系统资源,而有些应用程序的运行需要较多的系统资源,例如某些图像处理应用程序。
需要说明的是,目标应用为运行时需要耗费较多系统资源的应用程序,例如某些图像处理应用程序等。
在系统同时运行的应用程序较多或者应用运行的功能较多时,系统资源的占用率则较高,由于占据了较多的系统资源形成高负载的场景,例如CPU资源,则这些需要较多系统资源的应用程序则有可能形成资源抢占,阻塞系统调用,最终导致该应用程序和整个系统的处理速度减慢。
对于这种情况,本申请实施例在需要较多系统资源的目标应用运行的情况下,获取当前系统的实时运行状态参数,即通过实时检测系统的实时运行状态,以此为依据进行进一步处理。
S102,基于实时运行状态参数与对应的预设参数,确定处于高负载状态的高负载系统资源。
在本申请的具体实施例中,获取的实时运行状态参数与实时运行状态参数对应的预设参数进行比较,在每个实时运行状态参数满足对应预设参数条件时,确定该实时运行状态参数对应的系统资源为高负载系统资源。
作为一个示例,在当前CPU利用率满足其对应的预设CPU参数阈值时,确定CPU利用率对应的CPU系统资源为高负荷系统资源。在当前内存利用率满足其对应的预设内存参数阈值时,确定内存利用率对应的内存系统资源为高负荷系统资源。
S103,确定高负载系统资源中用于运行目标应用的目标系统资源。
可以理解为,在确定存在高负载系统资源后,对该高负载系统资源进行调度,以便满足设备在高负荷状态下的灵活资源调度,避免形成资源抢占,阻塞调用,提高目标应用的处理速度。
在本实施例中,在进行资源调度之前,需要先确认高负载系统资源中用于运行该目标应用的系统资源占比或者系统资源值,之后对该目标应用所占的该部分高负载系统资源进行调度。
S104,对目标系统资源进行调度。
可以理解为,在确定目标系统资源之后,对目标系统资源进行调整,即减少目标应用所占的系统资源,以便满足设备在高负荷状态下的灵活资源调度,避免形成资源抢占,阻塞调用,提高目标应用的处理速度。
本申请实施例的系统资源调度方法,在目标应用运行后,获取当前系统的实时运行状态参数;基于该实时运行状态参数与各自对应的预设参数,确定处于高负载状态的高负载系统资源;之后确定高负载系统资源中用于运行目标应用的目标系统资源,最后对目标系统资源进行调度。即针对处于高负载状态的系统资源中目标应用所占的部分进行调整,满足了设备在高负荷状态下的灵活资源调度,避免形成资源抢占,阻塞调用,提高目标应用以及整个系统的处理速度。
通过上述分析可知,本申请实施例中,可以在目标应用运行之后,根据获取的当前系统的实时运行状态参数,确定目标应用所占用的目标系统资源,下面结合图2对具体的实时运行状态参数的获取方法,以及目标系统资源的种类以及对应的调度方法给出进一步说明。图2是根据本申请另一个具体实施例的系统资源调度方法的流程图。如图2所示,该系统资源调度方法可以包括如下步骤。
S201,在目标应用运行的情况下,获取目标应用的运行时间。
在本申请的具体实施例中,可能存在应用程序开始运行时,某些功能还没开启,预设的系统资源分配参数还未调度完成等各种原因,需要在目标应用运行一定时间后,在对系统资源进行调度判断,以免浪费系统资源。
可选的,通过调度计时器进行计时。
S202,当运行时间满足时间阈值时,根据预设频率获取当前系统的实时运行状态参数;其中,实时运行状态参数包括以下至少一项:系统CPU利用率、内存利用率。
需要说明的是,系统CPU利用率和内存利用率是指系统总的使用率。
可选的,系统CPU利用率通过CPU解析器获取。以操作系统为Linux系统为例,通过解析/proc/cpuinfo获取系统CPU利用率;以操作系统为Android系统为例,通过解析/proc/statu获取系统CPU利用率。
可选的,系统内存利用率通过内存解析器获取。以操作系统为Linux系统为例,通过解析/proc/meminfo获取系统内存利用率;以操作系统为Android系统为例,通过ActivityManager获取系统内存利用率。
在本实施例中,在目标应用的运行时间满足时间阈值时,根据预设频率获取当前系统的实时运行状态参数。该时间阈值可以根据需求设置。获取实时运行状态参数的预设频率,即实时检测的预设频率同样可以配置,作为一个示例,可以默认60s。
S203,在实时运行状态参数大于预设运行状态参数的情况下,确定高负载系统资源;其中,高负载系统资源与实时运行状态参数相对应,高负载系统资源包括:CPU系统资源、和\或系统内存资源。
需要说明的是,高负载系统资源与实时运行状态参数相对应,即CPU系统资源与系统CPU利用率相对应,系统内存资源与内存利用率相对应。
需要说明的是,系统CPU利用率对应的预设参数为预设CPU参数阈值,内存利用率对应的预设参数为预设内存参数阈值。在本实施例中,比较系统CPU利用率与对应的预设CPU参数阈值;在系统CPU利用率大于预设CPU参数阈值的情况下,确定处于高负载状态的高负载系统资源包括CPU系统资源,方式简单,容易实现,且预设内存参数阈值可以根据需求进行设置。
在本实施例中,比较系统内存利用率与对应的预设内存参数阈值;在系统内存利用率大于预设内存参数阈值的情况下,确定处于高负载状态的高负载系统资源包括系统内存资源,方式简单,容易实现,且预设内存参数阈值可以根据需求进行设置。
S204,确定高负载系统资源中用于运行目标应用的目标系统资源,其中,目标系统资源与高负载系统资源相对应,目标系统资源包括:CPU系统资源中用于运行目标应用的当前线程池的线程数量、和\或系统内存资源中用于运行目标应用的当前内存分配值。
需要说明的是,目标系统资源与高负载系统资源相对应,即用于运行目标应用的当前线程池的线程数量与CPU系统资源相对应,用于运行目标应用的当前内存分配值与系统内存资源相对应。
在本实施例中,确定高负载系统资源包括CPU系统资源时,确定CPU系统资源中用于运行目标应用的当前线程池的线程数量,以便对当前线程池的线程数量进行调度。
需要说明的是,系统CPU负载是对当前CPU工作量的度量,即为特定时间间隔内运行队列中的平均线程数。
也就是说,在确定系统CPU资源处于高负载状态时,进一步确认运行目标应用的CPU资源值,即运行目标应用的当前线程池的线程数量,以便对该CPU资源值进行调整,避免出现目标应用抢占CPU系统资源的情况,形成资源抢占,阻塞调用,从而影响目标应用的处理速度和整个系统的处理速度。
在本实施例中,确定高负载系统资源包括系统内存资源时,确定系统内存资源中用于运行目标应用的当前内存分配值,以便对当前内存分配值进行调度。
也就是说,在确定系统内存资源处于高负载状态时,进一步确认运行目标应用的内存资源值,即预分配给目标应用的空闲内存值,以便对该预分配给目标应用的空闲内存值进行调整,避免出现目标应用抢占分配给目标应用的内存系统资源的情况,形成资源抢占,阻塞调用,从而影响目标应用的处理速度和整个系统的处理速度。
S205,对目标系统资源进行调度。
可选的,将目标系统资源减半。
也就是说,对目标系统资源进行调度的具体策略可以为将目标系统资源减半,对目标系统资源减半之后,可以有效减少系统内存竞争,减少资源抢占,实现目标应用的处理性能提升效果好。
也就是说,在目标系统资源为CPU系统资源中用于运行所述目标应用的当前线程池的线程数量时,对当前线程池的线程数量进行调度即CPU调整策略,包括:将当前线程池的线程数量减半。
可选的,通过CPU分配器对当前线程池的线程数量进行调度。
也就是说,当判断CPU系统资源处于高负载状态,则将运行目标应用的当前线程池的线程数/2,减少CPU竞争,减少资源抢占,实现目标应用的处理性能提升效果好。
也就是说,在目标系统资源为系统内存资源中用于运行所述目标应用的当前内存分配值时,对当前内存分配值进行调度即内存调整策略,包括:将当前内存分配值减半。
也就是说,当判断内存系统资源处于高负载状态,则将预分配给目标应用的空闲内存/2,减少系统内存竞争,减少资源抢占,实现目标应用的处理性能提升效果好。
可选的,通过内存分配器对当前内存分配值进行调度。
需要说明的是,在判断CPU系统资源和内存系统资源均处于高负载状态时,CPU系统资源按照CPU调整策略对当前线程池的线程数量进行调度,内存系统资源按照内存调整策略对当前内存分配值进行调度,彼此无影响。
以目标应用为图像处理程序为例,在判断CPU系统资源和内存系统资源均为高负载的情况下,动态调整图像处理应用的核绑定数量,即减少线程数量,动态调整图像处理应用的内存分配,释放部分预分配内存,以减少资源抢占,实现性能提升。
作为一个示例,对于图像resize方法,在低负载下可以多线程并行处理,在高负载下进行动态调整线程数,即减少线程数,以实现性能提升。
本申请实施例的系统资源调度方法,在目标应用运行一定时间后,获取当前系统的多个实时运行状态参数;基于该多个实时运行状态参数与各自对应的预设参数,确定处于高负载状态的高负载系统资源;之后确定高负载系统资源中用于运行目标应用的目标系统资源,最后对目标系统资源进行调度。即针对处于高负载状态的系统资源中目标应用所占的部分按照预设调整策略进行调整,满足了设备在高负荷状态下的灵活资源调度,避免形成资源抢占,阻塞调用,提高目标应用以及整个系统的处理速度。
作为对上述各图所示方法的实现,本申请提供一种实施系统资源调度方法的虚拟装置的一个实施例,进一步参见图3,示出了本申请实施例提供的系统资源调度装置的结构示意图。如图3所示,该系统资源调度装置可以包括参数获取模块301、高负载资源确定模块302、目标资源确认模块303和资源调度模块304。
具体地,参数获取模块301,用于在目标应用运行的情况下,获取当前系统的实时运行状态参数。
高负载资源确定模块302,用于基于实时运行状态参数与对应的预设参数,确定处于高负载状态的高负载系统资源。
目标资源确认模块303,用于确定所述高负载系统资源中用于运行所述目标应用的目标系统资源。
资源调度模块304,用于并对目标系统资源进行调度。
在本申请的一些实施例中,参数获取模块301,具体用于:
在目标应用运行的情况下,获取所述目标应用的运行时间;
当所述运行时间满足时间阈值时,根据预设频率获取所述实时运行状态参数。
在本申请的一些实施例中,实时运行状态参数包括以下至少一项:系统中央处理器CPU利用率、系统内存利用率;高负载资源确定模块302,具体用于:
在所述实时运行状态参数大于预设运行状态参数的情况下,确定所述高负载系统资源,所述高负载系统资源与所述实时运行状态参数相对应,所述高负载系统资源包括:CPU系统资源、和\或系统内存资源。
在本申请的一些实施例中,目标系统资源与高负载系统资源相对应,目标系统资源包括:CPU系统资源中用于运行目标应用的当前线程池的线程数量、和\或系统内存资源中用于运行目标应用的当前内存分配值。
在本申请的一些实施例中,资源调度模块303,具体用于:
将目标系统资源减半。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本申请实施例的系统资源调度装置,在目标应用运行一定时间后,获取当前系统的多个实时运行状态参数;基于该多个实时运行状态参数与各自对应的预设参数,确定处于高负载状态的高负载系统资源;之后确定高负载系统资源中用于运行目标应用的目标系统资源,最后对目标系统资源进行调度。即针对处于高负载状态的系统资源中目标应用所占的部分按照预设调整策略进行调整,满足了设备在高负荷状态下的灵活资源调度,避免形成资源抢占,阻塞调用,提高目标应用以及整个系统的处理速度。
在上述实施例的基础上,参见图4,示出了本申请实施例提供的系统资源调度系统的结构框图。如图4所示,该系统资源调度系统可以包括基础算子底层401、算力调度层402、功能接口层403和平台封装层404。
具体的,基础算子底层401,包括多种算法。
算力调度层402,包括上述实施例的系统资源调度装置。
功能接口层403,用于提供对外输出的功能接口。
平台封装层404,用于提供多种对外接入方式。
在本申请的具体实施例中,基础算子底层401包括多种基础图像处理算子,为可以实现各种图像处理的基本方法,支持CPU通用架构和各种特定AI(ArtificialIntelligence,人工智能)芯片的硬件加速,特定AI芯片例如机器视觉专用芯片等硬件图像处理模块。其中,CPU通用架构包括但不限于arm架构、X86架构等。
该算力调度层402通过实时检测系统的实时运行状态,包括内存,CPU等系统计算资源的利用率,动态调节目标应用占用的系统资源数量,从而达到减少系统资源占用,提速提效的结果。
可选的,接口层403用于提供用于对外输出的C++接口。
在本申请的具体实施例中,平台封装层404通过不同的平台语言接口,对外提供接入方式。
本申请实施例的系统资源调度系统,在目标应用运行后,获取当前系统的多个实时运行状态参数;基于该多个实时运行状态参数与各自对应的预设参数,确定处于高负载状态的高负载系统资源;之后确定高负载系统资源中用于运行目标应用的目标系统资源,最后对目标系统资源进行调度。即针对处于高负载状态的系统资源中目标应用所占的部分按照预设调整策略进行调整,满足了设备在高负荷状态下的灵活资源调度,避免形成资源抢占,阻塞调用,提高目标应用以及整个系统的处理速度。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图5所示,是根据本申请实施例的系统资源调度的方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图5所示,该电子设备包括:一个或多个处理器501、存储器502,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图5中以一个处理器501为例。
存储器502即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由处理器执行的指令,以使所述处理器执行本申请所提供的系统资源调度的方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的系统资源调度的方法。
存储器502作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的系统资源调度的方法对应的程序指令/模块(例如,附图3所示的参数获取模块301、高负载资源确定模块302、目标资源确认模块303和资源调度模块304)。处理器501通过运行存储在存储器502中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的系统资源调度的方法。
存储器502可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据系统资源调度的电子设备的使用所创建的数据等。此外,存储器502可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器502可选包括相对于处理器501远程设置的存储器,这些远程存储器可以通过网络连接至系统资源调度的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
系统资源调度的方法的电子设备还可以包括:输入装置503和输出装置504。处理器501、存储器502、输入装置503和输出装置504可以通过总线或者其他方式连接,图5中以通过总线连接为例。
输入装置503可接收输入的数字或字符信息,以及产生与系统资源调度的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置504可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、互联网和区块链网络。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,针对处于高负载状态的系统资源中目标应用所占的部分按照预设调整策略进行调整,满足了设备在高负荷状态下的灵活资源调度,避免形成资源抢占,阻塞调用,提高目标应用以及整个系统的处理速度。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (14)

1.一种系统资源调度方法,包括:
在目标应用运行的情况下,获取当前系统的实时运行状态参数;
基于所述实时运行状态参数与对应的预设参数,确定处于高负载状态的高负载系统资源;
确定所述高负载系统资源中用于运行所述目标应用的目标系统资源;
对所述目标系统资源进行调度。
2.根据权利要求1所述的方法,其中,所述在目标应用运行的情况下,获取当前系统的实时运行状态参数,包括:
在目标应用运行的情况下,获取所述目标应用的运行时间;
当所述运行时间满足时间阈值时,根据预设频率获取所述实时运行状态参数。
3.根据权利要求1所述的方法,其中,所述实时运行状态参数包括以下至少一项:系统中央处理器CPU利用率、系统内存利用率;
所述基于所述实时运行状态参数与对应的预设参数,确定处于高负载状态的高负载系统资源,包括:
在所述实时运行状态参数大于预设运行状态参数的情况下,确定所述高负载系统资源,所述高负载系统资源与所述实时运行状态参数相对应,所述高负载系统资源包括:CPU系统资源、和\或系统内存资源。
4.根据权利要求3所述的方法,其中,所述目标系统资源与所述高负载系统资源相对应,所述目标系统资源包括:所述CPU系统资源中用于运行所述目标应用的当前线程池的线程数量、和\或所述系统内存资源中用于运行所述目标应用的当前内存分配值。
5.根据权利要求4所述的方法,其中,所述对所述目标系统资源进行调度,包括:
将所述目标系统资源减半。
6.一种系统资源调度装置,包括:
参数获取模块,用于在目标应用运行的情况下,获取当前系统的实时运行状态参数;
高负载资源确定模块,基于所述实时运行状态参数与对应的预设参数,确定处于高负载状态的高负载系统资源;
目标资源确认模块,用于确定所述高负载系统资源中用于运行所述目标应用的目标系统资源;
资源调度模块,用于对所述目标系统资源进行调度。
7.根据权利要求6所述的装置,其中,所述参数获取模块,具体用于:
在目标应用运行的情况下,获取所述目标应用的运行时间;
当所述运行时间满足时间阈值时,根据预设频率获取所述实时运行状态参数。
8.根据权利要求6所述的装置,其中,所述实时运行状态参数包括以下至少一项:系统中央处理器CPU利用率、系统内存利用率;所述高负载资源确定模块,具体用于:
在所述实时运行状态参数大于预设运行状态参数的情况下,确定所述高负载系统资源,所述高负载系统资源与所述实时运行状态参数相对应,所述高负载系统资源包括:CPU系统资源、和\或系统内存资源。
9.根据权利要求8所述的装置,其中,所述目标系统资源与所述高负载系统资源相对应,所述目标系统资源包括:所述CPU系统资源中用于运行所述目标应用的当前线程池的线程数量、和\或所述系统内存资源中用于运行所述目标应用的当前内存分配值。
10.根据权利要求9所述的装置,其中,所述资源调度模块,具体用于:
将所述目标系统资源减半。
11.一种系统资源调度系统,包括:
基础算子底层,包括多种算法;
算力调度层,包括权利要求6至10任一所述的系统资源调度装置;
功能接口层,用于提供对外输出的功能接口;
平台封装层,用于提供多种对外接入方式。
12.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
13.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-5中任一项所述的方法。
14.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-5中任一项所述方法的步骤。
CN202210745484.7A 2022-06-28 2022-06-28 系统资源调度方法、装置、电子设备及存储介质 Pending CN115080209A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210745484.7A CN115080209A (zh) 2022-06-28 2022-06-28 系统资源调度方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210745484.7A CN115080209A (zh) 2022-06-28 2022-06-28 系统资源调度方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN115080209A true CN115080209A (zh) 2022-09-20

Family

ID=83256470

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210745484.7A Pending CN115080209A (zh) 2022-06-28 2022-06-28 系统资源调度方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN115080209A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116627433A (zh) * 2023-07-18 2023-08-22 鹏城实验室 Ai处理器实时的参数预测方法、系统、设备及介质
CN117170879A (zh) * 2023-11-01 2023-12-05 之江实验室 面向智能芯片的设备管理装置和方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116627433A (zh) * 2023-07-18 2023-08-22 鹏城实验室 Ai处理器实时的参数预测方法、系统、设备及介质
CN116627433B (zh) * 2023-07-18 2024-01-09 鹏城实验室 Ai处理器实时的参数预测方法、系统、设备及介质
CN117170879A (zh) * 2023-11-01 2023-12-05 之江实验室 面向智能芯片的设备管理装置和方法
CN117170879B (zh) * 2023-11-01 2024-03-12 之江实验室 面向智能芯片的设备管理装置和方法

Similar Documents

Publication Publication Date Title
JP7214786B2 (ja) 深層学習推論エンジンのスケジューリング方法、装置、機器及び媒体
CN115080209A (zh) 系统资源调度方法、装置、电子设备及存储介质
US9946563B2 (en) Batch scheduler management of virtual machines
CN111459645B (zh) 一种任务调度方法、装置和电子设备
KR20080041047A (ko) 멀티 코어 프로세서 시스템에서 로드 밸런싱을 위한 장치및 방법
CN112508768B (zh) 单算子多模型流水线推理方法、系统、电子设备及介质
CN114356547B (zh) 基于处理器虚拟化环境的低优阻塞方法及装置
US20100211680A1 (en) Apparatus and method to allocate limited resources
CN113986497B (zh) 基于多租户技术的队列调度方法、装置及系统
CN108415765B (zh) 任务调度方法、装置及智能终端
CN112527509B (zh) 一种资源分配方法、装置、电子设备及存储介质
CN115951974B (zh) Gpu虚拟机的管理方法、系统、设备和介质
CN110673958B (zh) 调频方法、调频装置、存储介质与电子设备
CN115421931B (zh) 业务线程控制方法、装置、电子设备及可读存储介质
RU2450330C2 (ru) Аппаратно-реализуемый способ выполнения программ
CN113051051B (zh) 视频设备的调度方法、装置、设备及存储介质
CN112698934B (zh) 资源调度方法和装置、pmd调度装置、电子设备、存储介质
CN114327918A (zh) 调整资源量的方法、装置、电子设备和存储介质
TWI557553B (zh) 電子裝置及其節能方法
CN116893893B (zh) 一种虚拟机调度方法、装置、电子设备及存储介质
CN118034930A (zh) 一种api接口管理方法、装置、服务器和存储介质
CN117950867A (zh) 时间片调度方法、装置
CN117112250A (zh) 数据处理方法、装置、计算机设备及计算机可读存储介质
CN117472570A (zh) 用于调度加速器资源的方法、装置、电子设备和介质
CN114201708A (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