CN107168771A - 一种非一致性内存访问架构下的虚拟机调度装置及方法 - Google Patents

一种非一致性内存访问架构下的虚拟机调度装置及方法 Download PDF

Info

Publication number
CN107168771A
CN107168771A CN201710272053.2A CN201710272053A CN107168771A CN 107168771 A CN107168771 A CN 107168771A CN 201710272053 A CN201710272053 A CN 201710272053A CN 107168771 A CN107168771 A CN 107168771A
Authority
CN
China
Prior art keywords
virtual machine
scheduling
algorithm
performance
module
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
CN201710272053.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.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
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 Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN201710272053.2A priority Critical patent/CN107168771A/zh
Publication of CN107168771A publication Critical patent/CN107168771A/zh
Priority to PCT/CN2017/106748 priority patent/WO2018196296A1/zh
Priority to US16/466,184 priority patent/US11204798B2/en
Pending legal-status Critical Current

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/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/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0284Multiple user address space allocation, e.g. using different base addresses
    • 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
    • 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/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
    • 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/45579I/O management, e.g. providing access to device drivers or storage
    • 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/45583Memory management, e.g. access or allocation
    • 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/45591Monitoring or debugging support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/25Using a specific main memory architecture
    • G06F2212/254Distributed memory
    • G06F2212/2542Non-uniform memory access [NUMA] architecture

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种非一致性内存访问架构下的虚拟机调度装置及其方法,所述方法包括以下步骤:所述性能监控模块获取宿主机NUMA拓扑信息,并通过内核PMU监控虚拟机性能事件;将所述宿主机NUMA拓扑信息和所述虚拟机性能事件传递给所述算法实现接口模块;所述算法实现接口模块调用算法,等待调度算法执行完毕后将调度算法得出的调度决策传递给虚拟机调度模块;所述虚拟机调度模块根据算法实现接口模块传递的调度决策对虚拟机VCPU和内存的调度;所述虚拟机调度完成后,跳转到继续对虚拟机进行性能监控。本发明所述方法只需关注NUMA调度优化算法的实现,无需操心虚拟机信息、性能等数据的收集和虚拟机的具体调度等细节,从而极大的提高研究者的研究效率。

Description

