一种虚拟化加速方法、装置、存储器及设备制造方法及图纸

技术编号:23763783 阅读:44 留言:0更新日期:2020-04-11 18:46
本发明专利技术公开了一种虚拟化加速方法、装置、存储器及设备,其中,将每个高速缓存存储器Cache带上标签,其中,所述高速缓存存储器Cache为运行在系统中的虚拟机在执行地址转换时形成;通过解析所述标签,为执行操作的所述虚拟机调用与所述标签对应的所述高速缓存存储器Cache。其技术方案的有益效果是,克服了现有的虚拟机在操作时需要及时清除和重新加载高速缓存存储器Cache带来的处理时间较长,严重影响CPU性能的问题。

A virtualization acceleration method, device, memory and device

【技术实现步骤摘要】
一种虚拟化加速方法、装置、存储器及设备
本专利技术涉及通信
,尤其涉及一种虚拟化加速方法、装置、存储器及设备。
技术介绍
内存虚拟化,指通过内存虚拟化共享物理系统内存,动态分配给虚拟机。客户操作系统继续控制虚拟地址到客户内存物理地址的映射(VA->PA),但是客户操作系统不能直接访问实际机器内存,因此Hypervisor层需要负责映射客户物理内存到实际机器内存(PA->MA),这个过程即GVA(GuestVirtualAddress)->GPA(GuestPhysicalAddress)->HPA(HostPhysicalAddress)。Hypervisor层根据请求启动并配置虚拟机时,根据请求附加标签的QoS需求,现有采用纯软件方式如:“影子页表”,或者硬件辅助方式如:EPT(ExtendedPageTable)机制来实现。由于在虚拟化环境中,一个逻辑CPU可以运行来自不同虚拟机的多个虚拟CPU,即VCPU,为了防止多个不同的VCPU之间,VCPU和逻辑CPU之间的地址转换cache(TLB和Paging-StructureCache)之间相互干扰,在每次进行VMEntry(虚拟机加载)或者VMExit(虚拟机退出)操作的时候,都需要把这些地址转换所用到的cache清掉,再重新加载目标CPU/VCPU的地址转换Cache,但是Cache的清除和重新加载是一个比较耗时的操作,会影响到CPU/vCPU的性能。
技术实现思路
针对现有的系统在虚拟机加载和退出操作时存在的上述问题,现提供一种旨在实现为系统中运行的虚拟机保留独有的高速缓存存储器Cache,在克服了现有的虚拟机在操作时需要及时清除和重新加载高速缓存存储器Cache带来的处理时间较长,严重影响CPU性能的问题的虚拟化加速方法、装置、存储器及设备。具体技术方案如下:一种虚拟化加速方法,其中,包括以下步骤:将每个高速缓存存储器Cache带上标签,其中,所述高速缓存存储器Cache为运行在系统中的虚拟机在执行地址转换时形成;解析所述标签,为执行操作的所述虚拟机调用与所述标签对应的所述高速缓存存储器Cache。优选的,带有标签的所述高速缓存存储器Cache在空间上彼此保持独立。优选的,为当前的所述虚拟机调用与所述标签对应的所述高速缓存存储器Cache方法包括:在系统加载所述虚拟机后,系统逻辑CPU根据所述标签为所述虚拟机分配对应的所述高速缓存存储器Cache。优选的,所述标签包括,所述虚拟机内的应用调用所述高速缓存存储器Cache的优先级。优选的,记录所述虚拟机中的应用调用所述高速缓存存储器Cache的失败次数,若计算的失败率高于一预定门限值时,动态调整当前的所述应用调用所述高速缓存存储器Cache的优先级。还包括一种虚拟化加速装置,其中,包括:标签模块,用以为每个高速缓存存储器Cache带上标签,其中,所述高速缓存存储器Cache为运行在系统中的虚拟机在执行地址转换时形成;解析模块,用以解析所述标签;调用模块,用以根据解析结果,为执行操作的加载的所述虚拟机调用与所述标签对应的所述高速缓存存储器Cache。优选的,包括,所述标签模块还用以设置所述虚拟机内的应用调用所述高速缓存存储器Cache的优先级。优选的,包括:统计模块,用以记录所述虚拟机中的应用调用所述高速缓存存储器Cache的失败次数;动态调整模块,若计算的失败率高于一预定门限值时,动态调整当前的所述应用调用所述高速缓存存储器Cache的优先级。还包括一种存储器,其中,执行以下软件,该软件用以执行以下步骤:将每个高速缓存存储器Cache带上标签,其中,所述高速缓存存储器Cache为运行在系统中的虚拟机在执行地址转换时形成;通过解析所述标签,为执行操作的所述虚拟机调用与所述标签对应的所述高速缓存存储器Cache。还包括一种设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现上述交互方法的步骤。上述技术方案的有益效果是:通过标签的方式对高速缓存存储器Cache资源进行管理,标签具有自上而下的传递性,上层软件打好标签后,函数调用过程中将一直携带标签,硬件CPU能够解析并执行该标签对应的策略,使每个运行在系统中的虚拟机保留独有的高速缓存存储器Cache,如此便可以克服VCPU/CPU所使用到的地址转换高速缓存存储器Cache混到一起,每次进行VMEntry或者VMExit的时,无需将地址转换的高速缓存存储器Cachee清除掉,可调用之前保留着的Cache,可有效地提高CPU性能。附图说明图1为本专利技术的一种虚拟化加速方法的实施例的流程示意图;图2为本专利技术的一种虚拟化加速装置的实施例的结构示意图;图3为本专利技术的一种虚拟化加速装置的另一实施例的结构示意图;图4为本专利技术的一种设备的实施例的结构示意图。上述附图标记表示:1、标签模块;2、解析模块;3、调用模块;4、统计模块;5、动态调整模块;A、存储器;B、处理器。具体实施方式下面结合附图和具体实施例对本专利技术作进一步说明,但不作为本专利技术的限定。需要说明的是,在不冲突的前提下,以下描述的实施例以及实施例中的技术特征可以相互组合。本专利技术的技术方案中提供一种虚拟化加速方法,其中,包括以下步骤:将每个高速缓存存储器Cache带上标签,其中,高速缓存存储器Cache为运行在系统中的虚拟机在执行地址转换时形成;解析标签,为执行操作的虚拟机调用与标签对应的高速缓存存储器Cache。如图1所示,具体的步骤包括:步骤S1、将每个高速缓存存储器Cache带上标签,其中,高速缓存存储器Cache为运行在系统中的虚拟机在执行地址转换时形成;步骤S2、解析标签,为执行操作的虚拟机调用与标签对应的高速缓存存储器Cache。上述技术方案中,可通过上层软件打好标签,其中,标签具有自上而下的传递性,上层软件打好标签后,函数调用过程中将一直携带标签,硬件CPU能够解析并执行该标签对应的策略,通过该标签,克服了现有的运行在系统的虚拟机在启动或者退出时,需要执行重新执行地址转换形成高速缓存存储器Cache,或者将形成的高速缓存存储器Cache清除带来的处理时间过长,严重影响CPU性能的问题。在一种较优的实施方式中,带有标签的高速缓存存储器Cache在空间上彼此保持独立。上述技术方案中,由于每个带有标签的高速缓存存储器Cache在空间上彼此保持独立,因此VCPU/CPU使用各自独有的高速缓存存储器Cache,进而可防止多个不同的VCPU之间,VCPU和逻辑CPU之间的地址转换cache(TLB和Paging-StructureCache)之间相互干扰。在一种较优的实施方式中,为当前的虚拟机调用与标签对应的高速缓存存储器Ca本文档来自技高网...

