CN110825528B - 资源管理方法、装置及设备 - Google Patents

资源管理方法、装置及设备 Download PDF

Info

Publication number
CN110825528B
CN110825528B CN201911094449.8A CN201911094449A CN110825528B CN 110825528 B CN110825528 B CN 110825528B CN 201911094449 A CN201911094449 A CN 201911094449A CN 110825528 B CN110825528 B CN 110825528B
Authority
CN
China
Prior art keywords
core
processes
physical
matching
binding
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
CN201911094449.8A
Other languages
English (en)
Other versions
CN110825528A (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.)
Juhaokan Technology Co Ltd
Original Assignee
Juhaokan 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 Juhaokan Technology Co Ltd filed Critical Juhaokan Technology Co Ltd
Priority to CN201911094449.8A priority Critical patent/CN110825528B/zh
Publication of CN110825528A publication Critical patent/CN110825528A/zh
Application granted granted Critical
Publication of CN110825528B publication Critical patent/CN110825528B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)

Abstract

本发明实施例提供一种资源管理方法、装置及设备,该方法包括:确定多个进程中每个进程对应的第一时段,进程在对应的第一时段内的CPU占用率大于或等于第一阈值;根据每个进程对应的第一时段,将每个进程与CPU芯片中对应的逻辑核绑定;其中,CPU芯片包括多个物理核,每个物理核包括至少两个逻辑核,与同一物理核中的不同逻辑核绑定的不同进程对应的第一时段之间不存在重叠。提高了CPU芯片的资源利用率。

Description