一种非一致性内存访问架构下的虚拟机调度装置及方法
技术领域
本发明涉及计算机虚拟化技术领域,尤其涉及一种非一致性内存访问架构下的虚拟机调度装置及方法。
背景技术
虚拟化是云计算关键技术之一。虚拟化技术可以将一台物理计算机***虚拟化为一台或多台虚拟计算机***。每个虚拟计算机***(简称为客户机或虚拟机)都拥有自己的虚拟硬件(如CPU、内存和设备等),来提供一个独立的虚拟机执行环境。而运行虚拟机的真实物理计算机***则成为宿主机。虚拟化技术由于其具有的容错性和高资源利用率而广泛应用在云计算和高性能计算等领域。目前比较有代表性的云计算提供商包括阿里云和亚马逊云等。
在虚拟化环境里,虚拟机监视器(Virtual Machine Management,VMM)是存在于硬件和操作***之间的一个软件管理层,其主要负责管理真实的物理资源,如CPU、内存及I/O设备等,并将底层的硬件资源抽象为对应的虚拟设备接口供虚拟机使用
与此同时,非一致性内存访问(Non-Uniform Memory Access,NUMA)架构因其可扩展性已经成为了现代服务器的主流架构。如图1所示,NUMA架构的基本特征是具有多个CPU模块,每个CPU模块由多个CPU核(如8个)组成,并且具有独立的本地内存、I/O插槽等。由于其节点之间通过互联模块(如Intel的Quick Path Interconnect)进行连接和信息交互,因此每个CPU可以访问整个***的内存。显然,访问本地内存的速度将远远高于访问远程内存(***内其它节点的内存)的速度。NUMA架构给虚拟机的性能优化带来了明显的挑战,因为宿主机的NUMA拓扑架构对于虚拟机来说往往是透明不可见的。
现在基本上所有的虚拟机监视器,包括Xen,KVM和VMware ESXi采用的方法都是尽量将一个虚拟机的虚拟CPU(VCPU)和所有的内存都调度到一个节点上来保持本地访问,但是这种方法存在很大的缺陷,因为***的负载均衡技术和其他技术会动态的平衡CPU和内存间的负载,导致原本的放置策略被干扰,最后使策略失效。因此,在NUMA架构下,如何对虚拟机的VCPU和内存进行调度优化,已成为如今的一个热门研究领域。
然而,研究人员在研究NUMA调度优化算法时,除了实现算法,还需要考虑如何在特定平台***上实现虚拟机性能信息、***NUMA拓扑信息等的收集,虚拟机VCPU和内存的调度等具体的细节。除此之外,在实现NUMA调度优化算法时,还需要考虑不同的VMM,比如XEN,KVM的接口的不同,这对于NUMA调度优化算法研究来说,是很大的负担,严重影响了研究者研究NUMA调度优化算法的效率。
因此,本领域的技术人员致力于开发一种非一致性内存访问架构下的虚拟机调度装置及方法,在NUMA架构下,通过发明的一种非一致性内存访问架构下的虚拟机调度装置,研究者只需关注NUMA调度优化算法的实现,无需操心虚拟机信息、性能等数据的收集和虚拟机的具体调度等细节,从而极大的提高研究者的研究效率。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是开发一种非一致性内存访问架构下的虚拟机调度装置及方法,在NUMA架构下,通过发明的一种非一致性内存访问架构下的虚拟机调度装置,研究者只需关注NUMA调度优化算法的实现,无需操心虚拟机信息、性能等数据的收集和虚拟机的具体调度等细节,从而极大的提高研究者的研究效率。
为实现上述目的,本发明提供了一种非一致性内存访问架构下的虚拟机调度装置,包括性能监控模块、算法实现接口模块和虚拟机调度模块;其中,
性能监控模块被设置为通过使用操作***内核的性能监控单元来监控特定的性能事件;
算法实现接口模块被设置为通过暴露虚拟机调度函数接口给研究者实现,并将性能监控模块的信息传递给算法实现者,算法实现者通过函数返回调度决策;
虚拟机调度模块被设置为根据算法实现接口模块返回的调度决策进行相应的虚拟机VCPU和虚拟机内存的调度。
进一步地,性能监控模块监控的性能事件包括虚拟机的CPU使用率、内存使用率、缓存丢失率和I/O性能数据。
本发明还提供了一种非一致性内存访问架构下的虚拟机调度装置的方法,包括以下步骤:
步骤1、性能监控模块获取宿主机NUMA拓扑信息,并通过内核PMU监控虚拟机性能事件;
步骤2、将宿主机NUMA拓扑信息和虚拟机性能事件传递给算法实现接口模块;
步骤3、算法实现接口模块调用算法,等待调度算法执行完毕后将调度算法得出的调度决策传递给虚拟机调度模块;
步骤4、虚拟机调度模块根据算法实现接口模块传递的调度决策对虚拟机VCPU和内存的调度;
步骤5、虚拟机调度完成后,跳转到步骤1中继续对虚拟机进行性能监控。
进一步地,调度算法包括:贪心算法。
进一步地,宿主机NUMA拓扑信息包括NUMA节点数目、各个NUMA节点之间的距离以及I/O设备所连接的NUMA节点。
进一步地,步骤1具体包括通过虚拟机监视器VMM实时监控虚拟机的CPU使用率、内存使用率、I/O使用率等性能事件,通过操作***内核的性能监控单元实时监控操作***的缓存丢失率、虚拟机指令执行的每秒周期数等性能事件,并获得宿主机的非一致性内存访问架构的拓扑结构。
本发明有以下技术效果
(1)考虑了I/O设备的和处理器节点的亲和性,在传统的建模方法上添加了一个维度,***更加能够反映出当今高性能I/O环境下的I/O设备的重要性;
(2)通过使用内核PMU来监控虚拟机性能事件,极大地减少了虚拟机性能监控的开销;
(3)通过将虚拟机调度装置分为三个模块,减少了模块之间的耦合度,每个模块之间可以独立设计开发,提高了研究者的研究开发效率。
以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
附图说明
图1是本发明的一个较佳实施例的一种非一致性内存访问架构下的虚拟机调度装置的非一致性内存访问架构示意图
图2是本发明的一个较佳实施例的一种非一致性内存访问架构下的虚拟机调度装置的***架构示意图。
图3是本发明的一个较佳实施例的一种非一致性内存访问架构下的虚拟机调度方法的运行流程示意图。
具体实施方式
如图2所示,本发明的一较佳实施例提供了一种非一致性内存访问架构下的虚拟机调度装置,其特征在于,包括性能监控模块、算法实现接口模块和虚拟机调度模块;其中,性能监控模块被设置为通过使用操作***内核的性能监控单元来监控特定的性能事件;算法实现接口模块被设置为通过暴露虚拟机调度函数接口给研究者实现,并将性能监控模块的信息传递给算法实现者,算法实现者通过函数返回调度决策;虚拟机调度模块被设置为根据算法实现接口模块返回的调度决策进行相应的虚拟机VCPU和虚拟机内存的调度。
性能监控模块监控的性能事件包括虚拟机的CPU使用率、内存使用率、缓存丢失率和I/O性能数据。
如图3所示,本发明的一较佳实施例提供了一种非一致性内存访问架构下的虚拟机调度装置的方法,其特征在于,包括以下步骤:
步骤1、性能监控模块获取宿主机NUMA拓扑信息,并通过内核PMU监控虚拟机性能事件;
步骤2、将宿主机NUMA拓扑信息和虚拟机性能事件传递给算法实现接口模块;宿主机NUMA拓扑信息包括NUMA节点数目、各个NUMA节点之间的距离以及I/O设备所连接的NUMA节点。
步骤3、算法实现接口模块调用算法,等待调度算法执行完毕后将调度算法得出的调度决策传递给虚拟机调度模块;
步骤4、虚拟机调度模块根据算法实现接口模块传递的调度决策对虚拟机VCPU和内存的调度;
步骤5、虚拟机调度完成后,跳转到步骤1中继续对虚拟机进行性能监控。
其中,所述调度算法为贪心算法,其算法流程包括:
(1)算法输入为所述性能监控模块传递的宿主机NUMA拓扑信息和虚拟机性能
事件;
(2)通过以下公式判断虚拟机是否是I/O密集型虚拟机:
if PacketsPerSecondVM>threshhold
其中,PacketsPerSecondVM为所述性能监控模块所监控出来的虚拟机的每秒收发
网络数据包的数目,threshhold为预定义的一个阈值。
(3)如果通过公式判断出虚拟机是I/O密集型虚拟机,则进一步通过以下公式判
断应该将虚拟机调度到哪个NUMA节点;
其中,n表示某个NUMA节点,N表示所述性能监控模块所提供的NUMA节点数目,Mem[n]表示虚拟机分布在NUMA节点n的内存页数目,该数据也是由所述性能监控模块所提供。ANMMatrix(n)则是所述性能监控模块所提供的NUMA节点之间的距离。对于N个NUMA节点,算法选取出通过上述公式计算得到的值最大的节点,并将虚拟机调度到该节点。
(4),如果虚拟机不是I/O密集型虚拟机,则通过以下公式判断应该将虚拟机调度到哪个NUMA节点:
其中,N表示宿主机的NUMA节点数目,CPU[c]表示虚拟机在节点c的CPU使用率,Mem[n]表示虚拟机分布在NUMA节点n的内存页数目,ANMMatrix(n)则是所述性能监控模块所提供的NUMA节点之间的距离。对于N个NUMA节点,算法通过上述公式计算得到每个节点的值,然后选取值最大的节点并将虚拟机调度到该节点。
(5)算法返回根据上述流程所得出的虚拟机调度决策。
其中,步骤1具体包括通过虚拟机监视器VMM实时监控虚拟机的CPU使用率、内存使用率、I/O使用率等性能事件,通过操作***内核的性能监控单元实时监控操作***的缓存丢失率、虚拟机指令执行的每秒周期数等性能事件,并获得宿主机的非一致性内存访问架构的拓扑信息。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

