CN113360273A - 处理器资源动态分配方法、装置、设备及存储介质 - Google Patents

处理器资源动态分配方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN113360273A
CN113360273A CN202010144861.2A CN202010144861A CN113360273A CN 113360273 A CN113360273 A CN 113360273A CN 202010144861 A CN202010144861 A CN 202010144861A CN 113360273 A CN113360273 A CN 113360273A
Authority
CN
China
Prior art keywords
processor
model
state information
processors
image recognition
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.)
Withdrawn
Application number
CN202010144861.2A
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.)
Apollo Intelligent Connectivity Beijing 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 CN202010144861.2A priority Critical patent/CN113360273A/zh
Publication of CN113360273A publication Critical patent/CN113360273A/zh
Withdrawn 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/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/5044Allocation 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 hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining

Landscapes

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

Abstract

本申请公开了处理器资源动态分配方法、装置、设备及存储介质,涉及人工智能技术领域。具体实现方案为:通过监控电子设备的各第二处理器的运行状态信息,然后根据上述电子设备的各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行上述模型的第二处理器。可见,本实施例不仅可以保证图像识别算法的稳定运行,提高了图像识别算法的识别性能,还可以有效地利用系统资源。

Description

处理器资源动态分配方法、装置、设备及存储介质
技术领域
本申请涉及图像处理技术领域,尤其涉及一种人工智能技术。
背景技术
随着人工智能的发展,图像识别技术被广泛使用。车载终端中的图像识别(或者简称为车载图像识别)算法成为车辆技术中非常重要的技术。
现有技术中,车载终端中的图像识别(或者简称为车载图像识别)算法通常会固定运行在车载终端的多个处理器中的某一种处理器上。当该处理器的运行状态较差时,会使得图像识别算法的识别性能较差。
发明内容
本申请实施例提供一种处理器资源动态分配方法、装置、设备及存储介质,以解决现有技术的图像识别算法的识别性能较差的技术问题。
本申请实施例第一方面提供一种处理器资源动态分配方法,所述方法应用于电子设备的第一处理器,所述方法包括:
监控所述电子设备的各第二处理器的运行状态信息;
根据所述各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行所述模型的第二处理器。
本申请实施例中,上述电子设备中的第一处理器通过监控上述电子设备的各第二处理器的运行状态信息,然后根据上述电子设备的各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行上述模型的第二处理器。可见,本实施例不仅可以保证图像识别算法的稳定运行,提高了图像识别算法的识别性能,还可以有效地利用系统资源,降低了系统功耗,从而能够平衡识别性能和功耗。
可选地,所述根据所述各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行所述模型的第二处理器,包括:
根据所述各第二处理器的运行状态信息以及所述图像识别算法的相关信息,动态地为所述各模型分配用于运行所述模型的第二处理器;其中,所述图像识别算法的相关信息包括:所述图像识别算法中各模型的计算量信息和/或识别性能要求信息。
可选地,所述根据所述各第二处理器的运行状态信息以及所述图像识别算法的相关信息,动态地为所述各模型分配用于运行所述模型的第二处理器,包括:
针对任意所述模型,根据所述各第二处理器的运行状态信息从所述各第二处理器中确定出多个备用处理器;
根据所述图像识别算法的相关信息为所述模型从所述多个备用处理器中分配用于运行所述模型的第二处理器。
可选地,所述第二处理器的运行状态信息包括以下至少一种:使用率、时钟频率、任务队列长度、温度。
可选地,所述各第二处理器包括:图形处理器GPU、加速处理器APU、视频处理单元VPU、嵌入式神经网络处理器NPU、数字信号处理器DSP中的至少两种。
可选地,所述监控所述电子设备的各第二处理器的运行状态信息,包括:
通过操作系统内核监控所述各第二处理器的运行状态信息。
可选地,所述电子设备为车载终端。
本申请实施例第二方面提供一种处理器资源动态分配装置,所述装置应用于电子设备的第一处理器,所述装置包括:
监控模块,用于监控所述电子设备的各第二处理器的运行状态信息;
分配模块,用于根据所述各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行所述模型的第二处理器。
可选地,所述分配模块,包括:
分配单元,用于根据所述各第二处理器的运行状态信息以及所述图像识别算法的相关信息,动态地为所述各模型分配用于运行所述模型的第二处理器;其中,所述图像识别算法的相关信息包括:所述图像识别算法中各模型的计算量信息和/或识别性能要求信息。
可选地,所述分配单元具体用于:
针对任意所述模型,根据所述各第二处理器的运行状态信息从所述各第二处理器中确定出多个备用处理器;
根据所述图像识别算法的相关信息为所述模型从所述多个备用处理器中分配用于运行所述模型的第二处理器。
可选地,所述第二处理器的运行状态信息包括以下至少一种:使用率、时钟频率、任务队列长度、温度。
可选地,所述各第二处理器包括:图形处理器GPU、加速处理器APU、视频处理单元VPU、嵌入式神经网络处理器NPU、数字信号处理器DSP中的至少两种。
可选地,所述监控模块具体用于:
通过操作系统内核监控所述各第二处理器的运行状态信息。
可选地,所述电子设备为车载终端。
本申请实施例第三方面提供一种芯片,所述芯片用于执行如上述第一方面中任一项所述的方法。
本申请实施例第四方面提供一种电子设备,包括:
第一处理器和与所述第一处理器通信连接的多个第二处理器;以及与所述第一处理器通信连接的存储器;
其中,所述存储器存储有可被所述第一处理器执行的指令,所述指令被所述第一处理器执行,以使所述第一处理器能够执行如上述第一方面中任一项所述的方法。
本申请实施例第五方面提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如上述第一方面中任一项所述的方法。
综上所述,本申请实施例相对于现有技术的有益效果:
本申请实施例提供的处理器资源动态分配方法、装置、设备及存储介质,上述电子设备中的第一处理器通过监控上述电子设备的各第二处理器的运行状态信息,然后根据上述电子设备的各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行上述模型的第二处理器。可见,本实施例不仅可以保证图像识别算法的稳定运行,提高了图像识别算法的识别性能,还可以有效地利用系统资源,降低了系统功耗,从而能够平衡识别性能和功耗的技术效果。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1为本申请实施例提供的应用框架示意图一;
图2为本申请实施例提供的应用框架示意图二;
图3为本申请一实施例提供的处理器资源动态分配方法的流程示意图;
图4为本申请实施例提供的处理器资源动态分配装置的结构示意图;
图5是用来实现本申请实施例的处理器资源动态分配方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
首先,对本申请实施例的应用框架和所涉及的部分词汇进行解释说明。
通常情况下,车载终端中的图像识别(或者简称为车载图像识别)算法的运行依赖于车载终端的硬件平台上的中央处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)、加速处理器(accelerated processing units,APU)、视频处理单元(video processing unit,VPU)、嵌入式神经网络处理器(neural-networkprocessing unit,NPU)、数字信号处理器(digital signal processor,DSP)等处理器,其中,不同的处理器有不同的算力和功耗。
现有技术中,车载图像识别算法通常会固定运行在车载终端的多个处理器中的某一种处理器上。当该处理器的运行状态较差时,会使得图像识别算法的识别性能较差。另外,现有技术也无法平衡识别性能和功耗。例如,GPU虽然可高速执行图像识别算法,但功耗较高;专用DSP虽然功耗低,但通常图像识别速度较低;CPU的速度和功耗适中,但作为主处理器资源分配不确定,导致帧率不稳定。
针对现有技术的上述技术问题,本申请实施例中提出:通过电子设备中的CPU实时监控其它处理器(例如MMU、GPU、APU、VPU、NPU、DSP等处理器)的运行状态信息,然后根据其它处理器的运行状态信息动态地为图像识别算法中的各模型分配处理器,以便于可以在保证图像识别算法的识别性能的同时还可以降低系统功耗,从而能够平衡识别性能和功耗。
本申请实施例中涉及的电子设备可以包括但不限于:车载终端,或者能够执行图像识别算法的其它计算机设备(例如自动驾驶车辆对应的远程控制设备等)。
示例性地,车载终端可以包括但不限于:自动驾驶车辆中的主控电脑、高级驾驶辅助系统(advanced driving assistance system,ADAS)中的控制器,或者辅助驾驶系统的控制器。
本申请实施例中涉及的图像识别算法可以包括但不限于:车载图像识别算法。
示例性地,本申请实施例中的图像识别算法可以包括:至少一个模型(或者计算模型),并可以按照命令队列定义各模型的执行顺序,通过按照命令队列的顺序执行该至少一个模型,便可以实现该图像识别算法。
图1为本申请实施例提供的应用框架示意图一。如图1所示,本申请实施例的电子设备中可以包括但不限于:CPU101、内存管理单元(memory management unit,MMU)102、GPU103、加速处理器APU104、VPU105、NPU106、DSP107。
其中,CPU101中可以设置有策略管理(strategy manager)单元,用于执行本申请实施例提供的处理器资源动态分配方法。
图2为本申请实施例提供的应用框架示意图二,结合图1和图2所示,上述CPU101可以实时监控GPU103、APU104、VPU105、NPU106或DSP107等处理器的运行状态信息,然后根据获取的上述运行状态信息动态地为图像识别算法中的各模型分配处理器。
其中,MMU102的功能可以包括但不限于:虚拟地址到物理地址的转换(即虚拟内存管理)、内存保护、中央处理器高速缓存的控制等。示例性地,MMU102可以用于负责处理CPU101的内存访问请求,以及负责CPU101与GPU103、APU104、VPU105、NPU106或DSP107等处理器之间的数据共享,例如可以通过内存映射或共享虚拟内存的方式实现。
本申请实施例中涉及的任意处理器的运行状态信息可以包括但不限于以下至少一种:使用率(或者称之为负载)、时钟频率、任务队列长度、温度。
本申请实施例中涉及的图像识别算法的相关信息可以包括但不限于:图像识别算法中各模型的计算量信息和/或识别性能要求信息。例如,任意模型的计算量信息可以用于指示该模型的计算量大小等信息,任意模型的识别性能要求信息可以用于指示该模型的识别速度要求等信息。
下面以具体地实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图3为本申请一实施例提供的处理器资源动态分配方法的流程示意图。本申请实施例的执行主体可以为上述电子设备中的第一处理器(例如上述CPU),或者该第一处理器中的处理器资源动态分配装置(例如上述策略管理单元)。示例性地,上述处理器资源动态分配可以通过软件和/或硬件实现。需要说明的是,为了便于描述,本申请下述实施例中以执行主体为上述电子设备中的第一处理器为例进行说明。
如图3所示,本实施例提供的处理器资源动态分配方法可以包括:
步骤S301、监控上述电子设备的各第二处理器的运行状态信息。
本申请实施例中的各第二处理器可以包括但不限于:上述GPU、APU、VPU、NPU、DSP中的至少两种处理器。
本申请实施例中涉及的任意第二处理器的运行状态信息可以包括但不限于以下至少一种:使用率(或者称之为负载)、时钟频率、任务队列长度、温度。
本步骤中,上述电子设备中的第一处理器(例如上述CPU)可以实时监控上述电子设备的各第二处理器的运行状态信息,以便于根据各第二处理器的运行状态信息为图像识别算法分配处理器以运行该图像识别算法。
示例性地,考虑到上述电子设备的操作系统内核可以实时获取到上述电子设备的各第二处理器的运行状态信息,因此,上述电子设备中的第一处理器可以通过上述操作系统内核实时地监控上述电子设备的各第二处理器的运行状态信息。
当然,还可以通过其它方式监控上述电子设备的各第二处理器的运行状态信息,本申请实施例中对此并不作限定。
步骤S302、根据上述电子设备的各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行上述模型的第二处理器。
本申请实施例中涉及的图像识别算法可以包括但不限于:车载图像识别算法。示例性地,本申请实施例中的图像识别算法可以包括:至少一个模型(或者计算模型),并可以按照命令队列定义各模型的执行顺序,通过按照命令队列的顺序执行该至少一个模型,便可以实现该图像识别算法。
应理解,若任意模型所对应的处理器的使用率越低、任务队列长度越短、时钟频率越高,和/或,温度在预设正常范围内越低,则该模型的执行效率会越高。
本步骤中,上述电子设备中的第一处理器(例如上述CPU)可以根据上述步骤S301中所监控到的上述电子设备的各第二处理器的运行状态信息,动态地为上述图像识别算法中的各模型分配对应的第二处理器,以便于后续按照命令队列中各模型的执行顺序依次控制对应的第二处理器执行相应的模型。例如,假设上述图像识别算法中按照执行顺序依次包括:模型1、模型2和模型3,且为上述模型1分配了第二处理器1、为上述模型2分配了第二处理器2以及为上述模型3分配了第二处理器3,则上述第一处理器可以按照执行顺序依次控制上述第二处理器1执行上述模型1、上述第二处理器2执行上述模型2以及上述第二处理器3执行上述模型3。应理解,上述第一处理器可以在上述第二处理器1执行完上述模型1之后控制上述第二处理器2执行上述模型2,以及上述第一处理器可以在上述第二处理器2执行完上述模型2之后控制上述第二处理器3执行上述模型3。
一种可能的实现方式中,上述第一处理器可以根据上述电子设备的各第二处理器的运行状态信息,按照命令队列的顺序动态地为上述图像识别算法中待执行的各模型分配对应的第二处理器。
另一种可能的实现方式中,上述第一处理器可以根据上述电子设备的各第二处理器的运行状态信息,按照命令队列的顺序动态地为上述图像识别算法中下一个待执行的模型分配对应的第二处理器。应理解,此实现方式为重复执行的步骤,直至上述图像识别算法中的各模型都分配了第二处理器并通过对应的第二处理器执行完毕。
示例性地,针对上述图像识别算法中的任意模型,上述第一处理器可以根据上述电子设备的各第二处理器的运行状态信息,为该模型分配运行状态较好的第二处理器(例如使用率低于预设使用率、任务队列长度低于预设队列长度、时钟频率较高,和/或,温度在预设正常范围内低于预设温度的第二处理器),以便于提高该模型的执行效率。
可见,本申请实施例中,通过根据上述电子设备的各第二处理器的运行状态信息动态地为各模型分配对应的第二处理器的方式,不仅可以保证图像识别算法的稳定运行,提高了图像识别算法的识别性能,还可以有效地利用系统资源,降低了系统功耗,从而能够平衡识别性能和功耗。
进一步地,上述第一处理器在根据上述电子设备的各第二处理器的运行状态信息的基础上,还可以结合上述图像识别算法的相关信息,动态地为上述图像识别算法的各模型分配用于运行该模型的第二处理器。
本申请实施例中涉及的图像识别算法的相关信息可以包括但不限于:上述图像识别算法中各模型的计算量信息和/或识别性能要求信息。例如,任意模型的计算量信息可以用于指示该模型的计算量大小等信息,任意模型的识别性能要求信息可以用于指示该模型的识别速度要求等信息。
一种可能的实现方式中,上述第一处理器可以根据上述电子设备的各第二处理器的运行状态信息以及上述图像识别算法的相关信息,按照命令队列的顺序动态地为上述图像识别算法中待执行的各模型分配对应的第二处理器。
另一种可能的实现方式中,上述第一处理器可以根据上述电子设备的各第二处理器的运行状态信息以及上述图像识别算法的相关信息,按照命令队列的顺序动态地为上述图像识别算法中下一个待执行的模型分配对应的第二处理器。应理解,此实现方式为重复执行的步骤,直至上述图像识别算法中的各模型都分配了第二处理器并通过对应的第二处理器执行完毕。
示例性地,针对上述图像识别算法中的任意模型,上述第一处理器可以根据上述电子设备的各第二处理器的运行状态信息从上述各第二处理器中确定出多个备用处理器,然后可以结合上述图像识别算法的相关信息为该模型从上述多个备用处理器中分配用于运行该模型的第二处理器。
例如,假设运行状态信息包括:使用率和时钟频率,针对上述图像识别算法中的任意模型,上述第一处理器根据上述电子设备的各第二处理器的运行状态信息可以从上述各第二处理器中确定出运行状态较好的备用处理器1和备用处理器2,其中,备用处理器1的使用率为10%以及时钟频率为3GHz,备用处理器2的使用率为10%以及时钟频率为1GHz,则上述第一处理器可以结合上述图像识别算法的相关信息中该模型的计算量信息和/或识别性能要求信息为该模型从备用处理器1和备用处理器2中分配用于运行该模型的第二处理器。如当该模型的计算量信息用于指示该模型的计算量大于预设计算量,和/或,该模型的识别性能要求信息用于指示该模型的识别速度要求大于预设识别速度时,则上述第一处理器可以为该模型分配时钟频率较高的备用处理器1作为用于运行该模型的第二处理器;当该模型的计算量信息用于指示该模型的计算量不大于上述预设计算量,和/或,该模型的识别性能要求信息用于指示该模型的识别速度要求不大于上述预设识别速度时,则上述第一处理器可以为该模型分配时钟频率较低的备用处理器2作为用于运行该模型的第二处理器,以便于可以将时钟频率较高的备用处理器1分配给其它更需要的模型。
需要说的是,上述仅以示例的形式对“上述第一处理器可以根据上述电子设备的各第二处理器的运行状态信息以及上述图像识别算法的相关信息,动态地为上述图像识别算法的各模型分配用于运行该模型的第二处理器”的可实现方式进行介绍,并非对其可实现方式进行的限定。在实际应用过程中,可以根据实际需要设置其可实现方式,本申请实施例对此不作具体限定。
综上所述,本申请实施例中,上述电子设备中的第一处理器通过监控上述电子设备的各第二处理器的运行状态信息,然后根据上述电子设备的各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行上述模型的第二处理器。可见,本实施例不仅可以保证图像识别算法的稳定运行,提高了图像识别算法的识别性能,还可以有效地利用系统资源,降低了系统功耗,从而能够平衡识别性能和功耗。
图4为本申请实施例提供的处理器资源动态分配装置的结构示意图。示例性地,本申请实施例提供的处理器资源动态分配装置可以应用于上述电子设备的第一处理器(例如CPU)。如图4所示,本申请实施例提供的处理器资源动态分配装置可以包括:监控模块401和分配模块402。
其中,监控模块401,用于监控所述电子设备的各第二处理器的运行状态信息;
分配模块402,用于根据所述各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行所述模型的第二处理器。
可选地,所述分配模块402,包括:
分配单元,用于根据所述各第二处理器的运行状态信息以及所述图像识别算法的相关信息,动态地为所述各模型分配用于运行所述模型的第二处理器;其中,所述图像识别算法的相关信息包括:所述图像识别算法中各模型的计算量信息和/或识别性能要求信息。
可选地,所述分配单元具体用于:
针对任意所述模型,根据所述各第二处理器的运行状态信息从所述各第二处理器中确定出多个备用处理器;
根据所述图像识别算法的相关信息为所述模型从所述多个备用处理器中分配用于运行所述模型的第二处理器。
可选地,所述第二处理器的运行状态信息包括以下至少一种:使用率、时钟频率、任务队列长度、温度。
可选地,所述各第二处理器包括:图形处理器GPU、加速处理器APU、视频处理单元VPU、嵌入式神经网络处理器NPU、数字信号处理器DSP中的至少两种。
可选地,所述监控模块401具体用于:
通过操作系统内核监控所述各第二处理器的运行状态信息。
可选地,所述电子设备为车载终端。
本实施例提供的处理器资源动态分配装置,用于执行本申请上述处理器资源动态分配方法实施例中关于上述电子设备中的第一处理器的技术方案,其技术原理和技术效果相似,此处不再赘述。
本申请实施例还提供一种芯片,所述芯片用于执行本申请上述处理器资源动态分配方法实施例中关于上述电子设备中的第一处理器的技术方案,其技术原理和技术效果相似,此处不再赘述。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图5所示,是根据本申请实施例的处理器资源动态分配方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的车载终端,诸如,自动驾驶车辆中的主控电脑、ADAS中的控制器、辅助驾驶系统的控制器和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图5所示,该电子设备包括:第一处理器501A、与第一处理器501A通信连接的多个第二处理器501B(图5中以两个第二处理器501B为例)、存储器502,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。第一处理器501A可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器一起使用。
存储器502即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由所述第一处理器执行的指令,以使所述第一处理器执行本申请所提供的处理器资源动态分配方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的处理器资源动态分配方法。
存储器502作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的处理器资源动态分配方法对应的程序指令/模块(例如,附图4所示的监控模块401和分配模块402)。第一处理器501A通过运行存储在存储器502中的非瞬时软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述方法实施例中的处理器资源动态分配方法。
存储器502可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据上述电子设备的使用所创建的数据等。此外,存储器502可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器502可选包括相对于第一处理器501A和第二处理器501B远程设置的存储器,这些远程存储器可以通过网络连接至上述电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本申请实施例的处理器资源动态分配方法的电子设备还可以包括:输入装置503和输出装置504。第一处理器501A、第二处理器501B、存储器502、输入装置503和输出装置504可以通过总线或者其他方式连接,图5中以通过总线连接为例。
输入装置503可接收输入的数字或字符信息,以及产生与上述电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置504可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,上述电子设备中的第一处理器通过监控上述电子设备的各第二处理器的运行状态信息,然后根据上述电子设备的各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行上述模型的第二处理器。可见,本实施例不仅可以保证图像识别算法的稳定运行,提高了图像识别算法的识别性能,还可以有效地利用系统资源,降低了系统功耗,从而能够平衡识别性能和功耗。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (17)