资源管理方法、装置及设备
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种资源管理方法、装置及设备。
背景技术
电子设备的中央处理器(central processing unit,CPU)芯片中通常包括多个物理核,每个物理核可以包括两个逻辑核。电子设备中还包括多个进程,进程可以在逻辑核中运行。
在进程运行的过程中,为了避免进程在不同的逻辑核中进行切换,可以将进程与逻辑核进行绑定,以使进程在绑定的逻辑核中运行。目前,通常将进程与逻辑核进行随机绑定,这样,可能导致电子设备中的进程无法合理的使用CPU芯片的资源,导致CPU芯片的资源利用率较低。
发明内容
本发明实施例提供一种资源管理方法、装置及设备,提高了CPU芯片的资源利用率。
第一方面,本发明实施例提供一种资源管理方法,包括:
确定多个进程中每个进程对应的第一时段,所述进程在对应的所述第一时段内的CPU占用率大于或等于第一阈值;
根据每个进程对应的第一时段,将每个进程与CPU芯片中对应的逻辑核绑定;其中,所述CPU芯片包括多个物理核,每个物理核包括至少两个逻辑核,与同一物理核中的不同逻辑核绑定的不同进程对应的第一时段之间不存在重叠。
在一种可能的实施方式中,所述至少两个逻辑核包括第一逻辑核和第二逻辑核,针对所述多个进程中的第一进程;根据每个进程对应的第一时段,将第一进程与CPU芯片中对应的逻辑核绑定,包括:
判断所述多个进程中是否存在所述第一进程对应的匹配进程,所述匹配进程对应的第一时段与所述第一进程对应的第一时段之间不存在重叠;
若是,将所述第一进程与所述第一逻辑核绑定,将所述匹配进程与所述第二逻辑核绑定;
若否,将所述第一进程与第二物理核中的逻辑核绑定,所述第二物理核不绑定除所述第一进程之外的其它进程。
在一种可能的实施方式中,判断所述多个进程中是否存在所述第一进程对应的匹配进程之前,还包括:
获取每个匹配进程对应的第一时段的时长;
按照对应的第一时段的时长从高到低的顺序,对多个进程进行排序,得到第一进程集合,所述第一进程集合中的进程未绑定逻辑核;
将所述第一进程集合中的第一个进程确定为所述第一进程。
在一种可能的实施方式中,判断所述多个进程中是否存在所述第一进程对应的匹配进程,包括:
判断所述第一进程集合中是否存在所述第一进程对应的匹配进程。
在一种可能的实施方式中,判断所述第一进程集合中是否存在所述第一进程对应的匹配进程,包括:
执行判断步骤,所述判断步骤包括:判断所述第一进程集合中的第i个进程是否为所述第一进程对应的匹配进程,初始时,所述i为2;
若是,则将所述第i个进程确定为所述第一进程对应的匹配进程;若否,则将所述i加1,并执行所述判断步骤,直至确定得到所述第一进程对应的匹配进程,或者所述i大于所述第一进程集合中包括的进程数量。
在一种可能的实施方式中,将所述第一进程与第一物理核中的第一逻辑核绑定,将所述匹配进程与所述第一物理核中的第二逻辑核绑定之后,还包括:
在所述第一进程集合中删除所述第一进程和所述匹配进程。
在一种可能的实施方式中,将所述第一进程与第二物理核中的逻辑核绑定之后,还包括:
在所述第一进程集合中删除所述第一进程。
第二方面,本发明实施例提供一种资源管理装置,包括第一确定模块和绑定模块,其中,
所述第一确定模块用于,确定多个进程中每个进程对应的第一时段,所述进程在对应的所述第一时段内的CPU占用率大于或等于第一阈值;
所述绑定模块用于,根据每个进程对应的第一时段,将每个进程与CPU芯片中对应的逻辑核绑定;其中,所述CPU芯片包括多个物理核,每个物理核包括至少两个逻辑核,与同一物理核中的不同逻辑核绑定的不同进程对应的第一时段之间不存在重叠。
在一种可能的实施方式中,所述至少两个逻辑核包括第一逻辑核和第二逻辑核,针对所述多个进程中的第一进程;所述绑定模块具体用于:
判断所述多个进程中是否存在所述第一进程对应的匹配进程,所述匹配进程对应的第一时段与所述第一进程对应的第一时段之间不存在重叠;
若是,将所述第一进程与第一物理核中的第一逻辑核绑定,将所述匹配进程与所述第一物理核中的第二逻辑核绑定;
若否,将所述第一进程与第二物理核中的逻辑核绑定,所述第二物理核不绑定除所述第一进程之外的其它进程。
在一种可能的实施方式中,所述装置还包括获取模块、排序模块和第二确定模块,其中,
所述获取模块用于,在所述绑定模块判断所述多个进程中是否存在所述第一进程对应的匹配进程之前,获取每个匹配进程对应的第一时段的时长;
所述排序模块用于,按照对应的第一时段的时长从高到低的顺序,对多个进程进行排序,得到第一进程集合,所述第一进程集合中的进程未绑定逻辑核;
所述第二确定模块用于,将所述第一进程集合中的第一个进程确定为所述第一进程。
在一种可能的实施方式中,所述绑定模块具体用于:
判断所述第一进程集合中是否存在所述第一进程对应的匹配进程。
在一种可能的实施方式中,所述绑定模块具体用于:
执行判断步骤,所述判断步骤包括:判断所述第一进程集合中的第i个进程是否为所述第一进程对应的匹配进程,初始时,所述i为2;
若是,则将所述第i个进程确定为所述第一进程对应的匹配进程;若否,则将所述i加1,并执行所述判断步骤,直至确定得到所述第一进程对应的匹配进程,或者所述i大于所述第一进程集合中包括的进程数量。
在一种可能的实施方式中,所述装置还包括删除模块,其中,
所述删除模块用于,在所述绑定模块将所述第一进程与第一物理核中的第一逻辑核绑定,将所述匹配进程与所述第一物理核中的第二逻辑核绑定之后,在所述第一进程集合中删除所述第一进程和所述匹配进程。
在一种可能的实施方式中,所述删除模块还用于,在所述绑定模块将所述第一进程与第二物理核中的逻辑核绑定之后,在所述第一进程集合中删除所述第一进程。
第三方面,本发明实施例提供一种资源管理装置,包括至少一个处理器和至少一个存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器中的指令,以实现第一方面任一项所述的方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现第一方面任一项所述的方法。
本发明实施例提供的资源管理方法、装置及设备,在将进程与逻辑核进行绑定时,可以获取电子设备中的进程对应的第一时段,并根据各进程对应的第一时段,将电子设备中的进程与对应的逻辑核进行绑定,以使得与同一物理核中的不同逻辑核绑定的不同进程对应的第一时段之间不存在重叠。这样,可以使得对应的第一时段不重叠的不同进程可以与相同的物理核中的不同逻辑核绑定,使得CPU芯片的资源利用率较高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的进程控制方法的应用场景示意图;
图2为本发明实施例提供的一种资源管理方法;
图3A为本发明实施例提供的一种绑定关系的示意图;
图3B为本发明实施例提供的另一种绑定关系的示意图;
图3C为本发明实施例提供的另一种绑定关系的示意图;
图4为本发明实施例提供的另一种资源管理方法的流程示意图;
图5为本发明实施例提供的第一时段的示意图;
图6为本发明实施例提供的在一种绑定关系的示意图;
图7为本发明实施例提供的一种资源管理装置的结构示意图;
图8为本发明实施例提供的另一种资源管理装置的结构示意图;
图9为本发明实施例提供的资源管理装置的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的进程控制方法的应用场景示意图。请参见图1,进程控制方法可以应用于电子设备,电子设备中包括n个物理核,n为大于1的整数。每个物理核中包括至少两个逻辑核,需要说明的是,本发明实施例以物理核中包括两个逻辑核为例进行说明,当然,一个物理核中包括的逻辑核的个数还可以为其它,例如,一个物理核中可以包括3个、4个逻辑核等。电子设备中还可以运行有m个进程,m为大于1的整数。可以将逻辑核与进程进行绑定,以使进程在其绑定的逻辑核上运行。
请参见图1,可以将不同进程与相同的物理核中的不同逻辑核绑定,即,不同的进程共享相同的物理核,例如,可以将进程1与物理核1中的逻辑核11和物理核2中的逻辑核21绑定,将进程2与物理核1中的逻辑核12和物理核2中的逻辑核22绑定。在该种绑定方式中,进程1和进程2的运行时间可能不同,例如,进程1可能在时段1运行,进程1可能在时段2进程,这样,若在一个时段中,进程1和进程2中只有一个进程运行,则该运行的进程可以独占物理核1和物理核2中的所有资源(例如,计算资源、内存资源等),使得运行的进程可使用的资源量较多,使得CPU芯片的资源利用率较高。
请参见图1,还可以将一个进程与一个物理核中的逻辑核绑定,即,一个进程独占一个物理核,例如,可以将进程m与物理核n中的逻辑核n1和逻辑核n2绑定。在该种绑定方式中,一个进程可以独占一个物理核,使得进程可以独占该物理核中的所有资源,使得该进程与其它进程的隔离程度较高,避免该进程与其它进程之间产生资源冲突,使得进程运行的稳定性较高。
在本申请中,在将进程与逻辑核进行绑定时,可以获取电子设备中的进程对应的第一时段(进程在对应的第一时段内的CPU占用率大于或等于第一阈值),并根据各进程对应的第一时段,将电子设备中的进程与对应的逻辑核进行绑定。其中,与同一物理核中的不同逻辑核绑定的不同进程对应的第一时段之间不存在重叠。这样,可以使得对应的第一时段不重叠的不同进程可以与相同的物理核中的不同逻辑核绑定,使得CPU芯片的资源利用率较高。
下面,通过具体实施例对本申请所示的技术方案进行详细说明。需要说明的是,下面几个具体实施例可以相互结合,对于相同或相似的内容,在不同的实施例中不再进行重复说明。
图2为本发明实施例提供的一种资源管理方法,请参见图2,该方法可以包括:
S201、确定多个进程中每个进程对应的第一时段,进程在对应的第一时段内的CPU占用率大于或等于第一阈值。
本发明实施例的执行主体可以为电子设备,也可以为设置在电子设备中的资源管理装置。例如,电子设备可以为手机、电脑等设备。资源管理装置可以通过软件实现,也可以通过软件和硬件的结合实现。
多个进程为运行在电子设备中的进程,电子设备中包括CPU芯片,CPU芯片包括多个物理核,物理核中包括至少两个逻辑核,该多个进程均在电子设备中的逻辑核上运行。
可选的,可以根据多个进程中每个进程在历史时段内的CPU占用率,确定多个进程中每个进程对应的第一时段。历史时段可以为当前时刻之前的、预设时长的时段,例如,历史时段可以为当前时刻之前的一天、一周、一个月等。在实际应用过程中,可以根据实际需要设置该历史时段,本发明实施例对此不作具体限定。
可选的,第一时段的时长大于预设时长。例如,预设时长可以为5分钟、10分钟、1个小时等。可以根据实际需要设置该预设时长。
例如,针对该多个进程中的任意一个进程,可以统计该进程在历史时段内的每一天中的CPU占用率,若统计得到进程在每一天中的8点-10点、以及20点-22点之间的CPU占用率均大于第一阈值,则可以确定该进程对应的第一时段为每天中的8点-10点、以及20点-22点。
S202、根据每个进程对应的第一时段,将每个进程与CPU芯片中对应的逻辑核绑定。
其中,与同一物理核中的不同逻辑核绑定的不同进程对应的第一时段之间不存在重叠。
可选的,针对多个进程中的任意一个第一进程,可以通过如下方式将第一进程与CPU芯片中对应的逻辑核绑定:
判断多个进程中是否存在第一进程对应的匹配进程,匹配进程对应的第一时段与第一进程对应的第一时段之间不存在重叠;若是,将第一进程与第一物理核中的第一逻辑核绑定,将匹配进程与第一物理核中的第二逻辑核绑定;若否,将第一进程与第二物理核中的逻辑核绑定,第二物理核不绑定除第一进程之外的其它进程。
第一物理核的个数可以为1个,也可以为多个,例如,第一物理核的个数可以为2个、3个等。可以根据实际需要设置第一物理核的个数。
下面,结合图3A-图3C,对第一物理核的个数不同时的逻辑核与进程的绑定关系进行说明。
图3A为本发明实施例提供的一种绑定关系的示意图。请参见图3A,第一物理核的个数为1个,记为物理核1,第一进程为进程1,第一进程对应的匹配进程为进程2,进程1与物理核1中的逻辑核11绑定,进程2与物理核1中的逻辑核12绑定。
图3B为本发明实施例提供的另一种绑定关系的示意图。请参见图3B,第一物理核的个数为2个,分别记为物理核1和物理核2,第一进程为进程1,第一进程对应的匹配进程为进程2,进程1与物理核1中的逻辑核11、以及物理核2中的逻辑核21绑定,进程2与物理核1中的逻辑核12、以及物理核2中的逻辑核22绑定。
图3C为本发明实施例提供的另一种绑定关系的示意图。请参见图3C,第一物理核的个数为3个,分别记为物理核1、物理核2和物理核3,第一进程为进程1,第一进程对应的匹配进程为进程2,进程1与物理核1中的逻辑核11、物理核2中的逻辑核21、以及物理核3中的逻辑核31绑定,进程2与物理核1中的逻辑核12、物理核2中的逻辑核22、以及物理核3中的逻辑核32绑定。
在判断多个进程中存在第一进程对应的匹配进程时,若第一进程对应的匹配进程的个数为1,则将该匹配进程与第一物理核中的第二逻辑核绑定,若第一进程对应的匹配进程的个数大于1,则可以在该多个匹配进程中选择一个匹配进程,并将该一个匹配进程与第一物理核中的第二逻辑核绑定。例如,可以在多个匹配进程中随机选择一个匹配进程,或者,也可以选择多个匹配进程中、对应的第一时段的时长最长的一个匹配进程。
在判断多个进程中不存在第一进程对应的匹配进程时,将第一进程与第二物理核中的逻辑核绑定,第二物理核不绑定除第一进程之外的其它进程,以使第二物理核仅与第一进程绑定,使得进程运行的稳定性较高。第二物理核的个数可以为1个,也可以为多个。
需要说明的是,在本发明实施例中,将进程与逻辑核绑定可以是指,生成配置文件,配置文件中包括了进程与逻辑核之间的对应关系,该配置文件可以为进程对应的配置文件,也可以为逻辑核对应的配置文件。相应的,在进程启动运行时,进程可以根据配置文件确定其对应(绑定)的逻辑核,并在对应的逻辑核中运行。
本发明实施例提供的资源管理方法,在将进程与逻辑核进行绑定时,可以获取电子设备中的进程对应的第一时段,并根据各进程对应的第一时段,将电子设备中的进程与对应的逻辑核进行绑定,以使得与同一物理核中的不同逻辑核绑定的不同进程对应的第一时段之间不存在重叠。这样,可以使得对应的第一时段不重叠的不同进程可以与相同的物理核中的不同逻辑核绑定,使得CPU芯片的资源利用率较高。
在上述任意一个实施例的基础上,下面,结合图4,对资源管理方法进行进一步详细说明。
图4为本发明实施例提供的另一种资源管理方法的流程示意图。请参见图4,该方法可以包括:
S401、确定多个进程中每个进程对应的第一时段,进程在对应的第一时段内的CPU占用率大于或等于第一阈值。
需要说明的是,S401的执行过程可以参见S201的执行过程,此处不再进行赘述。
S402、按照对应的第一时段的时长从高到低的顺序,对多个进程进行排序,得到第一进程集合。
可以先获取每个进程对应的第一时段的时长,再按照对应的第一时段的时长从高到低的顺序,对多个进程进行排序,得到第一进程集合。
S403、将第一进程集合中的第一个进程确定为第一进程。
在第一进程集合中,第一进程对应的第一时段的时长最长。
S404、判断第一进程集合中是否存在第一进程对应的匹配进程。
若是,则执行S405。
若否,则执行S407。
其中,匹配进程对应的第一时段与第一进程对应的第一时段之间不存在重叠。
可选的,可以按照第一进程集合中各进程的排列顺序,依次判断第一进程集合中的进程是否为第一进程对应的匹配进程,直至在第一进程集合中查找到第一进程对应的匹配进程。
例如,先判断第一进程集合中的第二个进程是否为第一进程对应的匹配进程,若是,则将第二个进程确定为第一进程对应的匹配进程,若否,则判断第一进程集合中的第三个进程是否为第一进程对应的匹配进程,依次类推,直至在第一进程集合中查找到第一进程对应的匹配进程,或者,对第一进程集合中的进程查找完毕,且未查找到第一进程对应的匹配进程。
在上述过程中,按照第一进程集合中各进程的排列顺序,在第一进程集合中查找第一进程对应的匹配进程,可以使得查找到的匹配进程对应的第一时段的时长较长,这样,可以使得将第一进程和对应的匹配进程与第一物理核中的不同逻辑核绑定后,第一物理核中的资源的利用率较高。
S405、将第一进程与第一物理核中的第一逻辑核绑定,将匹配进程与第一物理核中的第二逻辑核绑定。
第一逻辑核可以为第一物理核中的任意一个逻辑核,第二逻辑核为第一物理核中除第一逻辑核之外的另一个逻辑核。
S406、在第一进程集合中删除第一进程和匹配进程。
由于已经将第一进程和对应的匹配进程与第一物理核绑定,因此,可以在第一进程集合中删除第一进程和匹配进程。这样,可以使得第一进程集合中的进程均未与逻辑核进行绑定。
在S406之后,执行S409。
S407、将第一进程与第二物理核中的逻辑核绑定,第二物理核不绑定除第一进程之外的其它进程。
可以将第一进程与第二物理核中的所有逻辑核绑定。
S408、在第一进程集合中删除第一进程。
由于已经将第一进程与第一物理核绑定,因此,可以在第一进程集合中删除第一进程。这样,可以使得第一进程集合中的进程均未与逻辑核进行绑定。
在S408之后,执行S409。
S409、判断第一进程集合是否为空。
若是,则执行S410。
若否,则执行S403。
S410、流程结束。
在图4所示的实施例中,在将进程与逻辑核进行绑定时,可以获取电子设备中的进程对应的第一时段,并按照对应的第一时段的时长从高到低的顺序,对多个进程进行排序,得到第一进程集合。先将第一进程集合中的第一个进程确定为第一进程,在第一进程集合中存在第一进程对应的匹配进程时,可以将第一进程和对应的匹配进程与相同的物理核中不同的逻辑核绑定,使得CPU芯片的资源利用率较高;在第一进程集合中不存在第一进程对应的匹配进程时,将第一进程与第二物理核中的逻辑核绑定,第二物理核不绑定除第一进程之外的其它进程,以使第二物理核仅与第一进程绑定,使得进程运行的稳定性较高。
在上述任意一个实施例的基础上,下面,结合图5-图6,通过具体示例,对上述资源管理方法进行说明。
示例性的,假设电子设备中设置有5个物理核,分别记为物理核1、物理核2、……、物理核5,每个物理核中设置有两个逻辑核。假设电子设备中设置有5个进程,分别记为进程1、进程2、……、进程5,该5个进程对应的第一时段如图5所示。
图5为本发明实施例提供的第一时段的示意图。请参见图5,进程1至进程5对应的第一时段分别如表1所示:
表1
进程 第一时段 第一时段的时长
进程1 0点-4点,12点-20点 12小时
进程2 2点-8点,18点-22点 10小时
进程3 6点-12点,20点-24点 10小时
进程4 4点-8点,16点-20点 8小时
进程5 10点-12点,20点-24点 6小时
可以根据第一时段的时长对电子设备中的多个进程进行排序,排序的结果如表1所示,确定第一进程集合中包括上述5个进程。
在对进程和逻辑核进行绑定时,先确定进程1为第一进程,在第一进程集合中判断是否存在进程1对应的匹配进程,具体的,可以先判断进程2是否为进程1的匹配进程,判断结果为否,则判断进程3是否为进程1的匹配进程,由于进程3对应的第一时段和进程1对应的第一时段不存在重叠,因此,确定进程3为进程1对应的匹配进程,则可以将进程1和进程3分别与物理核1和物理核2中的不同逻辑核绑定。具体的,请参见图6。
图6为本发明实施例提供的在一种绑定关系的示意图。请参见图6,可以将进程1与物理核1中的逻辑和11、以及物理核2中的逻辑核21绑定,可以将进程3与物理核1中的逻辑和12、以及物理核2中的逻辑核22绑定。
在将进程1和进程3与物理核1和物理核2中的逻辑核绑定之后,在第一进程集合中删除进程1和进程3。
在第一进程集合中删除进程1和进程3之后,进程2为第一进程集合中的第一个进程,则将进程2确定为第一进程,并在第一进程集合中判断是否存在进程2对应的匹配进程,具体的,可以先判断进程4是否为进程2的匹配进程,判断结果为否,再判断进程5是否为进程2的匹配进程,判断结果为否,则确定第一进程集合中不存在进程2对应的匹配进程,则将进程2以独占的方式与物理核3中的所有逻辑核绑定。
请参见图6,将进程2与物理核3中的逻辑核31和逻辑核32绑定。在将进程2与物理核3中的逻辑核绑定之后,在第一进程集合中删除进程2。
在第一进程集合中删除进程2之后,进程4为第一进程集合中的第一个进程,则将进程4确定为第一进程,并在第一进程集合中判断是否存在进程4对应的匹配进程,具体的,可以先判断进程5是否为进程4对应的匹配进程,由于进程5对应的第一时段与进程4对应的第一时段之间不存在重叠,因此,确定进程5为进程4对应的匹配进程,则可以将进程4和进程5分别与物理核4和物理核5中的不同逻辑核绑定。具体的,请参见图6。
请参见图6,可以将进程4与物理核4中的逻辑和41、以及物理核5中的逻辑核51绑定,可以将进程5与物理核4中的逻辑和42、以及物理核5中的逻辑核52绑定。
在将进程4和进程5与物理核4和物理核5中的逻辑核绑定之后,可以在第一进程集合中删除进程4和进程5。在第一进程集合中删除进程4和进程5之后,第一进程集合为空,则进程与逻辑核的绑定结束。
图7为本发明实施例提供的一种资源管理装置的结构示意图。请参见图7,该资源管理装置10可以包括第一确定模块11和绑定模块12,其中,
所述第一确定模块11用于,确定多个进程中每个进程对应的第一时段,所述进程在对应的所述第一时段内的CPU占用率大于或等于第一阈值;
所述绑定模块12用于,根据每个进程对应的第一时段,将每个进程与CPU芯片中对应的逻辑核绑定;其中,所述CPU芯片包括多个物理核,每个物理核包括至少两个逻辑核,与同一物理核中的不同逻辑核绑定的不同进程对应的第一时段之间不存在重叠。
本发明实施例提供的资源管理装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
在一种可能的实施方式中,所述物理核包括第一逻辑核和第二逻辑核,针对所述多个进程中的第一进程;所述绑定模块12具体用于:
判断所述多个进程中是否存在所述第一进程对应的匹配进程,所述匹配进程对应的第一时段与所述第一进程对应的第一时段之间不存在重叠;
若是,将所述第一进程与第一物理核中的第一逻辑核绑定,将所述匹配进程与所述第一物理核中的第二逻辑核绑定;
若否,将所述第一进程与第二物理核中的逻辑核绑定,所述第二物理核不绑定除所述第一进程之外的其它进程。
图8为本发明实施例提供的另一种资源管理装置的结构示意图。在图7所示实施例的基础上,请参见图8,资源管理装置10还包括获取模块13、排序模块14和第二确定模块15,其中,
所述获取模块13用于,在所述绑定模块判断所述多个进程中是否存在所述第一进程对应的匹配进程之前,获取每个匹配进程对应的第一时段的时长;
所述排序模块14用于,按照对应的第一时段的时长从高到低的顺序,对多个进程进行排序,得到第一进程集合,所述第一进程集合中的进程未绑定逻辑核;
所述第二确定模块15用于,将所述第一进程集合中的第一个进程确定为所述第一进程。
在一种可能的实施方式中,所述绑定模块12具体用于:
判断所述第一进程集合中是否存在所述第一进程对应的匹配进程。
在一种可能的实施方式中,所述绑定模块12具体用于:
执行判断步骤,所述判断步骤包括:判断所述第一进程集合中的第i个进程是否为所述第一进程对应的匹配进程,初始时,所述i为2;
若是,则将所述第i个进程确定为所述第一进程对应的匹配进程;若否,则将所述i加1,并执行所述判断步骤,直至确定得到所述第一进程对应的匹配进程,或者所述i大于所述第一进程集合中包括的进程数量。
在一种可能的实施方式中,资源管理装置10还包括删除模块16,其中,
所述删除模块16用于,在所述绑定模块12将所述第一进程与第一物理核中的第一逻辑核绑定,将所述匹配进程与所述第一物理核中的第二逻辑核绑定之后,在所述第一进程集合中删除所述第一进程和所述匹配进程。
在一种可能的实施方式中,所述删除模块12还用于,在所述绑定模块将所述第一进程与第二物理核中的逻辑核绑定之后,在所述第一进程集合中删除所述第一进程。
本发明实施例提供的资源管理装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
图9为本发明实施例提供的资源管理装置的硬件结构示意图。请参见图9,资源管理装置20可以包括至少一个处理器21和至少一个存储器22,处理器21和存储器22可以通过总线连接,所述存储器22中存储有指令,所述处理器21用于执行所述存储器22中的指令,以实现上述资源管理方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述资源管理方法。
实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储器中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储器(存储介质)包括:只读存储器(read-only memory,ROM)、RAM、快闪存储器、硬盘、固态硬盘、磁带(magnetic tape)、软盘(floppy disk)、光盘(optical disc)及其任意组合。
本申请实施例是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理单元以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
在本申请中,术语“包括”及其变形可以指非限制性的包括;术语“或”及其变形可以指“和/或”。本本申请中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本申请中,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