Claims (7)

1.一种非一致性内存访问架构下的虚拟机调度装置,其特征在于,包括性能监控模块、算法实现接口模块和虚拟机调度模块;其中,
所述性能监控模块被设置为通过使用操作***内核的性能监控单元来监控特定的性能事件;
所述算法实现接口模块被设置为通过暴露虚拟机调度函数接口给研究者实现,并将所述性能监控模块的信息传递给算法实现者,所述算法实现者通过函数返回调度决策;
所述虚拟机调度模块被设置为根据所述算法实现接口模块返回的调度决策进行相应的虚拟机VCPU和虚拟机内存的调度。
2.如权利要求1所述的一种非一致性内存访问架构下的虚拟机调度装置,其特征在于,所述性能监控模块监控的性能事件包括虚拟机的CPU使用率、内存使用率、缓存丢失率和I/O性能数据。
3.如权利要求1所述的一种非一致性内存访问架构下的虚拟机调度装置,其特征在于,所述性能监控模块将监测到的性能事件包括虚拟机的CPU使用率、内存使用率、缓存丢失率和I/O性能数据传递给所述算法实现接口模块。
4.一种利用权利要求1-3所述的非一致性内存访问架构下的虚拟机调度装置的方法,其特征在于,包括以下步骤:
步骤1、所述性能监控模块获取宿主机NUMA拓扑信息,并通过内核PMU监控虚拟机性能事件;
步骤2、将所述宿主机NUMA拓扑信息和所述虚拟机性能事件传递给所述算法实现接口模块;
步骤3、所述算法实现接口模块调用算法,等待调度算法执行完毕后将调度算法得出的调度决策传递给虚拟机调度模块;
步骤4、所述虚拟机调度模块根据算法实现接口模块传递的调度决策对虚拟机VCPU和内存的调度;
步骤5、所述虚拟机调度完成后,跳转到步骤1中继续对虚拟机进行性能监控。
5.如权利要求4所述的一种非一致性内存访问架构下的虚拟机调度方法,其特征在于,所述调度算法包括贪心算法。
6.如权利要求4所述的一种非一致性内存访问架构下的虚拟机调度方法,其特征在于,所述宿主机NUMA拓扑信息包括NUMA节点数目、各个NUMA节点之间的距离以及I/O设备所连接的NUMA节点。
7.如权利要求4所述的一种非一致性内存访问架构下的虚拟机调度方法,其特征在于,所述步骤1具体包括通过虚拟机监视器VMM实时监控虚拟机的CPU使用率、内存使用率、I/O使用率等性能事件,通过操作***内核的所述性能监控单元实时监控操作***的缓存丢失率、虚拟机指令执行的每秒周期数等性能事件,并获得宿主机的非一致性内存访问架构的拓扑结构。
CN201710272053.2A 2017-04-24 2017-04-24 一种非一致性内存访问架构下的虚拟机调度装置及方法 Pending CN107168771A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201710272053.2A CN107168771A (zh) 2017-04-24 2017-04-24 一种非一致性内存访问架构下的虚拟机调度装置及方法
PCT/CN2017/106748 WO2018196296A1 (zh) 2017-04-24 2017-10-18 一种非一致性内存访问架构下的虚拟机调度装置及方法
US16/466,184 US11204798B2 (en) 2017-04-24 2017-10-18 Apparatus and method for virtual machine scheduling in non-uniform memory access architecture

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710272053.2A CN107168771A (zh) 2017-04-24 2017-04-24 一种非一致性内存访问架构下的虚拟机调度装置及方法