1.一种处理器资源动态分配方法,其特征在于,所述方法应用于电子设备的第一处理器,所述方法包括:
监控所述电子设备的各第二处理器的运行状态信息;
根据所述各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行所述模型的第二处理器。
2.根据权利要求1所述的方法,其特征在于,所述根据所述各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行所述模型的第二处理器,包括:
根据所述各第二处理器的运行状态信息以及所述图像识别算法的相关信息,动态地为所述各模型分配用于运行所述模型的第二处理器;其中,所述图像识别算法的相关信息包括:所述图像识别算法中各模型的计算量信息和/或识别性能要求信息。
3.根据权利要求2所述的方法,其特征在于,所述根据所述各第二处理器的运行状态信息以及所述图像识别算法的相关信息,动态地为所述各模型分配用于运行所述模型的第二处理器,包括:
针对任意所述模型,根据所述各第二处理器的运行状态信息从所述各第二处理器中确定出多个备用处理器;
根据所述图像识别算法的相关信息为所述模型从所述多个备用处理器中分配用于运行所述模型的第二处理器。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述第二处理器的运行状态信息包括以下至少一种:使用率、时钟频率、任务队列长度、温度。
5.根据权利要求1-3中任一项所述的方法,其特征在于,所述各第二处理器包括:图形处理器GPU、加速处理器APU、视频处理单元VPU、嵌入式神经网络处理器NPU、数字信号处理器DSP中的至少两种。
6.根据权利要求1-3中任一项所述的方法,其特征在于,所述监控所述电子设备的各第二处理器的运行状态信息,包括:
通过操作系统内核监控所述各第二处理器的运行状态信息。
7.根据权利要求1-3中任一项所述的方法,其特征在于,所述电子设备为车载终端。
8.一种处理器资源动态分配装置,其特征在于,所述装置应用于电子设备的第一处理器,所述装置包括:
监控模块,用于监控所述电子设备的各第二处理器的运行状态信息;
分配模块,用于根据所述各第二处理器的运行状态信息,动态地为图像识别算法中包括的各模型分配用于运行所述模型的第二处理器。
9.根据权利要求8所述的装置,其特征在于,所述分配模块,包括:
分配单元,用于根据所述各第二处理器的运行状态信息以及所述图像识别算法的相关信息,动态地为所述各模型分配用于运行所述模型的第二处理器;其中,所述图像识别算法的相关信息包括:所述图像识别算法中各模型的计算量信息和/或识别性能要求信息。
10.根据权利要求9所述的装置,其特征在于,所述分配单元具体用于:
针对任意所述模型,根据所述各第二处理器的运行状态信息从所述各第二处理器中确定出多个备用处理器;
根据所述图像识别算法的相关信息为所述模型从所述多个备用处理器中分配用于运行所述模型的第二处理器。
11.根据权利要求8-10中任一项所述的装置,其特征在于,所述第二处理器的运行状态信息包括以下至少一种:使用率、时钟频率、任务队列长度、温度。
12.根据权利要求8-10中任一项所述的装置,其特征在于,所述各第二处理器包括:图形处理器GPU、加速处理器APU、视频处理单元VPU、嵌入式神经网络处理器NPU、数字信号处理器DSP中的至少两种。
13.根据权利要求8-10中任一项所述的装置,其特征在于,所述监控模块具体用于:
通过操作系统内核监控所述各第二处理器的运行状态信息。
14.根据权利要求8-10中任一项所述的装置,其特征在于,所述电子设备为车载终端。
15.一种芯片,其特征在于,所述芯片用于执行如权利要求1-7中任一项所述的方法。
16.一种电子设备,其特征在于,包括:
第一处理器和与所述第一处理器通信连接的多个第二处理器;以及与所述第一处理器通信连接的存储器;
其中,所述存储器存储有可被所述第一处理器执行的指令,所述指令被所述第一处理器执行,以使所述第一处理器能够执行如权利要求1-7中任一项所述的方法。
17.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行如权利要求1-7中任一项所述的方法。
CN202010144861.2A 2020-03-04 2020-03-04 处理器资源动态分配方法、装置、设备及存储介质 Withdrawn CN113360273A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010144861.2A CN113360273A (zh) 2020-03-04 2020-03-04 处理器资源动态分配方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010144861.2A CN113360273A (zh) 2020-03-04 2020-03-04 处理器资源动态分配方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN113360273A true CN113360273A (zh) 2021-09-07

