CN113821308B - 片上系统、虚拟机任务处理方法及设备、存储介质 - Google Patents

片上系统、虚拟机任务处理方法及设备、存储介质 Download PDF

Info

Publication number
CN113821308B
CN113821308B CN202111155033.XA CN202111155033A CN113821308B CN 113821308 B CN113821308 B CN 113821308B CN 202111155033 A CN202111155033 A CN 202111155033A CN 113821308 B CN113821308 B CN 113821308B
Authority
CN
China
Prior art keywords
virtual machine
processing
task
task request
control unit
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
CN202111155033.XA
Other languages
English (en)
Other versions
CN113821308A (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.)
Shanghai Power Tensors Intelligent Technology Co Ltd
Original Assignee
Shanghai Power Tensors Intelligent 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 Shanghai Power Tensors Intelligent Technology Co Ltd filed Critical Shanghai Power Tensors Intelligent Technology Co Ltd
Priority to CN202111155033.XA priority Critical patent/CN113821308B/zh
Publication of CN113821308A publication Critical patent/CN113821308A/zh
Priority to PCT/CN2022/091613 priority patent/WO2023050819A1/zh
Application granted granted Critical
Publication of CN113821308B publication Critical patent/CN113821308B/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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • 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/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • 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)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Abstract

本公开涉及计算机技术领域,具体涉及一种片上系统、虚拟机任务处理方法及设备、存储介质。一种虚拟机任务处理方法,应用于片上系统,所述任务处理方法包括:获取各个虚拟机发送的任务请求,所述任务请求包括对应的虚拟机标识;基于预先建立的所述虚拟机与片上系统的各个处理单元之间的映射关系,所述片上系统的主控单元根据所述虚拟机标识将各个任务请求分发至对应的处理单元进行处理。本公开实施方式中,片上系统基于虚拟机与硬件资源之间的映射关系进行任务的调度及分发,实现片上系统的虚拟化,降低虚拟化成本而且提高虚拟机性能。

Description