Publications (1)

Publication Number Publication Date
CN107168771A true CN107168771A (zh) 2017-09-15

Family

ID=59812369

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710272053.2A Pending CN107168771A (zh) 2017-04-24 2017-04-24 一种非一致性内存访问架构下的虚拟机调度装置及方法

Country Status (3)

Country Link
US (1) US11204798B2 (zh)
CN (1) CN107168771A (zh)
WO (1) WO2018196296A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107967180A (zh) * 2017-12-19 2018-04-27 上海交通大学 基于numa虚拟化环境下资源全局亲和度网络优化方法和***
WO2018196296A1 (zh) * 2017-04-24 2018-11-01 上海交通大学 一种非一致性内存访问架构下的虚拟机调度装置及方法
CN109117247A (zh) * 2018-07-18 2019-01-01 上海交通大学 一种基于异构多核拓扑感知的虚拟资源管理***及方法
CN109918132A (zh) * 2019-03-26 2019-06-21 龙芯中科技术有限公司 一种指令安装方法、装置、电子设备及存储介质
CN113434371A (zh) * 2021-08-26 2021-09-24 阿里云计算有限公司 内存访问信息的采集方法、计算设备及存储介质
CN113835826A (zh) * 2021-08-13 2021-12-24 奇安信科技集团股份有限公司 虚拟机处理方法、装置、电子设备、程序产品及介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190065333A1 (en) * 2017-08-23 2019-02-28 Unisys Corporation Computing systems and methods with functionalities of performance monitoring of the underlying infrastructure in large emulated system
CN113127146A (zh) * 2020-01-16 2021-07-16 上海盛霄云计算技术有限公司 一种异构动态随机调度方法及***
CN114090223A (zh) * 2020-08-24 2022-02-25 北京百度网讯科技有限公司 访存请求调度方法、装置、设备以及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106293881A (zh) * 2016-08-11 2017-01-04 上海交通大学 一种基于非一致性i/o访问构架的性能监控器及其监控方法
CN106293944A (zh) * 2016-08-11 2017-01-04 上海交通大学 虚拟化多核环境下基于非一致性i/o访问***和优化方法
CN106354543A (zh) * 2016-08-11 2017-01-25 上海交通大学 一种基于虚拟机和宿主机内存地址转换的numa内存迁页方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090077550A1 (en) * 2007-09-13 2009-03-19 Scott Rhine Virtual machine schedular with memory access control
US9535767B2 (en) * 2009-03-26 2017-01-03 Microsoft Technology Licensing, Llc Instantiating a virtual machine with a virtual non-uniform memory architecture
EP2290562A1 (en) * 2009-08-24 2011-03-02 Amadeus S.A.S. Segmented main-memory stored relational database table system with improved collaborative scan algorithm
US8443376B2 (en) * 2010-06-01 2013-05-14 Microsoft Corporation Hypervisor scheduler
US9465669B2 (en) * 2013-08-13 2016-10-11 Vmware, Inc. NUMA scheduling using inter-vCPU memory access estimation
US9800523B2 (en) * 2014-08-22 2017-10-24 Shanghai Jiao Tong University Scheduling method for virtual processors based on the affinity of NUMA high-performance network buffer resources
US10255091B2 (en) * 2014-09-21 2019-04-09 Vmware, Inc. Adaptive CPU NUMA scheduling
CN107168771A (zh) * 2017-04-24 2017-09-15 上海交通大学 一种非一致性内存访问架构下的虚拟机调度装置及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106293881A (zh) * 2016-08-11 2017-01-04 上海交通大学 一种基于非一致性i/o访问构架的性能监控器及其监控方法
CN106293944A (zh) * 2016-08-11 2017-01-04 上海交通大学 虚拟化多核环境下基于非一致性i/o访问***和优化方法
CN106354543A (zh) * 2016-08-11 2017-01-25 上海交通大学 一种基于虚拟机和宿主机内存地址转换的numa内存迁页方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周远远: "虚拟机环境下基于PMU的NUMA性能剖析方法及工具", 《硕士学位论文》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018196296A1 (zh) * 2017-04-24 2018-11-01 上海交通大学 一种非一致性内存访问架构下的虚拟机调度装置及方法
US11204798B2 (en) 2017-04-24 2021-12-21 Shanghai Jiao Tong University Apparatus and method for virtual machine scheduling in non-uniform memory access architecture
CN107967180A (zh) * 2017-12-19 2018-04-27 上海交通大学 基于numa虚拟化环境下资源全局亲和度网络优化方法和***
CN107967180B (zh) * 2017-12-19 2019-09-10 上海交通大学 基于numa虚拟化环境下资源全局亲和度网络优化方法和***
CN109117247A (zh) * 2018-07-18 2019-01-01 上海交通大学 一种基于异构多核拓扑感知的虚拟资源管理***及方法
CN109117247B (zh) * 2018-07-18 2021-12-07 上海交通大学 一种基于异构多核拓扑感知的虚拟资源管理***及方法
CN109918132A (zh) * 2019-03-26 2019-06-21 龙芯中科技术有限公司 一种指令安装方法、装置、电子设备及存储介质
CN113835826A (zh) * 2021-08-13 2021-12-24 奇安信科技集团股份有限公司 虚拟机处理方法、装置、电子设备、程序产品及介质
CN113434371A (zh) * 2021-08-26 2021-09-24 阿里云计算有限公司 内存访问信息的采集方法、计算设备及存储介质