Family

ID=77523495

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010144861.2A Withdrawn CN113360273A (zh) 2020-03-04 2020-03-04 处理器资源动态分配方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113360273A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101339523A (zh) * 2007-07-05 2009-01-07 国际商业机器公司 多处理器环境中的流水线处理方法和设备
CN103164274A (zh) * 2013-02-18 2013-06-19 华东师范大学 一种基于温度约束的固定优先级实时任务静态调度方法
CN109976911A (zh) * 2019-03-25 2019-07-05 哈尔滨工程大学 一种自适应资源调度方法
CN110443211A (zh) * 2019-08-09 2019-11-12 紫荆智维智能科技研究院(重庆)有限公司 基于车载gpu的列车驾驶盹睡检测系统及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101339523A (zh) * 2007-07-05 2009-01-07 国际商业机器公司 多处理器环境中的流水线处理方法和设备
CN103164274A (zh) * 2013-02-18 2013-06-19 华东师范大学 一种基于温度约束的固定优先级实时任务静态调度方法
CN109976911A (zh) * 2019-03-25 2019-07-05 哈尔滨工程大学 一种自适应资源调度方法
CN110443211A (zh) * 2019-08-09 2019-11-12 紫荆智维智能科技研究院(重庆)有限公司 基于车载gpu的列车驾驶盹睡检测系统及方法