片上系统、虚拟机任务处理方法及设备、存储介质
技术领域
本公开涉及计算机技术领域,具体涉及一种片上系统、虚拟机任务处理方法及设备、存储介质。
背景技术
虚拟化是指在物理机服务器上,通过虚拟化管理软件将物理资源分割为多个逻辑分区,每个分区的数据资源相互隔离,成为独立的虚拟机。相关技术中,虚拟化技术主要包括软件虚拟化以及硬件辅助虚拟化,但是,软件虚拟化方案性能较差,硬件辅助虚拟化方案需要对硬件预先进行适配,成本较高。
发明内容
第一方面,本公开实施方式提供了一种虚拟机任务处理方法,应用于片上系统,所述任务处理方法包括:
获取各个虚拟机发送的任务请求,所述任务请求包括对应的虚拟机标识;
基于预先建立的所述虚拟机与片上系统的各个处理单元之间的映射关系,所述片上系统的主控单元根据所述虚拟机标识将各个任务请求分发至对应的处理单元进行处理。
在一些实施方式中,对于任意一个虚拟机,在所述任意一个虚拟机对应一个所述处理单元的情况下,
所述片上系统的主控单元根据所述虚拟机标识将各个任务请求分发至对应的处理单元进行处理,包括:
所述主控单元将任务请求分发至所述任意一个虚拟机对应的所述处理单元进行处理。
在一些实施方式中,对于任意一个虚拟机,在所述任意一个虚拟机对应至少两个所述处理单元的情况下,所述片上系统的主控单元根据所述虚拟机标识将各个任务请求分发至对应的处理单元进行处理,包括:
所述主控单元对所述任务请求对应的任务进行拆分处理,得到多个子任务;所述多个子任务的数量小于或等于所述任意一个虚拟机对应的处理单元的数量;
所述主控单元将各个子任务分发至所述任意一个虚拟机对应的各个处理单元进行处理。
在一些实施方式中,对于任意一个处理单元,在所述任意一个处理单元对应至少两个所述虚拟机的情况下,所述片上系统的主控单元根据所述虚拟机标识将各个任务请求分发至对应的处理单元进行处理,包括:
所述主控单元获取所述任意一个处理单元对应的各个虚拟机发送的任务请求;
根据各个任务请求对应的虚拟机的优先级,确定各个任务请求对应的处理时间;
根据所述处理时间,所述任意一个处理单元依次对各个任务请求进行处理。
在一些实施方式中,所述根据各个任务请求对应的虚拟机的优先级,确定各个任务请求对应的处理时间,包括:
根据预先设置的每个虚拟机的优先级,确定各个任务请求对应的权重值;
基于所述权重值,确定各个任务请求在当前时间窗口内的窗口处理时间;
所述根据所述处理时间,所述任意一个处理单元依次对任务队列中的各个任务请求进行处理,包括:
在所述当前时间窗口内,所述任意一个处理单元根据所述窗口处理时间依次对任务队列中的各个任务请求进行处理。
在一些实施方式中,所述在所述当前时间窗口内,所述任意一个处理单元根据所述窗口处理时间依次对任务队列中的各个任务请求进行处理,包括:
响应于在所述当前时间窗口内,所述任务请求在所述窗口处理时间内未处理完成,中断所述任务请求的处理进程,并将所述任务请求加入所述任务队列的队尾。
在一些实施方式中,在所述片上系统的主控单元根据所述虚拟机标识将各个任务请求分发至对应的处理单元进行处理之后,所述方法还包括:
基于所述映射关系,所述主控单元将所述任务请求对应的处理结果,发送至所述任务请求对应的虚拟机。
第二方面,本公开实施方式提供了一种片上系统,包括:
主控单元和至少一个处理单元;
存储单元,存储有预先建立的虚拟机与各处理单元之间的映射关系;
其中,所述主控单元被配置为获取各个虚拟机发送的任务请求,并基于所述映射关系,根据所述任务请求包括的虚拟机标识将各个任务请求分发至对应的处理单元进行处理。
在一些实施方式中,本公开实施方式的片上系统,还包括:
第二通信模块,用于与宿主机的第一通信模块建立可通信连接,所述主控单元通过所述第二通信模块获取所述任务请求。
在一些实施方式中,对于任意一个虚拟机,在所述任意一个虚拟机对应一个所述处理单元的情况下,所述主控单元被配置为:将任务请求分发至所述任意一个虚拟机对应的所述处理单元进行处理。
在一些实施方式中,对于任意一个虚拟机,在所述任意一个虚拟机对应至少两个所述处理单元的情况下,所述主控单元被配置为:对所述任务请求对应的任务进行拆分处理,得到多个子任务;所述多个子任务的数量小于或等于所述任意一个虚拟机对应的处理单元的数量;将各个子任务分发至所述任意一个虚拟机对应的各个处理单元进行处理。
在一些实施方式中,对于任意一个处理单元,在所述任意一个处理单元对应至少两个所述虚拟机的情况下,所述主控单元被配置为:
获取所述任意一个处理单元对应的各个虚拟机发送的任务请求;
根据各个任务请求对应的虚拟机的优先级,确定各个任务请求对应的处理时间;
根据所述处理时间,所述任意一个处理单元依次对各个任务请求进行处理。
在一些实施方式中,所述主控单元被配置为:
根据预先设置的每个虚拟机的优先级,确定各个任务请求对应的权重值;
基于所述权重值,确定各个任务请求在当前时间窗口内的窗口处理时间;
在所述当前时间窗口内,所述任意一个处理单元根据所述窗口处理时间依次对任务队列中的各个任务请求进行处理。
在一些实施方式中,所述主控单元被配置为:
响应于在所述当前时间窗口内,所述任务请求在所述窗口处理时间内未处理完成,中断所述任务请求的处理进程,并将所述任务请求加入所述任务队列的队尾。
在一些实施方式中,所述主控单元被配置为:
基于所述映射关系,将所述任务请求对应的处理结果,发送至所述任务请求对应的虚拟机。
第三方面,本公开实施方式提供了一种虚拟机任务处理设备,包括:
宿主机,包括预先建立的至少一个虚拟机;和
根据第二方面任一实施方式所述的片上系统,与所述宿主机可通信连接。
第四方面,本公开实施方式提供了一种存储介质,存储有计算机可读指令,所述计算机可读指令用于使计算机执行根据第一方面任一实施方式所述的方法。
本公开实施方式的虚拟机任务处理方法,包括获取各个虚拟机发送的任务请求,任务请求包括对应的虚拟机标识,基于预先建立的虚拟机与片上系统的各个处理单元之间的映射关系,片上系统的主控单元根据虚拟机标识将各个任务请求分发至对应的处理单元进行处理。本公开实施方式中,片上系统基于虚拟机与硬件资源之间的映射关系进行任务的调度及分发,实现片上系统的虚拟化,降低虚拟化成本而且提高虚拟机性能。
附图说明
为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本公开一些实施方式中片上系统的结构示意图。
图2是根据本公开一些实施方式中虚拟机任务处理方法的原理图。
图3是根据本公开一些实施方式中虚拟机任务处理方法的流程图。
图4是根据本公开一些实施方式中虚拟机任务处理方法的流程图。
图5是根据本公开一些实施方式中虚拟机任务处理方法的流程图。
图6是根据本公开一些实施方式中虚拟机任务处理方法的流程图。
具体实施方式
下面将结合附图对本公开的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本公开一部分实施方式,而不是全部的实施方式。基于本公开中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本公开保护的范围。此外,下面所描述的本公开不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
虚拟化是云计算的基础,虚拟化是指在物理机服务器上通过虚拟化管理软件将物理资源分割为多个逻辑分区,每个分区的数据资源相互隔离,成为独立的虚拟机。相关技术中,虚拟化技术主要包括软件虚拟化以及硬件辅助虚拟化。
软件虚拟化是指通过软件方法在物理机上实现对物理资源访问的截获和模拟。常见的软件虚拟机例如QEMU,它是通过软件来仿真物理平台处理器的取址、解码和执行,客户机(Guest)的指令并不在物理机平台上直接执行。由于软件虚拟化方法没有硬件支撑,所有指令都是利用软件模拟的,因此性能往往比较差,仅能执行较为简单的处理任务。
硬件辅助虚拟化是指物理机平台本身提供了对特殊指令的截获和重定向的硬件支持,甚至硬件本身会提供额外的物理资源来辅助软件实现对关键硬件资源的虚拟化。可以理解,由于硬件本身为虚拟化提供了资源支撑,因此硬件辅助虚拟化具有更好的性能。但是,在实现虚拟化时,需要预先对硬件资源进行特殊适配,使其支持物理资源的虚拟化,也即需要对硬件本身作出改进,提高了虚拟化的成本。
SoC(System on Chip,片上系统)是指具有完整系统集成电路并嵌入软件内容的系统级芯片,目前常见的例如GPU(graphics processing unit,图形处理器)芯片、手机芯片等,都可以称之为SoC,也叫片上系统。
SoC往往包括一个主控单元和多个处理子系统,对于虚拟化场景,宿主机(Host)不能直接控制SoC中的处理子系统,因此也就无法直接对这些处理子系统的物理资源进行虚拟化分割,无法利用现有的SoC实现硬件辅助虚拟化。
相关技术中,需要对SoC进行特殊的适配工作,也即对SoC进行相应的硬件改进,使得宿主机指令可以直接访问到SoC的处理子系统,这无疑增加了虚拟化的成本。
基于上述相关技术中存在的缺陷,本公开实施方式提供了一种虚拟机任务处理方法、装置、片上系统芯片以及存储介质。本公开实施方式旨在无需对SoC进行硬件适配的基础上实现虚拟化,提高虚拟机性能。
本公开实施方式提供了一种虚拟机任务处理方法,该方法可应用于片上系统(以下统一称为“SoC”)。
图1示出了SoC的基础架构,如图1所示,常见的SoC包括主控单元110以及多个处理单元120。主控单元110例如可以是CPU(central processing unit,中央处理单元)。多个处理单元120为SoC的硬件子系统(Subsys),用于完成任务处理。
基于前述可知,宿主机(Host)端只能通过主控单元110来与处理单元120通信,无法直接控制各个处理单元120。因此,Host端无法直接对SoC的处理单元120进行虚拟化分割。
本公开实施方式中,预先建立Host端虚拟机与SoC的处理单元120之间的映射关系,进而通过主控单元110基于该映射关系完成对虚拟机任务的分发及调度,实现对多个处理单元120的虚拟化分割。图2示出了本公开实施方式中实现虚拟化的原理框图,下面结合图2进行说明。
如图2所示,在一些实施方式中,SoC 100与宿主机Host 200通过通信总线300建立可通信连接。具体来说,Host 200端设有第一通信模块210,SoC100的主控单元110集成有第二通信模块111,第一通信模块210和第二通信模块111通过通信总线300建立可通信连接。第一通信模块210和第二通信模块111可采用核间通信方式,使用自定义通信协议进行通信。
例如在一个示例中,通信总线300为PCIe总线,对应的第一通信模块210和第二通信模块111也为PCIe通信协议的通信模块。
当然,本领域技术人员可以理解,Host 200与SoC 100的通信形式并不局限于PCIe,还可以是其他任何适于实现的形式,例如USB、eth-net等,本公开对此不作限制。
另外,值得说明的是,图2中仅示出了宿主机Host 200上仅挂载一个SoC 100的示例,在其他实施方式中,宿主机Host 200上也可以根据具体需求挂载多个SoC,其原理与之相同,本公开对此不作限制。
继续参照图2,Host 200可通过虚拟化管理软件(VMM)建立多个虚拟机220,例如VM0,VM1,VM2,……,VMn。在一些实施方式中,每个虚拟机220可以运行独立的操作系统,并且每个虚拟机的上层也可安装各种应用,以供客户机(Guest)直接使用应用对应的服务。本领域技术人员对此可以理解并实现,本公开不再赘述。
在本公开实施方式中,在实现虚拟化时,并非直接对SoC 100的各个处理单元120进行物理资源分割后分配给每个虚拟机220使用,而是建立每个虚拟机220与处理单元120之间的映射关系,该映射关系可存储于SoC 100的存储器中,以供主控单元110调用及维护。当SoC 100的主控单元110接收到任务请求时,即可基于该映射关系,确定发送任务请求的虚拟机所对应的处理单元,进而将该任务请求发送至对应的处理单元进行处理。
图3示出了本公开虚拟机任务处理方法的一些实施方式,下面结合图3具体进行说明。
如图3所示,在一些实施方式中,本公开示例的虚拟机任务处理方法包括:
S310、获取各个虚拟机发送的任务请求。
具体而言,如图2所示的系统架构,客户机端在使用虚拟机220提供的服务时,虚拟机220可通过第一通信模块210向SoC 100发送对应的任务请求,从而SoC 100的主控单元110即可通过第二通信模块111获取到各个虚拟机发送的任务请求。
任务请求中包括执行任务的相关数据以及虚拟机标识,虚拟机标识用于唯一指向发送该任务请求的虚拟机ID。
S320、基于预先建立的虚拟机与片上系统的各个处理单元之间的映射关系,片上系统的主控单元根据虚拟机标识将各个任务请求分发至对应的处理单元进行。
具体而言,需要预先建立虚拟机220与SoC 100的各个处理单元120之间的映射关系。
在一些实施方式中,虚拟机220与处理单元120之间的映射关系,可以基于用户的场景需求、购买情况等进行设置。并且在映射关系设置完成之后,也可以根据后续用户的使用需求、购买情况等对映射关系随时进行调整,本公开对此不再赘述。
对于虚拟机220与处理单元120之间的映射关系,主要可分为以下三种:
1)一对一映射。
每个虚拟机220对应于SoC 100中的一个处理单元120,例如图2示例中,虚拟机VM0对应于处理单元Subsys 0、虚拟机VM1对应于处理单元Subsys 1、……、虚拟机VMn对应于处理单元Subsys n。
2)一对多映射。
每个虚拟机220对应于SoC 100中的至少两个处理单元120。例如图2示例中,虚拟机VM0对应于处理单元Subsys 0、Subsys 1和Subsys 2。当然,也可以是其他数量的一对多映射,并不局限于本示例。
3)多对一映射。
多个(至少两个)虚拟机220对应于SoC 100中的一个处理单元120。例如图2示例中,虚拟机VM0和虚拟机VM1共同对应于处理单元Subsys 0。当然,也可以是其他数量的多对一映射,并不局限于本示例。
基于上述的映射关系,可以建立每个虚拟机220与处理单元120之间的对应关系。当SoC 100的主控单元110接收到任务请求时,即可根据任务请求中的虚拟机标识,并基于上述建立的映射关系,确定发送该任务请求的虚拟机所对应的处理单元。进而,主控单元110即可通过预置的调度和分发算法将该任务请求分发至对应的一个或多个处理单元中进行处理。
对于主控单元110对各个任务请求进行调度和分发的过程,本公开下述实施方式中进行说明,在此暂不详述。
本公开实施方式中,通过建立虚拟机与硬件资源之间的映射关系,利用SoC的主控单元基于该映射关系实现任务的调度及分发,利用软件结合硬件的方式实现对片上系统的虚拟化。与相关技术中的软件虚拟化方案相比,本公开实施方式由于采用硬件辅助虚拟化,具有更高的性能。而与相关技术中的硬件辅助虚拟化方案相比,本公开实施方式无需对硬件资源进行特殊适配,使用通用SoC即可实现虚拟化,降低虚拟化成本。
通过上述可知,本公开实施方式的虚拟机任务处理方法,建立虚拟机与硬件资源之间的映射关系,利用SoC的主控单元基于该映射关系进行任务的调度及分发,实现SoC的虚拟化,降低虚拟化成本而且提高虚拟机性能。
在一些实施方式中,上述映射关系可由宿主机Host端和SoC端共同存储和维护,也即宿主机端和SoC端采用同一映射关系。例如,当某个用户付费购买新的硬件资源之后,宿主机Host 200可基于用户购买请求对原有的映射关系进行更新,同时将更新后的映射关系通过第一通信模块210发送至SoC 100,从而SoC 100根据接收到的新的映射关系对原有的映射关系进行更新。本领域技术人员对此可以理解,本公开不再赘述。
基于前述,本公开实施方式中,虚拟机220与映射关系处理单元120的映射关系包括多种情况,下面分别基于前述的三种情况,对本公开任务处理方法进行说明。
1)一对一映射。
如图2所示,一个示例中,在映射关系中虚拟机VM0对应SoC中的处理单元Subsys0。
当用户通过客户机(Guest)使用虚拟机VM0的服务时,虚拟机VM0通过第一通信模块210利用通信总线300作为通信媒介,向SoC 100发送任务请求。该任务请求中携带有发送任务请求的虚拟机标识,例如虚拟机标识为VM0。
SoC 100通过第二通信模块111接收到该任务请求后,根据任务请求中携带的虚拟机标识VM0,调用存预先存储的映射关系,确定虚拟机VM0对应的处理单元为Subsys 0。然后主控单元110即可将该任务请求对应的任务分发至处理单元Subsys 0进行处理。
2)一对多映射。
如图2所示,一个示例中,在映射关系中虚拟机VM0对应SoC中的处理单元Subsys0、Subsys 1以及Subsys 2。
当用户通过客户机(Guest)使用虚拟机VM0的服务时,虚拟机VM0通过第一通信模块210利用通信总线300作为通信媒介,向SoC 100发送任务请求。该任务请求中携带有发送任务请求的虚拟机标识,例如虚拟机标识为VM0。
SoC 100通过第二通信模块111接收到该任务请求后,根据任务请求中携带的虚拟机标识VM0,调用存预先存储的映射关系,确定虚拟机VM0对应的处理单元为Subsys 0、Subsys 1以及Subsys 2。
由于虚拟机VM0对应3个处理单元,因此为提高任务处理效率,主控单元110可对任务请求的任务进行拆分处理,从而得到3个子任务。然后将3个子任务分别分发至Subsys 0、Subsys 1以及Subsys 2三个处理单元进行处理。在每个处理单元对子任务处理完成之后,主控单元110再根据3个子任务的处理结果得到最终的任务处理结果。
在一个示例中,主控单元110接收到虚拟机VM0发送的任务请求,解析得到任务请求中包括的任务数据,然后基于虚拟机VM0对应的处理单元120的数量将任务数据进行数据分割,得到3个分割后的子任务,并将3个子任务分别发送至Subsys 0、Subsys 1以及Subsys2三个处理单元进行处理。每个处理单元对子任务进行处理之后,可以得到对应的处理结果,例如Subsys 0对子任务处理后得到第一结果数据,Subsys 1对子任务处理后得到第二结果数据,Subsys 2对子任务处理后得到第三结果数据。主控单元110再对第一结果数据、第二结果数据以及第三结果数据进行融合处理,得到任务请求对应的任务处理结果。
通过上述可知,本公开实施方式中,在虚拟机对应多个处理单元的情况下,通过对任务请求的任务进行拆分处理,使得多个处理单元并行进行任务处理,提高任务处理效率。
3)多对一映射。
如图2所示,一个示例中,在映射关系中虚拟机VM0、VM1均对应SoC中的处理单元Subsys 0。
在一些实施方式中,当仅有虚拟机VM0和VM1其中之一发送任务请求时,主控单元110基于前述过程将任务请求分发至处理单元Subsys 0进行处理即可,本公开不再赘述。
在另一些实施方式中,当虚拟机VM0和VM1同时发送任务请求时,主控单元110可根据优先级确定各个任务请求对应的处理时间,从而对多个任务请求进行分发处理,下面结合图4实施方式具体进行说明。
如图4所示,在一些实施方式中,本公开示例的虚拟机任务处理方法中,对各个任务请求进行分发处理的过程包括:
S410、主控单元获取处理单元对应的各个虚拟机发送的任务请求。
具体而言,以前述示例为例,映射关系中虚拟机VM0、VM1均对应SoC中的处理单元Subsys 0。当虚拟机VM0和VM1同时发送任务请求时,主控单元110可以接收到虚拟机VM0和VM1发送的任务请求。
S420、根据各个任务请求对应的虚拟机的优先级,确定各个任务请求对应的处理时间。
具体而言,虚拟机的优先级表示对各个虚拟机发送的任务请求进行处理的优先程度。不同的虚拟机对应有各自的优先级,该优先级可以基于虚拟机对应的客户机的使用需求、购买情况等进行预先设置。例如上述示例中,虚拟机VM0的优先级为P1,虚拟机VM1的优先级为P2。
处理时间表示任务请求对处理单元的资源占用程度,虚拟机的优先级越高,其任务请求对处理单元的资源占用时间越长,也即在一个时间窗口内对应的处理时间也越长。
在本公开实施方式中,可根据各个虚拟机的优先级来得到每个任务请求的处理时间,从而处理单元即可根据该处理时间对任务请求进行处理。具体过程参照下述实施方式,在此暂不展开。
S430、根据处理时间,处理单元依次对各个任务请求进行处理。
具体而言,主控单元根据各个虚拟机的优先级确定各个任务请求的处理时间之后,即可以将各个任务请求分发至任务队列排队。处理单元可从任务队列中依次调取位于队首的一个任务请求,并且根据该任务请求对应的处理时间,对该任务请求进行处理。
通过上述可知,本公开实施方式中,在多个虚拟机对应一个处理单元的情况下,通过设置优先级,基于虚拟机的优先级对任务请求进行处理,合理分配物理资源,提高任务处理效率。
本公开一些实施方式中,在图4实施方式的基础上,在对虚拟机VM0和VM1的任务请求进行分发处理时,并非将两者其中之一处理完成之后才处理另一。而是在时域上将时间划分为连续等间距的时间窗口,例如一个示例中,可以将每100ms作为一个时间窗口。在一个时间窗口内,会对多个任务请求依次进行处理,但是每个任务请求所对应的处理时间并不一定相同,而是基于优先级确定的。
如图5所示,在一些实施方式中,本公开示例的虚拟机任务处理方法中,确定各个任务请求对应的处理时间的过程包括:
S510、根据预先设置的每个虚拟机的优先级,确定各个任务请求对应的权重值。
S520、基于权重值,确定各个任务请求在当前时间窗口内的窗口处理时间。
具体而言,仍以前述示例为例,映射关系中虚拟机VM0、VM1均对应SoC中的处理单元Subsys 0,主控单元110同时接收到虚拟机VM0和VM1发送的任务请求。
每个虚拟机预先设置有各自的优先级,例如虚拟机VM0的优先级为P1,虚拟机VM1的优先级为P2。虚拟机VM0的任务请求的权重值w1即可表示为:w1=P1/(P1+P2),同理,虚拟机VM1的任务请求对应的权重值w2即可表示为:w2=P2/(P1+P2)。
在得到每个任务请求对应的权重值之后,即可根据时间窗口的总时长,确定每个任务请求在当前时间窗口内的处理时间。
在上述示例中,每个时间窗口的总时长为s,则虚拟机VM0的任务请求所对应的处理时长s1即可表示为:s1=w1*s=P1*s/(P1+P2),同理,虚拟机VM1的任务请求对应的处理时长s2即可表示为:s2=w2*s=P2*s/(P1+P2)。
在得到每个任务请求的处理时间之后,主控单元110即可将每个任务请求依次分发至任务队列进行排队,等待处理单元调取完成处理。
S530、在当前时间窗口内,处理单元根据窗口处理时间依次对任务队列中的各个任务请求进行处理。
具体而言,在计算得到每个任务请求在当前时间窗口内的处理时间之后,主控单元110将每个任务请求依次分发至任务队列进行排队,处理单元120依次调取任务队列中排在队首的任务请求,并根据该任务请求对应的处理时间进行处理。
以前述示例为例,任务队列中依次排列有虚拟机VM0的任务请求,以及虚拟机VM1的任务请求。在当前时间窗口s时长中,处理单元Subsys 0可首先调取虚拟机VM0的任务请求处理s1时长,然后调取虚拟机VM1的任务请求处理s2时长。
在本公开实施方式中,在一个时间窗口的处理时长内,任务请求未处理完成的情况下,需要中断该任务请求的处理进程,并将该任务请求重新进入任务队列的队尾进行排队。
例如上述示例中,在当前时间窗口s时长中,处理单元Subsys 0首先调取虚拟机VM0的任务请求处理s1时长,但是任务请求并未处理完成,此时需要中断虚拟机VM0的任务请求的处理进程,开始进入虚拟机VM1的任务请求处理进程。
同时,被中断的虚拟机VM0的任务请求重新进入任务队列的队尾排队,等待下一个时间窗口,处理单元Subsys 0再次调取该任务请求继续处理。例如,在当前时间窗口s内,处理单元Subsys 0首先调取虚拟机VM0的任务请求处理s1时长后中断,将虚拟机VM0的任务请求加入任务队列,然后调取虚拟机VM1的任务请求处理s2时长后中断,进入下一个时间窗口。在下一个时间窗口中,处理单元Subsys 0将虚拟机VM1的任务请求加入任务队列排队,同时再次调取虚拟机VM0的任务请求进行处理。如此循环执行,直至任务请求处理完成。
上述示例中仅示出了两个虚拟机对应同一个处理单元的情况,在其他实施方式中,映射关系中也可以是其他数量的虚拟机对应同一个处理单元,其任务处理的原理与上述示例相同,本公开对此不作赘述。
另外,在本公开一些实施方式中,在图5实施方式的基础上,本公开任务处理方法在每个时间窗口中进行任务请求的分发处理时,当前时间窗口中各个任务请求的处理时长,也可以根据前一时间窗口中各个任务请求的实际处理时间进行动态的调整。
例如,在时间窗口T1中,T1的总时长为100ms,虚拟机VM0的任务处理时间为30ms,虚拟机VM1的任务处理时间为70ms。但是实际任务处理中,虚拟机VM0的实际任务处理时间占满了30ms,然而虚拟机VM1的实际任务处理时间仅使用了50ms。从而,在下一个时间窗口T2的100ms中,即可将虚拟机VM0的任务处理时间由30ms调整至50ms,将虚拟机VM0的任务处理时间由70ms调整至50ms。也即,每一个时间窗口的各个任务请求的处理时长可以基于前一个时间窗口的任务处理情况进行动态的微调。本领域技术人员对此可以理解,本公开不再赘述。
通过上述可知,本公开实施方式中,在多个虚拟机对应一个处理单元的情况下,通过设置优先级,基于虚拟机的优先级对任务请求进行处理,合理分配物理资源,提高任务处理效率。
图6示出了本公开任务处理方法的一些实施方式,下面结合图6对本公开方法进一步说明。
如图6所示,在一些实施方式中,本公开示例的虚拟机的任务处理方法包括:
S610、预先建立各个虚拟机与片上系统的各个处理单元之间的映射关系。
具体而言,参见图2所示的系统架构,管理员可以基于各个虚拟机用户的场景需求、购买付费情况等预先为各个虚拟机分配物理资源,也即建立各个虚拟机与处理单元之间的映射关系。
在一个示例中,对于硬件资源需求较多、或者购买付费更多的虚拟机,在映射关系中可以设置其对应更多数量的处理单元。对于硬件资源需求较少、或者付费更少的虚拟机,可在映射关系中设置其对应1个处理单元,或者多个虚拟机对应同1个处理单元。本领域技术人员可以根据具体场景需求进行设置,本公开对此不再赘述。
S620、片上系统的主控单元获取宿主机端各个虚拟机发送的任务请求。
具体而言,参见图2所示的系统架构,用户在使用Host端的各个虚拟机提供的服务时,各个虚拟机通过第一通信模块210,以通信总线300为媒介向SoC 100发送任务请求。SoC100的主控单元110通过第二通信模块111即可接收到各个任务请求。
S630、基于映射关系,片上系统的主控单元根据虚拟机标识将各个任务请求分发至对应的处理单元进行。
具体而言,主控单元110对任务请求调度和分发的具体过程,参见上述实施方式即可,对此不再赘述。
S640、基于映射关系,主控单元将任务请求对应的处理结果,发送至任务请求对应的虚拟机。
具体而言,在每个任务请求处理完成之后,处理单元120将该任务请求对应的处理结果反馈至主控单元110,然后主控单元110将处理结果通过第二通信模块11发送至宿主机,宿主机接收到处理结果,基于上述映射关系,将处理结果发送至对应的虚拟机,从而使用该虚拟机的客户机(Guest)端即可接收到处理结果。
通过上述可知,本公开实施方式的虚拟机任务处理方法,建立虚拟机与硬件资源之间的映射关系,利用SoC的主控单元基于该映射关系进行任务的调度及分发,实现SoC的虚拟化,降低虚拟化成本而且提高虚拟机性能。
本公开实施方式提供了一种片上系统,在一些实施方式中,本公开示例的片上系统可包括:
主控单元和至少一个处理单元;
存储单元,存储有预先建立的虚拟机与各处理单元之间的映射关系;
其中,主控单元被配置为获取各个虚拟机发送的任务请求,并基于映射关系,根据任务请求包括的虚拟机标识将各个任务请求分发至对应的处理单元进行处理。
在一些实施方式中,本公开示例的片上系统可如图1中SoC 100所示,包括主控单元110以及多个处理单元120。同时,SoC 100还包括存储单元,存储单元用于存储上述实施方式中预先建立的虚拟机与各处理单元之间的映射关系。
对于主控单元110的利用映射关系实现SoC虚拟化的过程,本领域技术人员参照前述任意实施方式的方法即可,本公开对此不再赘述。
通过上述可知,本公开实施方式中,建立虚拟机与硬件资源之间的映射关系,利用SoC的主控单元基于该映射关系进行任务的调度及分发,实现SoC的虚拟化,降低虚拟化成本而且提高虚拟机性能。
在一些实施方式中,本公开实施方式的片上系统,还包括:
第二通信模块,用于与宿主机的第一通信模块建立可通信连接,主控单元通过第二通信模块获取任务请求。
在一些实施方式中,对于任意一个虚拟机,在任意一个虚拟机对应一个处理单元的情况下,主控单元被配置为:
将任务请求分发至任意一个虚拟机对应的处理单元进行处理。
在一些实施方式中,对于任意一个虚拟机,在任意一个虚拟机对应至少两个处理单元的情况下,主控单元被配置为:
主控单元对任务请求对应的任务进行拆分处理,得到多个子任务;多个子任务的数量小于或等于任意一个虚拟机对应的处理单元的数量;
主控单元将各个子任务分发至任意一个虚拟机对应的各个处理单元进行处理。
在一些实施方式中,对于任意一个处理单元,在任意一个处理单元对应至少两个虚拟机的情况下,主控单元被配置为:
获取任意一个处理单元对应的各个虚拟机发送的任务请求;
根据各个任务请求对应的虚拟机的优先级,确定各个任务请求对应的处理时间;
根据处理时间,任意一个处理单元依次对各个任务请求进行处理。
在一些实施方式中,主控单元被配置为:
根据预先设置的每个虚拟机的优先级,确定各个任务请求对应的权重值;
基于权重值,确定各个任务请求在当前时间窗口内的窗口处理时间;
在当前时间窗口内,任意一个处理单元根据窗口处理时间依次对任务队列中的各个任务请求进行处理。
在一些实施方式中,主控单元被配置为:
响应于在当前时间窗口内,任务请求在窗口处理时间内未处理完成,中断任务请求的处理进程,并将任务请求加入任务队列的队尾。
在一些实施方式中,主控单元被配置为:
基于映射关系,将任务请求对应的处理结果,发送至任务请求对应的虚拟机。
通过上述可知,本公开实施方式片上系统,建立虚拟机与硬件资源之间的映射关系,利用SoC的主控单元基于该映射关系进行任务的调度及分发,实现SoC的虚拟化,降低虚拟化成本而且提高虚拟机性能。
本公开实施方式提供了一种虚拟机任务处理设备,包括:
宿主机,包括预先建立的至少一个虚拟机;和
片上系统,与所述宿主机可通信连接。
在一些实施方式中,本公开示例的虚拟机任务处理设备可如图2所示,包括宿主机200和片上系统100,宿主机200预先建立有多个虚拟机220,多个虚拟机220可通过第一通信模块210与片上系统100建立通信连接。
对于片上系统100和宿主机200利用映射关系实现SoC虚拟化的过程,本领域技术人员参照前述任意实施方式的方法即可,本公开对此不再赘述。
在一些实施方式中,本公开实施方式提供了一种存储介质,存储有计算机可读指令,所述计算机可读指令用于使计算机执行根据上述任一实施方式所述的虚拟机任务处理方法。
通过上述可知,本公开实施方式中,建立虚拟机与硬件资源之间的映射关系,利用SoC的主控单元基于该映射关系进行任务的调度及分发,实现SoC的虚拟化,降低虚拟化成本而且提高虚拟机性能。
显然,上述实施方式仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本公开创造的保护范围之中。