Claims (9)

1.一种资源管理方法,其特征在于,包括:
确定多个进程中每个进程对应的第一时段,所述进程在对应的所述第一时段内的CPU占用率大于或等于第一阈值;
其中,CPU芯片包括多个物理核,每个物理核运行至少两个逻辑核,与同一物理核中的不同逻辑核绑定的不同进程对应的第一时段之间不存在重叠;
所述至少两个逻辑核包括第一逻辑核和第二逻辑核,针对所述多个进程中的第一进程;
判断所述多个进程中是否存在所述第一进程对应的匹配进程,所述匹配进程对应的第一时段与所述第一进程对应的第一时段之间不存在重叠;
若是,将所述第一进程与所述第一逻辑核绑定,将所述匹配进程与所述第二逻辑核绑定;
若否,将所述第一进程与第二物理核中的逻辑核绑定,所述第二物理核不绑定除所述第一进程之外的其它进程。
2.根据权利要求1所述的方法,其特征在于,判断所述多个进程中是否存在所述第一进程对应的匹配进程之前,还包括:
获取每个匹配进程对应的第一时段的时长;
按照对应的第一时段的时长从高到低的顺序,对多个进程进行排序,得到第一进程集合,所述第一进程集合中的进程未绑定逻辑核;
将所述第一进程集合中的第一个进程确定为所述第一进程。
3.根据权利要求2所述的方法,其特征在于,判断所述多个进程中是否存在所述第一进程对应的匹配进程,包括:
判断所述第一进程集合中是否存在所述第一进程对应的匹配进程。
4.根据权利要求3所述的方法,其特征在于,判断所述第一进程集合中是否存在所述第一进程对应的匹配进程,包括:
执行判断步骤,所述判断步骤包括:判断所述第一进程集合中的第i个进程是否为所述第一进程对应的匹配进程,初始时,所述i为2;
若是,则将所述第i个进程确定为所述第一进程对应的匹配进程;若否,则将所述i加1,并执行所述判断步骤,直至确定得到所述第一进程对应的匹配进程,或者所述i大于所述第一进程集合中包括的进程数量。
5.根据权利要求2-4任一项所述的方法,其特征在于,将所述第一进程与第一物理核中的第一逻辑核绑定,将所述匹配进程与所述第一物理核中的第二逻辑核绑定之后,还包括:
在所述第一进程集合中删除所述第一进程和所述匹配进程。
6.根据权利要求2-4任一项所述的方法,其特征在于,将所述第一进程与第二物理核中的逻辑核绑定之后,还包括:
在所述第一进程集合中删除所述第一进程。
7.一种资源管理装置,其特征在于,包括第一确定模块和绑定模块,其中,
所述第一确定模块用于,确定多个进程中每个进程对应的第一时段,所述进程在对应的所述第一时段内的CPU占用率大于或等于第一阈值;
所述绑定模块用于,根据每个进程对应的第一时段,将每个进程与CPU芯片中对应的逻辑核绑定;其中,所述CPU芯片包括多个物理核,每个物理核包括至少两个逻辑核,与同一物理核中的不同逻辑核绑定的不同进程对应的第一时段之间不存在重叠;
所述物理核包括第一逻辑核和第二逻辑核,针对所述多个进程中的第一进程;所述绑定模块具体用于,判断所述多个进程中是否存在所述第一进程对应的匹配进程,所述匹配进程对应的第一时段与所述第一进程对应的第一时段之间不存在重叠;若是,将所述第一进程与第一物理核中的第一逻辑核绑定,将所述匹配进程与所述第一物理核中的第二逻辑核绑定;若否,将所述第一进程与第二物理核中的逻辑核绑定,所述第二物理核不绑定除所述第一进程之外的其它进程。
8.一种资源管理装置,其特征在于,包括至少一个处理器和至少一个存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器中的指令,以实现权利要求1-6任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现权利要求1-6任一项所述的方法。
CN201911094449.8A 2019-11-11 2019-11-11 资源管理方法、装置及设备 Active CN110825528B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911094449.8A CN110825528B (zh) 2019-11-11 2019-11-11 资源管理方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911094449.8A CN110825528B (zh) 2019-11-11 2019-11-11 资源管理方法、装置及设备