【技术保护点】
1.一种虚拟化加速方法,其特征在于,包括以下步骤:/n将每个高速缓存存储器Cache带上标签,其中,所述高速缓存存储器Cache为运行在系统中的虚拟机在执行地址转换时形成;/n通过解析所述标签,为执行操作的所述虚拟机调用与所述标签对应的所述高速缓存存储器Cache。/n

【技术特征摘要】
1.一种虚拟化加速方法,其特征在于,包括以下步骤:
将每个高速缓存存储器Cache带上标签,其中,所述高速缓存存储器Cache为运行在系统中的虚拟机在执行地址转换时形成;
通过解析所述标签,为执行操作的所述虚拟机调用与所述标签对应的所述高速缓存存储器Cache。


2.根据权利要求1所述的虚拟化加速方法,其特征在于,带有标签的所述高速缓存存储器Cache在空间上彼此保持独立。


3.根据权利要求1所述的虚拟化加速方法,其特征在于,为当前的所述虚拟机调用与所述标签对应的所述高速缓存存储器Cache方法包括:
在系统加载所述虚拟机后,系统逻辑CPU根据所述标签为所述虚拟机分配对应的所述高速缓存存储器Cache。


4.根据权利要求1所述的虚拟化加速方法,其特征在于,所述标签包括,所述虚拟机内的应用调用所述高速缓存存储器Cache的优先级。


5.根据权利要求1或4所述的虚拟化加速方法,其特征在于,记录所述虚拟机中的应用调用所述高速缓存存储器Cache的失败次数,若计算的失败率高于一预定门限值时,动态调整当前的所述应用调用所述高速缓存存储器Cache的优先级。


6.一种虚拟化加速装置,其特征在于,包括:
标签模块,用以为每个高速缓存存储器Cache带...

【专利技术属性】
技术研发人员:姜哲邹仕洪朱睿李翔
申请(专利权)人:北京元心科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1