Claims (12)

1.一种虚拟机任务处理方法,其特征在于,应用于片上系统,所述任务处理方法包括:
获取各个虚拟机发送的任务请求,所述任务请求包括对应的虚拟机标识;
基于预先建立的所述虚拟机与片上系统的各个处理单元之间的映射关系,所述片上系统的主控单元根据所述虚拟机标识将各个任务请求分发至对应的处理单元进行处理;
对于任意一个处理单元,在所述任意一个处理单元对应至少两个所述虚拟机的情况下,所述片上系统的主控单元根据所述虚拟机标识将各个任务请求分发至对应的处理单元进行处理,包括:
所述主控单元获取所述任意一个处理单元对应的各个虚拟机发送的任务请求;
根据预先设置的每个虚拟机的优先级,确定各个任务请求对应的权重值;
基于所述权重值,确定各个任务请求在当前时间窗口内的窗口处理时间;
在所述当前时间窗口内,所述任意一个处理单元根据所述窗口处理时间依次对任务队列中的各个任务请求进行处理。
2.根据权利要求1所述的方法,其特征在于,对于任意一个虚拟机,在所述任意一个虚拟机对应一个所述处理单元的情况下,
所述片上系统的主控单元根据所述虚拟机标识将各个任务请求分发至对应的处理单元进行处理,包括:
所述主控单元将任务请求分发至所述任意一个虚拟机对应的所述处理单元进行处理。
3.根据权利要求1所述的方法,其特征在于,对于任意一个虚拟机,在所述任意一个虚拟机对应至少两个所述处理单元的情况下,
所述片上系统的主控单元根据所述虚拟机标识将各个任务请求分发至对应的处理单元进行处理,包括:
所述主控单元对所述任务请求对应的任务进行拆分处理,得到多个子任务;所述多个子任务的数量小于或等于所述任意一个虚拟机对应的处理单元的数量;
所述主控单元将各个子任务分发至所述任意一个虚拟机对应的各个处理单元进行处理。
4.根据权利要求1所述的方法,其特征在于,所述在所述当前时间窗口内,所述任意一个处理单元根据所述窗口处理时间依次对任务队列中的各个任务请求进行处理,包括:
响应于在所述当前时间窗口内,所述任务请求在所述窗口处理时间内未处理完成,中断所述任务请求的处理进程,并将所述任务请求加入所述任务队列的队尾。
5.根据权利要求1至4任一项所述的方法,其特征在于,在所述片上系统的主控单元根据所述虚拟机标识将各个任务请求分发至对应的处理单元进行处理之后,所述方法还包括:
基于所述映射关系,所述主控单元将所述任务请求对应的处理结果,发送至所述任务请求对应的虚拟机。
6.一种片上系统,其特征在于,包括:
主控单元和至少一个处理单元;
存储单元,存储有预先建立的虚拟机与各处理单元之间的映射关系;
其中,所述主控单元被配置为获取各个虚拟机发送的任务请求,并基于所述映射关系,根据所述任务请求包括的虚拟机标识将各个任务请求分发至对应的处理单元进行处理;
对于任意一个处理单元,在所述任意一个处理单元对应至少两个所述虚拟机的情况下,所述主控单元被配置为:
获取所述任意一个处理单元对应的各个虚拟机发送的任务请求;
根据预先设置的每个虚拟机的优先级,确定各个任务请求对应的权重值;
基于所述权重值,确定各个任务请求在当前时间窗口内的窗口处理时间;
在所述当前时间窗口内,所述任意一个处理单元根据所述窗口处理时间依次对任务队列中的各个任务请求进行处理。
7.根据权利要求6所述的片上系统,其特征在于,还包括:
第二通信模块,用于与宿主机的第一通信模块建立可通信连接,所述主控单元通过所述第二通信模块获取所述任务请求。
8.根据权利要求6所述的片上系统,其特征在于,
对于任意一个虚拟机,在所述任意一个虚拟机对应一个所述处理单元的情况下,所述主控单元被配置为:将任务请求分发至所述任意一个虚拟机对应的所述处理单元进行处理;
和/或,
对于任意一个虚拟机,在所述任意一个虚拟机对应至少两个所述处理单元的情况下,所述主控单元被配置为:对所述任务请求对应的任务进行拆分处理,得到多个子任务;所述多个子任务的数量小于或等于所述任意一个虚拟机对应的处理单元的数量;将各个子任务分发至所述任意一个虚拟机对应的各个处理单元进行处理。
9.根据权利要求6所述的片上系统,其特征在于,所述主控单元被配置为:
响应于在所述当前时间窗口内,所述任务请求在所述窗口处理时间内未处理完成,中断所述任务请求的处理进程,并将所述任务请求加入所述任务队列的队尾。
10.根据权利要求6所述的片上系统,其特征在于,所述主控单元被配置为:
基于所述映射关系,将所述任务请求对应的处理结果,发送至所述任务请求对应的虚拟机。
11.一种虚拟机任务处理设备,其特征在于,包括:
宿主机,包括预先建立的至少一个虚拟机;和
根据权利要求6至10任一项所述的片上系统,与所述宿主机可通信连接。
12.一种存储介质,其特征在于,存储有计算机可读指令,所述计算机可读指令用于使计算机执行根据权利要求1至5任一项所述的方法。
CN202111155033.XA 2021-09-29 2021-09-29 片上系统、虚拟机任务处理方法及设备、存储介质 Active CN113821308B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111155033.XA CN113821308B (zh) 2021-09-29 2021-09-29 片上系统、虚拟机任务处理方法及设备、存储介质
PCT/CN2022/091613 WO2023050819A1 (zh) 2021-09-29 2022-05-09 片上系统、虚拟机任务处理方法及设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111155033.XA CN113821308B (zh) 2021-09-29 2021-09-29 片上系统、虚拟机任务处理方法及设备、存储介质