Publications (2)

Publication Number Publication Date
CN110825528A CN110825528A (zh) 2020-02-21
CN110825528B true CN110825528B (zh) 2022-02-01

Family

ID=69553892

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911094449.8A Active CN110825528B (zh) 2019-11-11 2019-11-11 资源管理方法、装置及设备

Country Status (1)

Country Link
CN (1) CN110825528B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111400002B (zh) * 2020-03-09 2022-09-27 聚好看科技股份有限公司 应用进程与处理器核绑定方法及终端

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104503831A (zh) * 2014-12-22 2015-04-08 北京奇虎科技有限公司 设备优化方法及装置
CN107341066A (zh) * 2016-11-30 2017-11-10 杭州迪普科技股份有限公司 一种线程空转频率基准值的获取方法及装置
CN107748706A (zh) * 2017-10-27 2018-03-02 郑州云海信息技术有限公司 一种绑定方法及装置
WO2018040750A1 (zh) * 2016-08-31 2018-03-08 华为技术有限公司 一种配置方法、装置和数据处理服务器
CN107832151A (zh) * 2017-11-10 2018-03-23 东软集团股份有限公司 一种cpu资源分配方法、装置及设备
CN110069344A (zh) * 2019-04-16 2019-07-30 北京百度网讯科技有限公司 一种任务执行方法、装置和智能设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104503831A (zh) * 2014-12-22 2015-04-08 北京奇虎科技有限公司 设备优化方法及装置
WO2018040750A1 (zh) * 2016-08-31 2018-03-08 华为技术有限公司 一种配置方法、装置和数据处理服务器
CN107341066A (zh) * 2016-11-30 2017-11-10 杭州迪普科技股份有限公司 一种线程空转频率基准值的获取方法及装置
CN107748706A (zh) * 2017-10-27 2018-03-02 郑州云海信息技术有限公司 一种绑定方法及装置
CN107832151A (zh) * 2017-11-10 2018-03-23 东软集团股份有限公司 一种cpu资源分配方法、装置及设备
CN110069344A (zh) * 2019-04-16 2019-07-30 北京百度网讯科技有限公司 一种任务执行方法、装置和智能设备