Also Published As

Publication number Publication date
US20200073703A1 (en) 2020-03-05
US11204798B2 (en) 2021-12-21
WO2018196296A1 (zh) 2018-11-01

Similar Documents

Publication Publication Date Title
CN107168771A (zh) 一种非一致性内存访问架构下的虚拟机调度装置及方法
CN104199718B (zh) 一种基于numa高性能网络缓存资源亲和度的虚拟处理器的调度方法
Yang et al. The TianHe-1A supercomputer: its hardware and software
Singh et al. Task scheduling in cloud computing
Jerger et al. An evaluation of server consolidation workloads for multi-core designs
CN107967180B (zh) 基于numa虚拟化环境下资源全局亲和度网络优化方法和***
CN103780655A (zh) 一种消息传递接口任务和资源调度***及方法
CN104615480A (zh) 基于numa高性能网络处理器负载的虚拟处理器调度方法
CN106293944A (zh) 虚拟化多核环境下基于非一致性i/o访问***和优化方法
CN103763403B (zh) 报文流量控制方法及相关装置和计算节点
Li et al. Analysis of NUMA effects in modern multicore systems for the design of high-performance data transfer applications
Yang et al. Implementation of GPU virtualization using PCI pass-through mechanism
Kim et al. Aurora: Virtualized accelerator orchestration for multi-tenant workloads
Coppola et al. From embedded multi-core socs to scale-out processors
CN103955396A (zh) 一种基于共生系数平衡的虚拟机调度方法
Quan et al. A system-level simulation framework for evaluating task migration in MPSoCs
CN109117247B (zh) 一种基于异构多核拓扑感知的虚拟资源管理***及方法
Nikounia et al. Gem5v: a modified gem5 for simulating virtualized systems
Shen et al. KubeGPU: efficient sharing and isolation mechanisms for GPU resource management in container cloud
Zhang et al. Repeatable multi-dimensional virtual network embedding in cloud service platform
Prathap et al. Hybrid optimization for virtual machine migration of utilizing healthcare text in the cloud
CN104951369B (zh) 消除热点资源竞争的方法和装置
Ost et al. Enabling adaptive techniques in heterogeneous mpsocs based on virtualization
García-Guirado et al. Virtual-GEMS: An infrastructure to simulate virtual machines
Matsuo et al. A file I/O system for many-core based clusters

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
CB03 Change of inventor or designer information

Inventor after: Guan Haibing

Inventor after: Ma Ruhui

Inventor after: Li Jian

Inventor after: Qi Zhengwei

Inventor after: Tan Junsheng

Inventor before: Li Jian

Inventor before: Tan Junsheng

Inventor before: Ma Ruhui

Inventor before: Qi Zhengwei

Inventor before: Guan Haibing

CB03 Change of inventor or designer information
RJ01 Rejection of invention patent application after publication

Application publication date: 20170915

RJ01 Rejection of invention patent application after publication