Publications (2)

Publication Number Publication Date
CN113821308A CN113821308A (zh) 2021-12-21
CN113821308B true CN113821308B (zh) 2023-11-24

Family

ID=78915964

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111155033.XA Active CN113821308B (zh) 2021-09-29 2021-09-29 片上系统、虚拟机任务处理方法及设备、存储介质

Country Status (2)

Country Link
CN (1) CN113821308B (zh)
WO (1) WO2023050819A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113821308B (zh) * 2021-09-29 2023-11-24 上海阵量智能科技有限公司 片上系统、虚拟机任务处理方法及设备、存储介质
CN114422455B (zh) * 2022-01-24 2023-08-22 西安交通大学 一种基于空天地一体化网络的多维资源管理架构及方法
CN115904634B (zh) * 2023-01-17 2023-08-15 北京象帝先计算技术有限公司 资源管理方法、系统级芯片、电子组件及电子设备
CN117412059B (zh) * 2023-12-12 2024-04-16 北京象帝先计算技术有限公司 基于虚拟化的视频编解码系统、设备及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102307207A (zh) * 2010-09-25 2012-01-04 广东电子工业研究院有限公司 在线定制虚拟机镜像的系统及其方法
CN109408449A (zh) * 2017-08-15 2019-03-01 Arm有限公司 数据处理系统
CN110362388A (zh) * 2018-04-11 2019-10-22 中移(苏州)软件技术有限公司 一种资源调度方法及装置
CN112181620A (zh) * 2020-09-27 2021-01-05 郑州轻工业大学 云环境下虚拟机服务能力感知的大数据工作流调度方法
CN113296884A (zh) * 2021-02-26 2021-08-24 阿里巴巴集团控股有限公司 虚拟化方法、装置、电子设备、介质及资源虚拟化系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9384060B2 (en) * 2014-09-16 2016-07-05 Unisys Corporation Dynamic allocation and assignment of virtual functions within fabric
CN105786589A (zh) * 2016-02-26 2016-07-20 成都赫尔墨斯科技有限公司 一种云渲染系统、服务器及方法
US11099894B2 (en) * 2016-09-28 2021-08-24 Amazon Technologies, Inc. Intermediate host integrated circuit between virtual machine instance and customer programmable logic
US10514943B2 (en) * 2016-11-17 2019-12-24 Qualcomm Incorporated Method and apparatus for establishing system-on-chip (SOC) security through memory management unit (MMU) virtualization
US10860380B1 (en) * 2018-09-28 2020-12-08 Amazon Technologies, Inc. Peripheral device for accelerating virtual computing resource deployment
CN112395071A (zh) * 2019-08-12 2021-02-23 北京百度网讯科技有限公司 用于资源管理的方法、装置、电子设备和存储介质
CN113419845A (zh) * 2021-02-22 2021-09-21 阿里巴巴集团控股有限公司 计算加速方法和装置、计算系统、电子设备及计算机可读存储介质
CN113821308B (zh) * 2021-09-29 2023-11-24 上海阵量智能科技有限公司 片上系统、虚拟机任务处理方法及设备、存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102307207A (zh) * 2010-09-25 2012-01-04 广东电子工业研究院有限公司 在线定制虚拟机镜像的系统及其方法
CN109408449A (zh) * 2017-08-15 2019-03-01 Arm有限公司 数据处理系统
CN110362388A (zh) * 2018-04-11 2019-10-22 中移(苏州)软件技术有限公司 一种资源调度方法及装置
CN112181620A (zh) * 2020-09-27 2021-01-05 郑州轻工业大学 云环境下虚拟机服务能力感知的大数据工作流调度方法
CN113296884A (zh) * 2021-02-26 2021-08-24 阿里巴巴集团控股有限公司 虚拟化方法、装置、电子设备、介质及资源虚拟化系统