Also Published As

Publication number Publication date
CN110825528A (zh) 2020-02-21

Similar Documents

Publication Publication Date Title
CN108959292B (zh) 一种数据上传方法、***和计算机可读存储介质
CN110837410A (zh) 任务调度方法、装置、电子设备及计算机可读存储介质
CN109669775B (zh) 分布式任务调度方法、***及存储介质
CN111143331B (zh) 数据迁移方法、装置及计算机存储介质
CN106874100B (zh) 计算资源分配方法及装置
CN111045933A (zh) 一种回归策略更新方法、装置、存储介质及终端设备
CN109189572B (zh) 一种资源预估方法及***、电子设备和存储介质
CN105183585B (zh) 一种数据备份方法及装置
CN111932257A (zh) 一种区块链并行化处理方法及装置
CN112748993A (zh) 任务执行方法、装置、存储介质及电子设备
CN106855862B (zh) 一种快速比较方法及装置
CN115033352A (zh) 多核处理器任务调度方法、装置及设备、存储介质
CN108304272B (zh) 一种数据io请求的处理方法及装置
CN110825528B (zh) 资源管理方法、装置及设备
CN113051054A (zh) 调度人工智能平台资源的方法、设备和计算机可读存储介质
CN116820709B (zh) 任务链的运行方法、装置、终端及计算机存储介质
CN116483546A (zh) 分布式训练任务调度方法、装置、设备及存储介质
CN109086132A (zh) 一种人脸识别任务均衡调用方法、装置及终端设备
CN112685158B (zh) 一种任务调度方法、装置、电子设备及存储介质
CN114721801A (zh) 批量任务执行时间的动态调度方法及装置
CN110516922B (zh) 分配数据处理对象的方法及装置
CN104572036B (zh) 事件的处理方法及装置
CN116342087A (zh) 一种事件处理的方法、装置及电子设备
CN112882940A (zh) 用例任务调度方法、***、装置、设备及存储介质
CN111625358A (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