Similar Documents

Publication Publication Date Title
CN113849312B (zh) 数据处理任务的分配方法、装置、电子设备及存储介质
US8539192B2 (en) Execution of dataflow jobs
JP7170768B2 (ja) 開発マシン操作タスクの処理方法、電子機器、コンピュータ可読記憶媒体及びコンピュータプログラム
CN111506401B (zh) 自动驾驶仿真任务调度方法、装置、电子设备及存储介质
CN111240836A (zh) 算力资源管理方法、装置、电子设备及存储介质
CN111738446A (zh) 深度学习推理引擎的调度方法、装置、设备和介质
US10411977B2 (en) Visualization of workload distribution on server resources
CN111562969B (zh) 一种区块链的智能合约实现方法、装置、设备和介质
CN114356547B (zh) 基于处理器虚拟化环境的低优阻塞方法及装置
CN112527509A (zh) 一种资源分配方法、装置、电子设备及存储介质
CN110688229A (zh) 任务处理方法和装置
CN112329919B (zh) 模型训练方法及装置
CN111767059B (zh) 深度学习模型的部署方法、装置、电子设备和存储介质
CN112527451B (zh) 容器资源池的管理方法、装置、设备以及存储介质
CN113590329A (zh) 资源处理方法及装置
CN111858030B (zh) 作业的资源处理方法、装置、电子设备及可读存储介质
CN111857825A (zh) 指令执行方法、装置、电子设备和计算机可读存储介质
CN111598571A (zh) 区块链的事务处理方法、装置、设备和存储介质
CN110728773A (zh) 一种图像存储的方法、装置和电子设备
CN111176838A (zh) 为二分图中的节点分配嵌入向量的方法以及装置
CN113360273A (zh) 处理器资源动态分配方法、装置、设备及存储介质
CN111416860B (zh) 基于区块链的事务处理方法、装置、电子设备和介质
CN114386577A (zh) 用于执行深度学习模型的方法、设备和存储介质
CN111767489A (zh) 网页运行的加速方法、装置、设备以及存储介质
CN112118310A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20211022

Address after: 100176 101, floor 1, building 1, yard 7, Ruihe West 2nd Road, Beijing Economic and Technological Development Zone, Daxing District, Beijing

Applicant after: Apollo Intelligent Connectivity (Beijing) Technology Co., Ltd.

Address before: 2 / F, baidu building, 10 Shangdi 10th Street, Haidian District, Beijing 100085

Applicant before: BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY Co.,Ltd.

WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20210907