Also Published As

Publication number Publication date
WO2023050819A1 (zh) 2023-04-06
CN113821308A (zh) 2021-12-21

Similar Documents

Publication Publication Date Title
CN113821308B (zh) 片上系统、虚拟机任务处理方法及设备、存储介质
US10467725B2 (en) Managing access to a resource pool of graphics processing units under fine grain control
US10275851B1 (en) Checkpointing for GPU-as-a-service in cloud computing environment
CN106844007B (zh) 一种基于空间复用的虚拟化方法与系统
EP2622470B1 (en) Techniques for load balancing gpu enabled virtual machines
US7971203B2 (en) Method, apparatus and system for dynamically reassigning a physical device from one virtual machine to another
US10109030B1 (en) Queue-based GPU virtualization and management system
CN107707622B (zh) 一种访问桌面云虚拟机的方法、装置及桌面云控制器
CN109726005B (zh) 用于管理资源的方法、服务器系统和计算机可读介质
WO2022179423A1 (zh) 虚拟化处理系统、方法、装置及设备
WO2023093843A1 (zh) 一种配置装置、调度装置及配置方法和调度方法
US20200174821A1 (en) System, method and computer program for virtual machine resource allocation
CN103744716A (zh) 一种基于当前vcpu调度状态的动态中断均衡映射方法
CN115988217B (zh) 一种虚拟化视频编解码系统、电子设备和存储介质
US10002016B2 (en) Configuration of virtual machines in view of response time constraints
WO2014199586A1 (en) Implementing capacity and user-based resource allocation for a shared adapter in a virtualized system
CN114691286A (zh) 服务器系统、虚拟机创建方法及装置
CN113296926B (zh) 一种资源分配方法、计算设备及存储介质
CN108028806A (zh) 网络功能虚拟化nfv网络中分配虚拟资源的方法和装置
CN113535319A (zh) 一种实现多rdma网卡虚拟化的方法、设备及存储介质
KR102001641B1 (ko) 가상화 환경에서의 gpu 자원 관리 방법 및 장치
KR20140125893A (ko) 가상화된 매니코어 서버의 작업분배 시스템과 그 방법 및 기록매체
CN115913953A (zh) 一种云资源加速方法、装置及其介质
CN111580935A (zh) 一种网络通信方法、装置、设备及存储介质
CN108182104B (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40056540

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant