WO2012103728A1 - 热点域虚拟机cpu调度方法及虚拟机系统 - Google Patents

热点域虚拟机cpu调度方法及虚拟机系统 Download PDF

Info

Publication number
WO2012103728A1
WO2012103728A1 PCT/CN2011/076650 CN2011076650W WO2012103728A1 WO 2012103728 A1 WO2012103728 A1 WO 2012103728A1 CN 2011076650 W CN2011076650 W CN 2011076650W WO 2012103728 A1 WO2012103728 A1 WO 2012103728A1
Authority
WO
WIPO (PCT)
Prior art keywords
cpu
virtual
virtual machine
hotspot
hotspot domain
Prior art date
Application number
PCT/CN2011/076650
Other languages
English (en)
French (fr)
Inventor
洪凯星
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to PCT/CN2011/076650 priority Critical patent/WO2012103728A1/zh
Priority to EP11857577.8A priority patent/EP2698711B1/en
Priority to CN2011800009763A priority patent/CN102317917B/zh
Publication of WO2012103728A1 publication Critical patent/WO2012103728A1/zh
Priority to US14/143,485 priority patent/US9519499B2/en

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
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Definitions

  • the embodiments of the present invention relate to computer technologies, and in particular, to a hotspot domain virtual machine CPU scheduling method and a virtual machine system. Background technique
  • Virtualization technology is a decoupling method that separates the underlying hardware devices from the upper operating system and applications. It introduces the Virtual Machine Monitor (VMM) layer to directly manage the underlying hardware resources and create the underlying hardware.
  • VMM Virtual Machine Monitor
  • An unrelated virtual machine (VM) is used by upper operating systems and applications.
  • the virtual machine can be divided into a hotspot domain virtual machine and a general domain virtual machine.
  • the common domain virtual machine is created by the user and runs the virtual machine of the common task.
  • the hotspot domain virtual machine plays a key role in the system and is used by the common domain virtual machine. Depended on.
  • the hotspot domain virtual machine features are different. For example, in some systems, there is a drive domain virtualization, and the common domain virtualization realizes interaction with physical hardware through the drive domain virtualization.
  • a virtual machine does not have real physical resources.
  • the CPU assigned to the virtual machine is not a real physical CPU, but a virtual CPU (Virtual CPU Processing Unit, vCPU for short) assigned to the virtual machine by the VMM.
  • vCPU Virtual CPU Processing Unit
  • CPU resources have dual scheduling.
  • the internal operating system (OS) scheduler of the virtual machine dispatches threads to the vCPU.
  • the VMM scheduler dispatches the vCPU to the physical CPU. .
  • the implementation of the OS scheduler inside the virtual machine is related to the specific OS and cannot be changed. Therefore, the VMM scheduler has a significant impact on the performance of the entire virtual machine system.
  • the scheduling policy commonly used by the VMM scheduler is to participate in the scheduling of the vCPUs of the common domain virtual machine and the hotspot domain virtual machine. Therefore, the phenomenon that the common domain virtual machine preempts the virtual machine CPU time of the hotspot domain may occur, resulting in the hotspot domain virtual machine. Real-time performance is worse, and it also makes ordinary domain virtual The machine's request is not responded to in a timely manner, especially when the number of virtual machines is large, which may cause a sharp drop in overall performance.
  • Another scheduling strategy is that the VMM scheduler allocates fixed physical CPU resources to the hotspot domain virtual machine. The default number of vCPUs is related to the number of real physical CPUs.
  • the embodiment of the invention provides a hotspot domain virtual machine CPU scheduling method and a virtual machine system, which are used to solve the defects of the virtual machine system CPU resource utilization and system performance in the prior art.
  • An embodiment of the present invention provides a CPU scheduling method for a hotspot domain virtual machine. Each virtual CPU of the hotspot domain virtual machine is bound to a different physical CPU, and the method includes:
  • the usage information of the virtual CPU of the hotspot domain virtual machine includes the virtual CPU utilization rate of the hotspot domain virtual machine Determining the virtual CPU usage time occupancy rate of the hotspot domain virtual machine; determining, according to the virtual CPU comprehensive usage rate and the maximum number of virtual CPUs allocated to the hotspot domain virtual machine, increasing or decreasing at least the hotspot domain virtual machine After the online virtual CPU is added, the virtual CPU of the common domain virtual machine on the running queue of the physical CPU bound to the online virtual CPU is adjusted, so that the online virtual CPU is scheduled on the physical CPU, and The virtual CPU of the ordinary domain virtual machine cannot be scheduled on the physical CPU;
  • the virtual CPU of the hotspot domain virtual machine on the running queue of the physical CPU bound to the offline virtual CPU is adjusted, and the virtual CPU of the normal domain virtual machine is resumed and scheduled on the physical CPU.
  • the embodiment of the invention provides a virtual machine system, including a hotspot domain virtual machine, a general domain virtual machine, and a virtual machine monitor;
  • the virtual machine monitor is configured to respectively bind different physical CPUs for each virtual CPU of the hotspot domain virtual machine;
  • the hotspot domain virtual machine is configured to determine, according to the used information of the virtual CPU of the hotspot domain virtual machine, the hotspot domain virtual machine, the virtual CPU comprehensive usage rate of the hotspot domain virtual machine; according to the virtual CPU comprehensive usage rate And the maximum number of virtual CPUs allocated to the hotspot domain virtual machine, the hotspot domain virtual machine increases or decreases at least one online virtual CPU; and the usage information of the virtual CPU includes virtual CPU utilization of the hotspot domain virtual machine Rate and virtual CPU usage time occupancy rate of the hotspot domain virtual machine;
  • the virtual machine monitor is further configured to: after adding the online virtual CPU, the virtual machine scheduler adjusts and schedules the online virtual CPU on the physical CPU, and disables the virtual CPU of the common domain virtual machine in the physical Scheduling on the CPU;
  • the virtual machine monitor is further configured to reduce the online virtual CPU, and the virtual machine scheduler adjusts with the CPU, so that the virtual CPU of the ordinary domain virtual machine is scheduled on the physical CPU.
  • the hotspot domain virtual machine dynamically adjusts the online virtual CPU number of the hotspot domain virtual machine according to the usage information of the virtual CPU.
  • the virtual CPU load of the hotspot virtual machine is high, the online virtual CPU is added to the hotspot virtual machine.
  • the VMM allows the added online virtual CPU to exclusively bind the bound physical CPU resources, so that the online virtual CPU of the common domain virtual machine cannot be in the virtual CPU.
  • the physical CPU is scheduled on the physical CPU.
  • the virtual CPU of the hotspot domain virtual machine can preferentially use the physical CPU resource before the virtual CPU of the hot domain virtual machine, so that the request of the virtual CPU of the hotspot virtual machine can be timely responded, thereby avoiding the common
  • the virtual CPU of the domain virtual machine waits for the phenomenon of the hotspot domain virtual machine to improve the overall performance of the virtual system. After the virtual CPU load of the hotspot virtual machine is low, the virtual CPU of the hotspot domain virtual machine cancels the exclusive use of the physical CPU, so that the virtual CPU of the common domain virtual machine can be used. Participate in the scheduling of physical CPUs, improve the performance of common domain virtual machines, and avoid Waste of CPU resources.
  • FIG. 1A is a flowchart of a method for scheduling a CPU of a hotspot domain virtual machine according to an embodiment of the present invention
  • FIG. 1B is a schematic diagram of a virtual machine architecture according to an embodiment of the present invention
  • FIG. 2 is a flowchart of another method for scheduling a CPU of a hotspot virtual machine according to an embodiment of the present invention
  • FIG. 3 is a schematic structural diagram of a virtual machine system according to an embodiment of the present invention
  • FIG. 4 is a schematic structural diagram of another virtual machine system according to an embodiment of the present invention. detailed description
  • the hotspot domain virtual machine CPU scheduling method dynamically adjusts the number of vCPUs of the hotspot domain virtual machine according to the system pressure, and allocates exclusive physical CPU resources to it.
  • FIG. 1A is a flowchart of a method for scheduling a CPU of a hotspot domain virtual machine according to an embodiment of the present invention.
  • FIG. 1B is a schematic diagram of a virtual machine architecture according to an embodiment of the present invention. As shown in Figure 1B, the VMM directly manages the underlying component resources and creates VMs that are independent of the underlying hardware for use by the upper operating system and applications. Each VM includes an APPS (application) and an OS scheduler. The VM includes a hotspot domain virtual machine and multiple common domain virtual machines, and the hotspot domain virtual machine is each common domain virtual machine. Virtual machines that are all dependent. The virtual machine's vCPU is divided into online and offline states.
  • the online vCPU can be used by the virtual machine's OS, and the VMM dispatches it to the physical CPU.
  • the online vCPU after the thread is allocated is a non-idle online vCPU, and the online vCPU without the assigned thread is an idle online vCPU.
  • each vCPU of the hotspot domain virtual machine is bound with a different physical CPU, that is, each vCPU of the hotspot domain virtual machine is corresponding to the physical CPU.
  • the vCPU of a hotspot virtual machine can only run on the bound physical CPU. If the vCPU of the hotspot virtual machine is offline, the VMM can temporarily allocate the physical CPU corresponding to the vCPU to the vCPU of the common domain virtual machine. Once the vCPU goes online (from offline to online), the vCPU of the common domain virtual machine cannot use the vCPU. The physical CPU corresponding to the vCPU.
  • this embodiment includes:
  • Step 11 According to the statistics of the vCPU usage information of the hotspot domain virtual machine, the hotspot domain virtual machine determines the vCPU comprehensive usage rate of the hotspot domain virtual machine; the vCPU usage information includes the vCPU utilization rate of the hotspot domain virtual machine and the hotspot domain virtual machine. The vCPU usage time occupancy rate.
  • the hotspot domain virtual machine monitors the vCPU usage information of the hotspot domain virtual machine in real time, including the vCPU utilization of the hotspot domain virtual machine from the OS scheduler of the hotspot domain virtual machine and the use of all vCPUs of the hotspot domain virtual machine from the VMM.
  • the time occupancy rate determines the vCPU comprehensive usage rate of the hotspot domain virtual machine based on the vCPU utilization rate and the vCPU usage time occupancy rate.
  • the vCPU usage time occupancy rate of the hotspot domain virtual machine may be determined according to the sum of the running time of all vCPUs of the hotspot domain virtual machine and the waiting time.
  • the vCPU usage time of a hotspot virtual machine is the ratio of the sum of the running times of all vCPUs of the hotspot virtual machine to the total time, where the total time is the sum of the running time of all vCPUs and the waiting time of all vCPUs.
  • the vCPU utilization rate of the hotspot virtual machine is determined according to the actual non-idle time of the internal vCPU of the virtual machine. Determining the ratio of the sum of all virtual CPU non-idle times of the hotspot i or the virtual machine to the sum of the running times of all the online virtual CPUs of the hotspot i or the virtual machine, determining the hotspot domain virtual machine Virtual CPU utilization.
  • Step 12 According to the vCPU comprehensive usage rate and the number of vCPUs allocated by the VMM for the hotspot domain virtual machine, determine whether to add or reduce at least one online vCPU to the hotspot domain virtual machine.
  • the vCPU usage rate of the hotspot virtual machine can reflect the vCPU usage of the hotspot virtual machine.
  • the vCPU comprehensive usage rate of the hotspot virtual machine is high, it indicates that the hotspot domain virtual machine has a high online vCPU load and can be a hotspot.
  • the domain virtual machine increases the number of online vCPUs.
  • the vCPU integrated usage rate of the hotspot virtual machine is low, it indicates that the online vCPU load of the hotspot domain virtual machine is low, which can reduce the number of online vCPUs of the hotspot domain virtual machine.
  • an online vCPU is added, one or more offline virtual CPUs of the hotspot domain virtual machine may be brought online; when one or more online vCPUs are reduced, one or more online virtual CPUs of the hotspot virtual machine may be offline. operating.
  • the VMM allocates a certain number of vCPUs to the hotspot domain virtual machines.
  • the maximum number of vCPUs that a VMM allocates for a hotspot domain is the same as the number of physical CPUs.
  • the hotspot domain virtual machine OS scheduler adds an online vCPU to the hotspot domain virtual machine, but the number of online vCPUs of the hotspot domain virtual machine cannot be the vCPU allocated by the VMM for the hotspot domain virtual machine. number.
  • Step 13a After the online vCPU is added, the VMM adjusts the vCPU of the common domain virtual machine on the running queue of the physical CPU bound to the online vCPU, so that the online vCPU is scheduled on the physical CPU, and the vCPU of the common domain virtual machine cannot be in the physical CPU. Scheduled.
  • the VMM adjusts the vCPU of the common domain virtual machine on the running queue of the physical CPU bound to the online vCPU, so that the physical CPU is bound to the online exclusive.
  • the specific method can be: VMM creates a running queue for each physical CPU, and all online vCPUs join different running queues, waiting for the VMM to schedule.
  • the VMM adds the online vCPU to the running team of the physical CPU bound to the online vCPU. ⁇ 1 J , at the same time, remove the vCPUs of all common virtual machines on the running queue of the physical CPU, and record the removed vCPUs into the affinity information of the physical CPUs.
  • Step 13b After reducing the online vCPU, the VMM adjusts the vCPU of the hotspot domain virtual machine on the running queue of the physical CPU bound to the offline vCPU, so that the vCPU of the common domain virtual machine is scheduled on the physical CPU.
  • the VMM adjusts the vCPU of the hotspot domain virtual machine on the running queue of the physical CPU bound to the offline vCPU, and cancels the offline vCPU pair.
  • the exclusive physical CPU is exclusive, so that the CPU of the ordinary virtual machine can be scheduled on the running queue of the bound physical CPU.
  • the specific method may be that the VMM is deleted from the running queue of the bound physical CPU by the offline vCPU, and the vCPU of the ordinary virtual machine recorded in the affinity information of the physical CPU bound by the offline vCPU is added to the offline line.
  • the running queue of the vCPU physical CPU may be that the VMM is deleted from the running queue of the bound physical CPU by the offline vCPU, and the vCPU of the ordinary virtual machine recorded in the affinity information of the physical CPU bound by the offline vCPU is added to the offline line.
  • the hotspot domain virtual machine dynamically adjusts the online vCPU quantity of the hotspot domain virtual machine according to the vCPU usage information.
  • the online vCPU is added to the hotspot virtual machine.
  • the VMM allows the added online vCPU to exclusively bind the bound physical CPU resources, so that the online vCPU of the common domain virtual machine cannot be on the physical CPU.
  • the vCPU of the hotspot domain virtual machine can preferentially use the physical CPU resource before the vCPU of the common domain virtual machine, so that the vCPU request of the hotspot domain virtual machine can be timely responded, and the vCPU waiting for the hot spot of the common domain virtual machine is avoided.
  • the emergence of domain virtual machine phenomena has improved the overall performance of virtual systems. After the vCPU load of the hotspot virtual machine is low, after the online vCPU is deleted for the hotspot virtual machine, the VMM cancels the exclusive use of the vCPU of the hotspot virtual machine to the physical CPU, so that the vCPU of the common domain virtual machine can participate in the physical CPU. Scheduling improves the performance of common domain virtual machines and avoids wasting CPU resources.
  • FIG. 2 is a flowchart of another hotspot domain virtual machine CPU scheduling method according to an embodiment of the present invention. As shown in FIG. 2, this embodiment includes:
  • Step 21 The hotspot domain VM is started according to the configuration file, and the VMM is created for the hotspot domain VM. N vCPUs, one physical CPU is bound to each vCPU.
  • the hotspot domain virtual machine is started according to the configuration file.
  • the configuration file specifies the maximum number N and the minimum number n of the vCPU in the hotspot domain virtual machine.
  • the number of vCPUs allocated by the VMM to the hotspot VM is N, and N must be less than or equal to the actual number of physical CPUs.
  • the maximum number of vCPUs is the same as the number of physical CPUs.
  • Each vCPU of the hotspot virtual machine is bound to a physical CPU when it is created. That is, the corresponding vCPU can only be scheduled on the bound physical CPU to prevent the hotspot domain virtual machine from being optimized by the VMM scheduler.
  • the vCPU is migrated to other physical CPUs.
  • Step 22 According to the configuration file, keep n online vCPUs for the hotspot domain VM, and the rest of the vCPUs are processed offline. And the reserved n online vCPUs are exclusively bound to the physical CPU.
  • VMM creates N vCPUs for the hotspot domain VM.
  • N online vCPUs are reserved, and the remaining N-n are processed offline.
  • Subsequent OS Scheduler After adding or subtracting an online vCPU for a hotspot domain virtual machine, the number of online vCPUs of the hotspot domain virtual machine varies between N and n.
  • Step 23 Obtain the vCPU information and system physical CPU information of the hotspot domain VM.
  • the vCPU information of the hotspot virtual machine obtained from the VMM includes not only the status (online and offline) and vCPU of each vCPU of the hotspot virtual machine, but also the physical CPU bound by the online vCPU.
  • System Physical CPU information mainly includes the number of physical CPUs.
  • Step 24 The performance statistics module obtains the vCPU utilization rate of the hotspot domain virtual machine from the OS scheduler of the hotspot domain virtual machine and the usage time of all vCPUs of the hotspot domain virtual machine from the VMM.
  • the OS scheduler of the hotspot virtual machine counts the vCPU utilization of the hotspot virtual machine.
  • the VMM counts the usage time of all vCPUs of the hotspot virtual machine.
  • the vCPU usage time occupancy rate of the hotspot domain virtual machine can be the ratio of the running time of all vCPUs of the hotspot domain virtual machine to the total time, where the total time is the sum of the running time of all vCPUs and the waiting time of all vCPUs.
  • the vCPU utilization of the hotspot virtual machine can be when the virtual CPU inside the hotspot virtual machine is not idle. The ratio of the sum of the sums to the sum of all online virtual CPU runtimes of the hotspot domain virtual machine.
  • the performance statistics module determines the vCPU comprehensive usage rate of the hotspot domain virtual machine according to the vCPU utilization rate of the hotspot virtual machine and the usage time of all vCPUs of the hotspot domain virtual machine.
  • the vCPU integrated usage of the hotspot virtual machine can be the product of the vCPU utilization of the hotspot virtual machine and the usage time of all vCPUs of the hotspot virtual machine.
  • Step 26 The analysis and decision module determines whether the vCPU comprehensive usage rate of the hotspot domain virtual machine exceeds the upper usage limit. If step 27a to step 27b are performed, otherwise step 28 is performed.
  • Step 27a When the vCPU comprehensive usage exceeds the usage upper limit, the OS scheduler adds an online vCPU to the hotspot virtual machine.
  • the analysis and decision module determines to add an online vCPU to the hotspot domain virtual machine.
  • the OS scheduler determines whether the number of online vCPUs of the hotspot domain virtual machine obtained from step 22 is smaller than the maximum number of vCPUs allocated by the VMM for the hotspot domain virtual machine, if Yes, the OS scheduler performs an online operation on an offline vCPU to wake up to an online state according to the state of each vCPU acquired in step 23.
  • Step 27b The VMM adds the added online vCPU to the running queue of the physical CPU bound to the online vCPU, removes the vCPUs of all the common domain virtual machines on the running queue of the physical CPU, and records the pros to the physical CPU. And information. After step 27b, return to step 23 to continue execution until the virtual system is next started.
  • the OS scheduler After the OS scheduler adds an online vCPU, it notifies the VMM to perform a unique operation on the online vCPU.
  • the VMM determines the physical CPU bound to the online vCPU based on the vCPU information obtained in step 23, and adds the online vCPU to the running queue of the bound physical CPU. Afterwards, the VMM traverses the vCPUs of all the common domain virtual machines, and the VMM removes the vCPUs of all the common domain virtual machines on the running queue of the bound physical CPU, and records the removed vCPUs into the affinity information of the physical CPUs. In order to subsequently allow the vCPUs of these ordinary domain virtual machines to be scheduled on the physical CPU. When the vCPUs of these common domain virtual machines are restored to the running queue of the physical CPU.
  • Step 28 The analysis and decision module determines whether the vCPU comprehensive usage rate of the hotspot domain virtual machine is lower than the usage lower limit value. If the lower limit is used, go to step 29a. Otherwise, the OS scheduler maintains the number of vCPUs of the hotspot virtual machine. Go back to step 23 to continue.
  • Step 29a When the vCPU utilization rate is lower than the usage lower limit, the OS scheduler reduces an online vCPU for the hotspot domain virtual machine.
  • the analysis and decision module determines to reduce an online vCPU for the hotspot domain virtual machine.
  • the OS scheduler selects the online vCPU with the largest sequence number according to the state of each vCPU obtained in step 23, and performs offline operation to make it offline.
  • the usage upper limit value and the use lower limit value may be empirical values set according to different application scenarios.
  • Step 29b The VMM is removed from the running queue of the bound physical CPU, and the vCPU of the ordinary virtual machine recorded in the affinity information of the physical CPU is added to the running queue of the physical CPU.
  • step 29b return to step 23 to continue execution until the virtual system is next started.
  • the VMM adjusts the running queue on the physical CPU bound to the vCPU, so that the hotspot domain virtual machine When the vCPU load is high, the added online vCPU is bound to the physical CPU resources. When the vCPU load of the hotspot virtual machine is low, the vCPU of the common domain virtual machine is scheduled on the physical CPU.
  • FIG. 3 is a schematic structural diagram of a virtual machine system according to an embodiment of the present invention.
  • the virtual machine system provided in this embodiment includes: a hotspot domain virtual machine 1, a plurality of common domain virtual machines 2, and a virtual machine monitor 3.
  • the virtual machine monitor 3 is configured to respectively bind different physical CPUs for each vCPU of the hotspot domain virtual machine.
  • the hotspot domain virtual machine 1 is configured to determine, according to the usage information of the vCPU of the hotspot domain virtual machine, the hotspot domain virtual machine determines a vCPU comprehensive usage rate of the hotspot domain virtual machine;
  • the vCPU integrated usage rate and the maximum number of vCPUs allocated to the hotspot domain virtual machine, the hotspot domain virtual machine increases or decreases at least one online vCPU;
  • the vCPU usage information includes the vCPU utilization of the hotspot domain virtual machine Rate and vCPU usage time occupancy of the hotspot domain virtual machine.
  • the vCPU usage time of the hotspot virtual machine is the ratio of the running time of all vCPUs of the hotspot virtual machine to the total time, where the total time is the sum of the running time of all vCPUs and the waiting time of all vCPUs.
  • the vCPU utilization of the hotspot virtual machine may be the ratio of the sum of all virtual CPU non-idle times within the hotspot virtual machine to the sum of all online virtual CPU runtimes of the hotspot virtual machine.
  • the virtual machine monitor 3 is further configured to: after adding the online vCPU, adjust a vCPU of the common domain virtual machine 2 on the running queue of the physical CPU bound to the online vCPU, so that the online vCPU is on the physical CPU Dispatched, and the vCPU of the normal domain virtual machine cannot be scheduled on the physical CPU.
  • the virtual machine monitor 3 is further configured to: after reducing the online vCPU, adjust a vCPU of the hotspot domain virtual machine on a running queue of the physical CPU bound to the offline vCPU, so that the vCPU of the common domain virtual machine is in the Scheduled on the physical CPU.
  • the virtual machine monitor 3 includes: a first adjustment unit and a second adjustment unit.
  • a first adjustment unit configured to add the online vCPU to a running queue of a physical CPU bound to the online vCPU; remove a vCPU of all common virtual machines on a running queue of the physical CPU, and remove the vCPU Recorded into the affinity information of the physical CPU.
  • a second adjusting unit configured to remove the offline vCPU from the running queue of the bound physical CPU; add the vCPU of the ordinary virtual machine recorded in the affinity information of the physical CPU to the running of the physical CPU queue.
  • the hotspot domain virtual machine dynamically adjusts the online vCPU quantity of the hotspot domain virtual machine according to the usage information of the vCPU.
  • the vCPU load of the virtual machine in the hotspot domain is higher
  • the online vCPU is added to the hotspot virtual machine.
  • the VMM allows the added online vCPU to exclusively bind the physical CPU resources. Therefore, the online vCPU of the common domain virtual machine cannot be scheduled on the physical CPU. Therefore, the vCPU of the hotspot virtual machine is used.
  • the physical CPU resource can be preferentially used before the vCPU of the common domain virtual machine, so that the vCPU request of the hotspot domain virtual machine can be timely responded, and the vCPU of the ordinary domain virtual machine is prevented from waiting for the hotspot domain virtual machine phenomenon, and the virtual machine is improved.
  • the overall performance of the system After the vCPU load of the hotspot virtual machine is low, after the online vCPU is deleted for the hotspot virtual machine, the VMM cancels the exclusive use of the vCPU of the hotspot virtual machine to the physical CPU, so that the vCPU of the common domain virtual machine can participate in the physical CPU. Scheduling improves the performance of common domain virtual machines and avoids wasting CPU resources.
  • FIG. 4 is a schematic structural diagram of another virtual machine system according to an embodiment of the present invention.
  • the hotspot domain virtual machine 1 includes: a performance statistics module 11, an analysis and decision module 12, and an OS scheduler 13.
  • the performance statistics module 11 is configured to collect usage information of the virtual CPU of the hotspot domain virtual machine; and determine the virtual CPU comprehensive utilization rate of the hotspot domain virtual machine according to the monitored usage information of the virtual CPU of the hotspot domain virtual machine.
  • the analysis and decision module 12 is configured to determine, according to the virtual CPU comprehensive usage rate determined by the performance statistics module 11 and the maximum number of virtual CPUs allocated by the virtual machine scheduler for the hotspot domain virtual machine, to determine the hotspot domain virtual The machine increases or decreases at least one online virtual CPU.
  • the OS scheduler 13 is configured to increase or decrease at least one online vCPU according to the decision of the analysis and decision module 12.
  • the performance statistics module 11 includes: a first determining unit, a second determining unit, and a third determining unit.
  • the first determining unit is configured to determine a vCPU usage time occupancy rate of the hotspot domain virtual machine according to a sum of a running time of all vCPUs of the hotspot domain virtual machine and a waiting time.
  • a second determining unit configured to determine the hotspot domain virtual machine according to a sum of a virtual CPU non-idle time inside the hotspot virtual machine and a running time of all online virtual CPUs of the hotspot virtual machine Virtual CPU utilization.
  • the third determining unit is configured to determine, according to the vCPU usage time occupancy rate of the hotspot domain virtual machine and the vCPU utilization rate of the hotspot domain virtual machine, a vCPU comprehensive usage rate of the hotspot domain virtual machine.
  • the analysis and decision module 12 includes: an online determination unit and a lower determination unit.
  • the online determination unit is configured to: the virtual CPU comprehensive usage rate determined by the third determining unit exceeds the usage rate upper limit value, and the number of virtual CPUs of the hotspot domain virtual machine does not exceed the VMM for the hotspot domain virtual machine allocation When the maximum number of virtual CPUs is determined, it is determined that one or more online virtual CPUs are added to the hotspot domain virtual machine.
  • a offline determining unit configured to determine, when the virtual CPU integrated usage rate determined by the third determining unit is lower than the usage lower limit value, to reduce the at least one online virtual CPU for the hotspot domain virtual machine.
  • the VMM adjusts the running queue of the physical CPU bound to the vCPU, so that the vCPU load of the hotspot domain virtual machine is higher.
  • the vCPU of the normal domain virtual machine is scheduled on the physical CPU.

Description

热点域虚拟机 CPU调度方法及虚拟机系统
技术领域
本发明实施例涉及计算机技术,尤其涉及一种热点域虚拟机 CPU调度方 法及虚拟机系统。 背景技术
虚拟化技术是一种将底层硬件设备与上层操作系统、 应用程序分离的去 耦合方法, 其引入虚拟机监控器(Virtual Machine Monitor,简称 VMM )层来 直接管理底层硬件资源, 并创建与底层硬件无关的虚拟机(Virtual Machine , 简称 VM )供上层操作系统和应用程序使用。虚拟机可以分成热点域虚拟机和 普通域虚拟机, 普通域虚拟机是用户自行创建的, 运行普通任务的虚拟机, 热点域虚拟机是在系统中起关键作用的, 并被普通域虚拟机所依赖的。 在不 同的虚拟化系统中, 热点域虚拟机特征各不相同, 比如在有些系统中存在一 个驱动域虚拟化 ,普通域虚拟化通过该驱动域虚拟化实现与物理硬件的交互。
在虚拟机系统中, 虚拟机并没有真正的物理资源, 分配给虚拟机的 CPU 并不是真实物理 CPU, 而是 VMM分配给虚拟机的虚拟 CPU ( Virtual Central Processing Unit, 简称 vCPU ) 。 在虚拟化环境中, CPU资源存在双重调度, 一方面是虚拟机内部的操作系统(Operation System, 简称 OS )调度器把线 程调度到 vCPU上, 另一方面 VMM调度器把 vCPU调度到物理 CPU上。 虚拟机 内部的 OS调度器的实现与具体的 OS有关, 且无法更改, 因此 VMM调度器对 整个虚拟机系统的性能有着举足轻重的影响。
目前 VMM调度器普遍采用的调度策略是将普通域虚拟机和热点域虚拟 机的 vCPU平等参与调度, 因而可能会出现普通域虚拟机抢占热点域虚拟机 CPU时间的现象, 导致热点域虚拟机的实时性变差, 同时也会使普通域虚拟 机的请求得不到及时响应, 尤其是当虚拟机数量很多时, 可能会导致整体性 能急剧下降。另一种调度策略是 VMM调度器将固定的物理 CPU资源分配给热 点域虚拟机, 默认的 vCPU个数与真实物理 CPU个数是相关的。 系统中的物理 CPU数目比较多时, vCPU数量也很多, 一方面系统负载比较轻时会造成资源 浪费, 另一方面在系统负载比较重时, 尤其是普通域的 vCPU过多的时候, 增 加热点域虚拟机的 vCPU数量并不能提升系统性能。 因此, 目前的虚拟机系统 CPU资源利用率和系统性能较低。 发明内容
本发明实施例提供一种热点域虚拟机 CPU调度方法及虚拟机系统, 用以 解决现有技术中虚拟机系统 CPU资源利用率和系统性能较低的缺陷。 本发明实施例提供一种热点域虚拟机 CPU调度方法,热点域虚拟机的每 个虚拟 CPU分别绑定有不同的物理 CPU, 所述方法包括:
根据统计到的热点域虚拟机的虚拟 CPU的使用信息,确定所述热点域虚 拟机的虚拟 CPU综合使用率; 所述虚拟 CPU的使用信息包括所述热点域虚 拟机的虚拟 CPU利用率和所述热点域虚拟机的虚拟 CPU使用时间占用率; 根据所述虚拟 CPU综合使用率和为所述热点域虚拟机分配的虚拟 CPU 的最大个数, 确定为所述热点域虚拟机增加或减少至少一个在线虚拟 CPU; 增加在线虚拟 CPU后, 调整与所述在线虚拟 CPU绑定的物理 CPU的运 行队列上普通域虚拟机的虚拟 CPU, 使所述在线虚拟 CPU在所述物理 CPU 上调度, 并使普通域虚拟机的虚拟 CPU不能在所述物理 CPU上调度;
减少在线虚拟 CPU后, 调整与被下线虚拟 CPU绑定的物理 CPU的运行队 列上所述热点域虚拟机的虚拟 CPU, 使普通域虚拟机的虚拟 CPU恢复在所述 物理 CPU上调度。
本发明实施例提供一种虚拟机系统, 包括热点域虚拟机、 普通域虚拟机 和虚拟机监控器; 所述虚拟机监控器,用于为热点域虚拟机的每个虚拟 CPU分别绑定不同 的物理 CPU;
所述热点域虚拟机,用于根据获取到的热点域虚拟机的虚拟 CPU的使用 信息, 热点域虚拟机确定所述热点域虚拟机的虚拟 CPU综合使用率; 根据所 述虚拟 CPU综合使用率和为所述热点域虚拟机分配的虚拟 CPU的最大个数, 所述热点域虚拟机增加或减少至少一个在线虚拟 CPU;所述虚拟 CPU的使用 信息包括所述热点域虚拟机的虚拟 CPU利用率和所述热点域虚拟机的虚拟 CPU使用时间占用率;
所述虚拟机监控器, 还用于增加在线虚拟 CPU后, 虚拟机调度器调整与 使所述在线虚拟 CPU在所述物理 CPU上调度,并使普通域虚拟机的虚拟 CPU 不能在所述物理 CPU上调度;
所述虚拟机监控器, 还用于减少在线虚拟 CPU后, 虚拟机调度器调整与 CPU, 使普通域虚拟机的虚拟 CPU在所述物理 CPU上调度。
本发明实施例的热点域虚拟机 CPU调度方法及虚拟机系统,热点域虚拟 机根据虚拟 CPU的使用信息动态调整该热点域虚拟机的在线虚拟 CPU数量。 在热点域虚拟机的虚拟 CPU负载较高时, 为该热点域虚拟机增加在线虚拟 CPU, VMM使增加的在线虚拟 CPU独占绑定的物理 CPU资源,从而普通域 虚拟机的在线虚拟 CPU不能在该物理 CPU上调度, 因此, 热点域虚拟机的 虚拟 CPU可在普通域虚拟机的虚拟 CPU之前优先使用该物理 CPU资源, 使 热点域虚拟机的虚拟 CPU的请求能及时得到响应,避免了普通域虚拟机的虚 拟 CPU等待热点域虚拟机现象的出现, 提高了虚拟系统的整体性能。 在热点 域虚拟机的虚拟 CPU负载较低时, 为该热点域虚拟机删除在线虚拟 CPU后, VMM取消热点域虚拟机的虚拟 CPU对物理 CPU的独占性,使普通域虚拟机 的虚拟 CPU可参与物理 CPU的调度, 提高了普通域虚拟机的性能, 避免了 CPU资源的浪费。 附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实 施例或现有技术描述中所需要使用的附图作一简单地介绍, 显而易见地, 下 面描述中的附图是本发明的一些实施例, 对于本领域普通技术人员来讲, 在 不付出创造性劳动性的前提下, 还可以根据这些附图获得其他的附图。
图 1A为本发明实施例提供的一种热点域虚拟机 CPU调度方法流程图; 图 1B为本发明实施例提供的一种虚拟机架构图;
图 2为本发明实施例提供的另一种热点域虚拟机 CPU调度方法流程图; 图 3为本发明实施例提供的一种虚拟机系统结构示意图;
图 4为本发明实施例提供的另一种虚拟机系统结构示意图。 具体实施方式
为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本发 明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例是本发明一部分实施例, 而不是全部的实施例。 基于 本发明中的实施例, 本领域普通技术人员在没有做出创造性劳动前提下所获 得的所有其他实施例, 都属于本发明保护的范围。
本发明实施例提出的热点域虚拟机 CPU调度方法根据系统压力大小动态 调整热点域虚拟机的 vCPU数目, 并为其分配独占的物理 CPU资源。
图 1A为本发明实施例提供的一种热点域虚拟机 CPU调度方法流程图, 图 1B为本发明实施例提供的一种虚拟机架构图。 如图 1B所示, VMM直接 管理底层碣件资源, 并创建了与底层硬件无关的 VM供上层操作系统和应用 程序使用。 每个 VM包括 APPS (应用程序 )和 OS调度器。 其中, VM包括 一个热点域虚拟机和多个普通域虚拟机, 热点域虚拟机为每个普通域虚拟机 都依赖的虚拟机。 虚拟机的 vCPU分为在线和离线两种状态, 在线 vCPU可 以被虚拟机的 OS使用, 同时 VMM将它调度到物理 CPU上。 分配线程后的 在线 vCPU为非空闲在线 vCPU, 没有分配线程的在线 vCPU为空闲在线 vCPU。
本发明实施例为热点域虚拟机创建 vCPU时为热点域虚拟机的每个 vCPU绑定不同的物理 CPU,也就是说热点域虚拟机的每个 vCPU与物理 CPU 为——对应关系。 热点域虚拟机的 vCPU只能在绑定的物理 CPU上运行。 如 果热点域虚拟机的 vCPU离线 , VMM可以临时将该 vCPU对应的物理 CPU 分配给普通域虚拟机的 vCPU使用, 一旦该 vCPU上线(从离线变为在线) , 普通域虚拟机的 vCPU不能使用该 vCPU对应的物理 CPU。
如图 1A所示, 本实施例包括:
步骤 11 : 根据统计到的热点域虚拟机的 vCPU的使用信息, 热点域虚拟 机确定热点域虚拟机的 vCPU综合使用率; vCPU的使用信息包括热点域虚拟 机的 vCPU利用率和热点域虚拟机的 vCPU使用时间占用率。
热点域虚拟机实时监控热点域虚拟机的 vCPU使用信息, 包括从热点域 虚拟机的 OS调度器统计的该热点域虚拟机的 vCPU利用率和从 VMM中获 取热点域虚拟机的所有 vCPU的使用时间占用率,根据 vCPU利用率和 vCPU 使用时间占用率, 确定热点域虚拟机的 vCPU综合使用率。
其中, 热点域虚拟机的 vCPU使用时间占用率可根据热点域虚拟机的所 有 vCPU的运行时间之和与等待时间之和来确定。 例如, 热点域虚拟机的 vCPU使用时间占用率为热点域虚拟机的所有 vCPU的运行时间之和与总时 间的比值, 其中总时间为所有 vCPU的运行时间和所有 vCPU的等待时间之 和。
其中, 热点域虚拟机的 vCPU利用率是根据虚拟机内部 vCPU实际非空 闲时间确定。热点 i或虚拟机内部所有虚拟 CPU非空闲时间之和与所述热点 i或 虚拟机的所有在线虚拟 CPU运行时间之和的比值,确定所述热点域虚拟机的 虚拟 CPU利用率。
步骤 12: 根据 vCPU综合使用率和 VMM为热点域虚拟机分配的 vCPU 的个数, 确定为热点域虚拟机增加或减少至少一个在线 vCPU。
热点域虚拟机的 vCPU综合使用率可反映热点域虚拟机的对 vCPU的使 用情况, 热点域虚拟机的 vCPU综合使用率较高时, 表明热点域虚拟机的在 线 vCPU负载较高, 可为热点域虚拟机增加在线 vCPU的数量。 热点域虚拟 机的 vCPU综合使用率较低时, 表明热点域虚拟机的在线 vCPU负载较低, 可减少热点域虚拟机的在线 vCPU的数量。 在增加在线 vCPU时, 可对热点 域虚拟机的一个或多个离线虚拟 CPU进行上线操作; 减少一个或多个在线 vCPU时, 可对热点域虚拟机的一个或多个在线虚拟 CPU进行下线操作。
在虚拟机系统初始化时 , VMM为热点域虚拟机分配了一定数量的 vCPU。 默认情况下, VMM为热点域分配的 vCPU的最大个数与物理 CPU的个数相 同。 当热点域虚拟机的 vCPU不足时, 热点域虚拟机 OS调度器为热点域虚 拟机增加在线 vCPU,但热点域虚拟机的在线 vCPU个数不能起过 VMM为热 点域虚拟机分配的 vCPU的个数。 也就是说, 当热点域虚拟机的在线 vCPU 个数等于 VMM为热点域虚拟机初始分配的 vCPU的最大个数时, VMM为热 点域虚拟机分配的所有 vCPU都为在线状态, 已不能为热点域虚拟机增加在 线 vCPU。
步骤 13a: 增加在线 vCPU后, VMM调整与在线 vCPU绑定的物理 CPU 的运行队列上普通域虚拟机的 vCPU, 使在线 vCPU在物理 CPU上调度, 并 使普通域虚拟机的 vCPU不能在物理 CPU上调度。
热点域虚拟机增加在线 vCPU后 , VMM调整该在线 vCPU绑定的物理 CPU的运行队列上普通域虚拟机的 vCPU, 使该在线独占绑定的物理 CPU。 具体方法可以是: VMM为每个物理 CPU创建一个运行队列,所有在线 vCPU 加入到不同的运行队列, 等待 VMM的调度。 热点域虚拟机增加在线 vCPU 后, VMM将该在线 vCPU加入到与该在线 vCPU绑定的物理 CPU的运行队 歹1 J , 同时在物理 CPU的运行队列上移除所有普通虚拟机的 vCPU, 并将移除 的 vCPU记录到物理 CPU的亲和信息中。
步骤 13b: 减少在线 vCPU后, VMM调整与被下线 vCPU绑定的物理 CPU的运行队列上热点域虚拟机的 vCPU, 使普通域虚拟机的 vCPU在物理 CPU上调度。
热点域虚拟机减少在线 vCPU时将一个或多个在线 vCPU进行下线操作, VMM调整与被下线 vCPU绑定的物理 CPU的运行队列上热点域虚拟机的 vCPU,取消该下线 vCPU对绑定的物理 CPU的独占性,使普通虚拟机的 CPU 可在该绑定物理 CPU的运行队列上调度。 具体方法可以是, VMM将被下线 vCPU从绑定的物理 CPU的运行队列上删除,将被下线 vCPU绑定的物理 CPU 的亲和信息中记录的普通虚拟机的 vCPU加入到被下线 vCPU物理 CPU的运 行队列。
本实施例提供的热点域虚拟机 CPU调度方法, 热点域虚拟机根据 vCPU 的使用信息动态调整该热点域虚拟机的在线 vCPU数量。 在热点域虚拟机的 vCPU负载较高时, 为该热点域虚拟机增加在线 vCPU, VMM使增加的在线 vCPU独占绑定的物理 CPU资源, 从而普通域虚拟机的在线 vCPU不能在该 物理 CPU上调度, 因此, 热点域虚拟机的 vCPU可在普通域虚拟机的 vCPU 之前优先使用该物理 CPU资源,使热点域虚拟机的 vCPU的请求能及时得到 响应, 避免了普通域虚拟机的 vCPU等待热点域虚拟机现象的出现, 提高了 虚拟系统的整体性能。 在热点域虚拟机的 vCPU负载较低时, 为该热点域虚 拟机删除在线 vCPU后 , VMM取消热点域虚拟机的 vCPU对物理 CPU的独 占性, 使普通域虚拟机的 vCPU可参与物理 CPU的调度, 提高了普通域虚拟 机的性能, 避免了 CPU资源的浪费。
图 2为本发明实施例提供的另一种热点域虚拟机 CPU调度方法流程图。 如图 2所示, 本实施例包括:
步骤 21: 热点域虚拟机按照配置文件启动, VMM为热点域虚拟机创建 N个 vCPU, 为每个 vCPU绑定一个物理 CPU。
虚拟系统初始化时, 热点域虚拟机按照配置文件启动, 配置文件规定了 热点域虚拟机可拥有 vCPU的最大数 N和最小数 n。 热点域虚拟机启动后, VMM为热点域虚拟机分配的 vCPU个数为 N, N必须小于等于实际物理 CPU 个数, 默认条件下, 最大 vCPU数与物理 CPU数目相同。 热点域虚拟机的每 个 vCPU在创建时都与一个物理 CPU进行绑定, 也就是对应的 vCPU只能在 绑定的物理 CPU上调度, 防止由于 VMM调度器的优化, 而使热点域虚拟机 的 vCPU迁移到其他物理 CPU上。
步骤 22:根据配置文件,为热点域虚拟机保留 n个在线 vCPU,其余 vCPU 均作下线处理。 并使保留的 n个在线 vCPU分别独占绑定的物理 CPU。
热点域虚拟机启动时 VMM为热点域虚拟机创建了 N个 vCPU , 在系统 开始运行时, 只保留 n个在线 vCPU, 其余 N-n作离线处理。 后续 OS调度器 为热点域虚拟机增加或减少在线 vCPU后, 热点域虚拟机的在线 vCPU的数 量在 N和 n之间变动。
步骤 23: 获取热点域虚拟机的 vCPU信息和系统物理 CPU信息。
从 VMM中获取的热点域虚拟机的 vCPU信息不仅包括热点域虚拟机每 个 vCPU的状态 (在线和离线)和 vCPU的数量, 还包括在线的 vCPU所绑 定的物理 CPU。 系统物理 CPU信息主要包括物理 CPU数量。
步骤 24: 性能统计模块从热点域虚拟机的 OS调度器获取该热点域虚拟 机的 vCPU利用率和从 VMM中获取该热点域虚拟机所有 vCPU的使用时间 占用率。
热点域虚拟机的 OS调度器统计该热点域虚拟机的 vCPU利用率, VMM 中统计该热点域虚拟机所有 vCPU的使用时间占用率。热点域虚拟机的 vCPU 使用时间占用率可为热点域虚拟机的所有 vCPU的运行时间之和与总时间的 比值, 其中总时间为所有 vCPU的运行时间和所有 vCPU的等待时间之和。 热点域虚拟机的 vCPU利用率可为热点域虚拟机内部所有虚拟 CPU非空闲时 间之和与所述热点域虚拟机的所有在线虚拟 CPU运行时间之和的比值。 步骤 25: 性能统计模块根据该热点域虚拟机的 vCPU利用率和该热点域 虚拟机所有 vCPU的使用时间占用率, 确定热点域虚拟机的 vCPU综合使用 率。
热点域虚拟机的 vCPU综合使用率可为热点域虚拟机的 vCPU利用率与 该热点域虚拟机所有 vCPU的使用时间占用率的乘积。
步骤 26: 分析与决策模块判断热点域虚拟机的 vCPU综合使用率是否超 过使用率上限值。 若是执行步骤 27a至步骤 27b, 否则执行步骤 28。
步骤 27a: 在 vCPU综合使用率超过使用率上限值时, OS调度器为热点 域虚拟机增加一个在线 vCPU。
在 vCPU综合使用率超过使用率上限值时, 分析与决策模块确定为热点 域虚拟机增加一个在线 vCPU。 在确定为热点域虚拟机增加一个在线 vCPU 时, OS调度器判断从步骤 22中获取的热点域虚拟机的在线 vCPU的数量是 否小于 VMM为热点域虚拟机分配的 vCPU的最大个数 N, 如果是, OS调度 器根据步骤 23中获取的每个 vCPU的状态,对一个离线 vCPU进行上线操作 使其唤醒成为在线状态。
步骤 27b: VMM将增加的在线 vCPU加入到与该在线 vCPU绑定的物理 CPU的运行队列, 在所述物理 CPU的运行队列上移除所有普通域虚拟机的 vCPU并记录到该物理 CPU的亲和信息中。 在步骤 27b之后, 返回步骤 23 继续执行直至虚拟系统下次启动。
OS调度器增加一个在线 vCPU后,通知 VMM对在线 vCPU进行独点性 操作。 VMM根据步骤 23中获取的 vCPU信息, 确定增加的在线 vCPU绑定 的物理 CPU, 将该在线 vCPU加入到绑定物理 CPU的运行队列上。 之后, VMM遍历所有普通域虚拟机的 vCPU, VMM移除该绑定物理 CPU的运行队 列上的所有普通域虚拟机的 vCPU, 将移除的 vCPU记录到所述物理 CPU的 亲和信息中, 以便后续允许这些普通域虚拟机的 vCPU在该物理 CPU上调度 时, 将这些普通域虚拟机的 vCPU恢复到物理 CPU的运行队列上。
步骤 28: 分析与决策模块判断热点域虚拟机的 vCPU综合使用率是否低 于使用率下限值。 如果低于使用率下限值, 执行步骤 29a, 否则 OS调度器维 持热点域虚拟机的 vCPU个数, 返回步骤 23继续执行。
步骤 29a: 在 vCPU综合使用率低于使用率下限值时, OS调度器为热点 域虚拟机减少一个在线 vCPU。
在 vCPU综合使用率低于使用率下限值时, 分析与决策模块确定为热点 域虚拟机减少一个在线 vCPU。 OS调度器根据步骤 23中获取的每个 vCPU的 状态, 可选择序号最大的在线 vCPU, 对其进行下线操作使其成为离线状态。 其中, 使用率上限值和使用下限值可为根据不同应用场景设置的经验值。
步骤 29b: VMM将被下线 vCPU从绑定的物理 CPU的运行队列上移除, 并将所述物理 CPU的亲和信息中记录的普通虚拟机的 vCPU加入到所述物理 CPU的运行队列。
在步骤 29b之后, 返回步骤 23继续执行直至虚拟系统下次启动。
本实施例提供的热点域虚拟机 CPU调度方法,热点域虚拟机增加或减少 一个或多个在线 vCPU后, VMM对该 vCPU绑定的物理 CPU上的运行队列 进行调整, 从而热点域虚拟机的 vCPU负载较高时, 使增加的在线 vCPU独 占绑定的物理 CPU资源; 热点域虚拟机的 vCPU负载较低时, 使普通域虚拟 机的 vCPU在该物理 CPU上调度。
图 3为本发明实施例提供的一种虚拟机系统结构示意图。 如图 3所示, 本实施例提供的虚拟机系统包括: 热点域虚拟机 1、 多个普通域虚拟机 2和 虚拟机监控器 3。
所述虚拟机监控器 3,用于为热点域虚拟机的每个 vCPU分别绑定不同的 物理 CPU。
所述热点域虚拟机 1 ,用于根据统计到的热点域虚拟机的 vCPU的使用信 息, 热点域虚拟机确定所述热点域虚拟机的 vCPU综合使用率; 根据所述 vCPU综合使用率和为所述热点域虚拟机分配的 vCPU的最大个数,所述热点 域虚拟机增加或减少至少一个在线 vCPU;所述 vCPU的使用信息包括所述热 点域虚拟机的 vCPU利用率和所述热点域虚拟机的 vCPU使用时间占用率。
例如, 热点域虚拟机的 vCPU使用时间占用率为热点域虚拟机的所有 vCPU的运行时间之和与总时间的比值,其中总时间为所有 vCPU的运行时间 和所有 vCPU的等待时间之和。 热点域虚拟机的 vCPU利用率可为热点域虚 拟机内部所有虚拟 CPU非空闲时间之和与所述热点域虚拟机的所有在线虚拟 CPU运行时间之和的比值。
所述虚拟机监控器 3, 还用于增加在线 vCPU后, 调整与所述在线 vCPU 绑定的物理 CPU的运行队列上普通域虚拟机 2的 vCPU, 使所述在线 vCPU 在所述物理 CPU上调度, 并使普通域虚拟机的 vCPU不能在所述物理 CPU 上调度。
所述虚拟机监控器 3,还用于减少在线 vCPU后,调整与被下线 vCPU绑 定的物理 CPU的运行队列上所述热点域虚拟机的 vCPU, 使普通域虚拟机的 vCPU在所述物理 CPU上调度。
上述各模块实现的功能可参见图 1对应实施例中描述, 在此不再赘述。 具体地, 虚拟机监控器 3包括: 第一调整单元和第二调整单元。
第一调整单元, 用于将所述在线 vCPU加入到与所述在线 vCPU绑定的 物理 CPU的运行队列; 移除所述物理 CPU的运行队列上所有普通虚拟机的 vCPU并将移除的 vCPU记录到所述物理 CPU的亲和信息中。
第二调整单元, 用于将被下线 vCPU从绑定的物理 CPU的运行队列上移 除; 将所述物理 CPU的亲和信息中记录的普通虚拟机的 vCPU加入到所述物 理 CPU的运行队列。
上述各单元实现的功能可参见图 1对应实施例中描述, 在此不再赘述。 本实施例提供的虚拟机系统, 热点域虚拟机根据 vCPU的使用信息动态 调整该热点域虚拟机的在线 vCPU数量。 在热点域虚拟机的 vCPU负载较高 时, 为该热点域虚拟机增加在线 vCPU, VMM使增加的在线 vCPU独占绑定 的物理 CPU资源, 从而普通域虚拟机的在线 vCPU不能在该物理 CPU上调 度, 因此, 热点域虚拟机的 vCPU可在普通域虚拟机的 vCPU之前优先使用 该物理 CPU资源, 使热点域虚拟机的 vCPU的请求能及时得到响应, 避免了 普通域虚拟机的 vCPU等待热点域虚拟机现象的出现, 提高了虚拟系统的整 体性能。 在热点域虚拟机的 vCPU负载较低时, 为该热点域虚拟机删除在线 vCPU后 , VMM取消热点域虚拟机的 vCPU对物理 CPU的独占性, 使普通 域虚拟机的 vCPU可参与物理 CPU的调度, 提高了普通域虚拟机的性能, 避 免了 CPU资源的浪费。
图 4为本发明实施例提供的另一种虚拟机系统结构示意图。如图 4所示, 热点域虚拟机 1包括: 性能统计模块 11、 分析与决策模块 12和 OS调度器 13。
性能统计模块 11 ,用于统计热点域虚拟机的虚拟 CPU的使用信息; 并根 据监测到的热点域虚拟机的虚拟 CPU的使用信息,确定所述热点域虚拟机的 虚拟 CPU综合使用率。
分析与决策模块 12, 用于根据性能统计模块 11确定的所述虚拟 CPU综 合使用率和虚拟机调度器为所述热点域虚拟机分配的虚拟 CPU的最大个数, 确定为所述热点域虚拟机增加或减少至少一个在线虚拟 CPU。
OS调度器 13 , 用于根据分析与决策模块 12的决策增加或减少至少一个 在线 vCPU。
具体地, 性能统计模块 11包括: 第一确定单元、 第二确定单元和第三确 定单元。
第一确定单元, 用于根据所述热点域虚拟机的所有 vCPU的运行时间之 和与等待时间之和, 确定所述热点域虚拟机的 vCPU使用时间占用率。 第二 确定单元,用于根据所述热点域虚拟机内部的虚拟 CPU非空闲时间之和与所 述热点域虚拟机的所有在线虚拟 CPU运行时间之和,确定所述热点域虚拟机 的虚拟 CPU利用率。 第三确定单元, 用于根据所述热点域虚拟机的 vCPU使 用时间占用率和所述热点域虚拟机的 vCPU利用率, 确定所述热点域虚拟机 的 vCPU综合使用率。
具体地, 分析与决策模块 12包括: 上线确定单元和下线确定单元。 上线确定单元,用于在第三确定单元确定的所述虚拟 CPU综合使用率超 过使用率上限值且所述热点域虚拟机的虚拟 CPU的个数没有超过 VMM为所 述热点域虚拟机分配的虚拟 CPU的最大个数时,确定为所述热点域虚拟机增 加一个或多个在线虚拟 CPU。 下线确定单元, 用于在第三确定单元确定的所 述虚拟 CPU综合使用率低于使用率下限值时,确定为所述热点域虚拟机减少 至少一个在线虚拟 CPU。
上述各模块实现的功能可参见图 2对应实施例中描述, 在此不再赘述。 本实施例提供的虚拟机系统, 热点域虚拟机增加或减少一个或多个在线 vCPU后, VMM对该 vCPU绑定的物理 CPU上的运行队列进行调整, 从而 热点域虚拟机的 vCPU负载较高时,使增加的在线 vCPU独占绑定的物理 CPU 资源; 热点域虚拟机的 vCPU负载较低时, 使普通域虚拟机的 vCPU在该物 理 CPU上调度。
本领域普通技术人员可以理解: 实现上述方法实施例的全部或部分步骤 可以通过程序指令相关的硬件来完成, 前述的程序可以存储于一计算机可读 取存储介质中, 该程序在执行时, 执行包括上述方法实施例的步骤; 而前述 的存储介质包括: ROM、 RAM, 磁碟或者光盘等各种可以存储程序代码的介 质。
最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对其 限制; 尽管参照前述实施例对本发明进行了详细的说明, 本领域的普通技术 人员应当理解: 其依然可以对前述各实施例所记载的技术方案进行修改, 或 者对其中部分技术特征进行等同替换; 而这些修改或者替换, 并不使相应技 术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims

权利 要求 书
1、 一种热点域虚拟机 CPU调度方法, 其特征在于, 热点域虚拟机的每 个虚拟 CPU分别绑定有不同的物理 CPU, 所述方法包括:
根据统计到的热点域虚拟机的虚拟 CPU的使用信息,确定所述热点域虚 拟机的虚拟 CPU综合使用率; 所述虚拟 CPU的使用信息包括所述热点域虚 拟机的虚拟 CPU利用率和所述热点域虚拟机的虚拟 CPU使用时间占用率; 根据所述虚拟 CPU综合使用率和为所述热点域虚拟机分配的虚拟 CPU 的最大个数, 确定为所述热点域虚拟机增加或减少至少一个在线虚拟 CPU; 增加在线虚拟 CPU后, 调整与所述在线虚拟 CPU绑定的物理 CPU的运 行队列上普通域虚拟机的虚拟 CPU, 使所述在线虚拟 CPU在所述物理 CPU 上调度, 并使普通域虚拟机的虚拟 CPU不能在所述物理 CPU上调度;
减少在线虚拟 CPU后, 调整与被下线虚拟 CPU绑定的物理 CPU的运行 队列上所述热点域虚拟机的虚拟 CPU,使普通域虚拟机的虚拟 CPU在所述物 理 CPU上调度。
2、 根据权利要求 1所述方法, 其特征在于, 所述调整与所述在线虚拟
CPU绑定的物理 CPU的运行队列上普通域虚拟机的虚拟 CPU, 使所述在线 虚拟 CPU在所述物理 CPU上调度, 并使普通域虚拟机的虚拟 CPU不能在所 述物理 CPU上调度, 包括:
虚拟机调度器将所述在线虚拟 CPU加入到与所述在线虚拟 CPU绑定的 物理 CPU的运行队列;
虚拟机调度器移除所述物理 CPU的运行队列上所有普通虚拟机的虚拟 CPU并将移除的虚拟 CPU记录到所述物理 CPU的亲和信息中。
3、 根据权利要求 1或 2所述方法, 其特征在于, 所述调整与被下线虚拟 CPU绑定的物理 CPU的运行队列上所述热点域虚拟机的虚拟 CPU, 使普通 域虚拟机的虚拟 CPU在所述物理 CPU上调度, 包括: 虚拟机调度器将所述物理 CPU的亲和信息中记录的普通虚拟机的虚拟 CPU加入到所述物理 CPU的运行队列。
4、 根据权利要求 1、 2或 3所述方法, 其特征在于, 所述根据统计到的 热点域虚拟机的虚拟 CPU的使用信息, 确定所述热点域虚拟机的虚拟 CPU 综合使用率, 包括:
根据所述热点域虚拟机的所有虚拟 CPU的运行时间之和与等待时间之 和, 确定所述热点域虚拟机的虚拟 CPU使用时间占用率;
根据所述热点域虚拟机内部的所有虚拟 CPU非空闲时间之和与所述热点 域虚拟机的所有在线虚拟 CPU运行时间之和,确定所述热点域虚拟机的虚拟 CPU利用率;
根据所述热点域虚拟机的虚拟 CPU使用时间占用率和所述热点域虚拟机 的虚拟 CPU利用率, 确定所述热点域虚拟机的虚拟 CPU综合使用率。
5、 根据权利要求 1、 2、 3或 4所述方法, 其特征在于, 所述根据所述虚 拟 CPU综合使用率和为所述热点域虚拟机分配的虚拟 CPU的个数, 确定为 所述热点域虚拟机增加或减少至少一个在线虚拟 CPU, 包括:
在所述虚拟 CPU综合使用率超过使用率上限值且所述热点域虚拟机的虚 拟 CPU的个数没有超过虚拟机调度器为所述热点域虚拟机分配的虚拟 CPU 的最大个数时, 确定为所述热点域虚拟机增加至少一个在线虚拟 CPU;
在所述虚拟 CPU综合使用率低于使用率下限值时,确定为所述热点域虚 拟机减少至少一个在线虚拟 CPU。
6、一种虚拟机系统, 包括热点域虚拟机、普通域虚拟机和虚拟机监控器, 其特征在于:
所述虚拟机监控器,用于为热点域虚拟机的每个虚拟 CPU分别绑定不同 的物理 CPU;
所述热点域虚拟机,用于根据统计到的热点域虚拟机的虚拟 CPU的使用 信息, 热点域虚拟机确定所述热点域虚拟机的虚拟 CPU综合使用率; 根据所 述虚拟 CPU综合使用率和为所述热点域虚拟机分配的虚拟 CPU的最大个数, 所述热点域虚拟机增加或减少至少一个在线虚拟 CPU;所述虚拟 CPU的使用 信息包括所述热点域虚拟机的虚拟 CPU利用率和所述热点域虚拟机的虚拟 CPU使用时间占用率;
所述虚拟机监控器, 还用于增加在线虚拟 CPU后, 调整与所述在线虚拟
CPU绑定的物理 CPU的运行队列上普通域虚拟机的虚拟 CPU, 使所述在线 虚拟 CPU在所述物理 CPU上调度, 并使普通域虚拟机的虚拟 CPU不能在所 述物理 CPU上调度;
所述虚拟机监控器, 还用于减少在线虚拟 CPU后, 调整与被下线虚拟 CPU绑定的物理 CPU的运行队列上所述热点域虚拟机的虚拟 CPU, 使普通 域虚拟机的虚拟 CPU在所述物理 CPU上调度。
7、 根据权利要求 6所述系统, 其特征在于, 所述热点域虚拟机包括: 性 能统计模块、 分析与决策模块和 OS调度器;
所述性能统计模块, 用于统计热点域虚拟机的虚拟 CPU的使用信息; 并 根据监测到的热点域虚拟机的虚拟 CPU的使用信息,确定所述热点域虚拟机 的虚拟 CPU综合使用率;
所述分析与决策模块,用于根据所述虚拟 CPU综合使用率和虚拟机调度 器为所述热点域虚拟机分配的虚拟 CPU的最大个数,确定为所述热点域虚拟 机增加或减少至少一个在线虚拟 CPU;
所述 OS调度器, 用于根据分析与决策模块的决策为所述热点域虚拟机 增加或减少至少一个在线虚拟 CPU。
8、 根据权利要求 7所述系统, 其特征在于, 所述性能统计模块包括: 第一确定单元,用于根据所述热点域虚拟机的所有虚拟 CPU的运行时间 之和与等待时间之和, 确定所述热点域虚拟机的虚拟 CPU使用时间占用率; 第二确定单元,用于根据所述热点域虚拟机内部的所有虚拟 CPU非空闲 时间之和与所述热点域虚拟机的所有在线虚拟 CPU运行时间之和,确定所述 热点域虚拟机的虚拟 CPU利用率;
第三确定单元,用于根据所述热点域虚拟机的虚拟 CPU使用时间占用率 和所述热点域虚拟机的虚拟 CPU利用率,确定所述热点域虚拟机的虚拟 CPU 综合使用率。
9、 根据权利要求 7所述系统, 其特征在于, 所述分析与决策模块包括: 上线确定单元,用于在所述虚拟 CPU综合使用率超过使用率上限值且所 的虚拟 CPU的最大个数时,确定为所述热点域虚拟机增加一个或多个在线虚 拟 CPU;
下线确定单元, 用于在所述虚拟 CPU综合使用率低于使用率下限值时, 确定为所述热点域虚拟机减少至少一个在线虚拟 CPU。
10、 根据权利要求 6所述系统, 其特征在于, 所述虚拟机监控器包括: 第一调整单元, 用于将所述在线虚拟 CPU加入到与所述在线虚拟 CPU 绑定的物理 CPU的运行队列; 移除所述物理 CPU的运行队列上所有普通虚 拟机的虚拟 CPU并将移除的虚拟 CPU记录到所述物理 CPU的亲和信息中; 第二调整单元, 用于将被下线虚拟 CPU从绑定的物理 CPU的运行队列 上移除; 将所述物理 CPU的亲和信息中记录的普通虚拟机的虚拟 CPU加入 到所述物理 CPU的运行队列。
PCT/CN2011/076650 2011-06-30 2011-06-30 热点域虚拟机cpu调度方法及虚拟机系统 WO2012103728A1 (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/CN2011/076650 WO2012103728A1 (zh) 2011-06-30 2011-06-30 热点域虚拟机cpu调度方法及虚拟机系统
EP11857577.8A EP2698711B1 (en) 2011-06-30 2011-06-30 Method for dispatching central processing unit of hotspot domain virtual machine and virtual machine system
CN2011800009763A CN102317917B (zh) 2011-06-30 2011-06-30 热点域虚拟机cpu调度方法及虚拟机系统
US14/143,485 US9519499B2 (en) 2011-06-30 2013-12-30 Method for dispatching central processing unit of hotspot domain virtual machine and virtual machine system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2011/076650 WO2012103728A1 (zh) 2011-06-30 2011-06-30 热点域虚拟机cpu调度方法及虚拟机系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/143,485 Continuation US9519499B2 (en) 2011-06-30 2013-12-30 Method for dispatching central processing unit of hotspot domain virtual machine and virtual machine system

Publications (1)

Publication Number Publication Date
WO2012103728A1 true WO2012103728A1 (zh) 2012-08-09

Family

ID=45429415

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/076650 WO2012103728A1 (zh) 2011-06-30 2011-06-30 热点域虚拟机cpu调度方法及虚拟机系统

Country Status (4)

Country Link
US (1) US9519499B2 (zh)
EP (1) EP2698711B1 (zh)
CN (1) CN102317917B (zh)
WO (1) WO2012103728A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105094947A (zh) * 2015-07-28 2015-11-25 中国联合网络通信集团有限公司 一种虚拟计算资源的配额管理方法及系统
EP3435231A1 (en) * 2013-05-03 2019-01-30 VMware, Inc. Dynamic virtual machine sizing
CN111427673A (zh) * 2020-03-16 2020-07-17 杭州迪普科技股份有限公司 一种负载均衡方法、装置及设备

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2863304B1 (en) 2012-08-31 2017-10-11 Huawei Technologies Co., Ltd. Allocation method for central processing unit resources and computation node
CN103870332B (zh) * 2012-12-13 2017-08-25 中国电信股份有限公司 虚拟机处理器资源的调整方法、装置与虚拟机系统
EP2775399A4 (en) * 2012-12-26 2015-04-29 Huawei Tech Co Ltd METHOD FOR MANAGING VIRTUAL MACHINE SYSTEM RESOURCES, VIRTUAL MACHINE SYSTEM, AND APPARATUS
CN103116517B (zh) * 2013-01-24 2016-09-14 华为技术有限公司 虚拟化平台下i/o通道的调整方法和调整装置
US8819685B2 (en) 2013-01-24 2014-08-26 Huawei Technologies Co., Ltd. Method and apparatus for adjusting I/O channel on virtual platform
CN103605557A (zh) * 2013-10-25 2014-02-26 普华基础软件股份有限公司 一种虚拟器件管理系统及管理方法
US9280375B1 (en) 2014-04-30 2016-03-08 Google Inc. Dynamically adjustable virtual machine
CN105207948B (zh) * 2014-06-30 2019-05-31 中兴通讯股份有限公司 数据报文的分配方法及装置
WO2016006228A1 (ja) * 2014-07-11 2016-01-14 日本電気株式会社 仮想化システムおよび仮想化方法
CN104363282B (zh) * 2014-11-17 2016-08-24 广联达软件股份有限公司 一种云计算资源调度方法及装置
US9798567B2 (en) 2014-11-25 2017-10-24 The Research Foundation For The State University Of New York Multi-hypervisor virtual machines
CN104714851B (zh) * 2015-03-30 2018-11-02 中国联合网络通信集团有限公司 一种实现资源分配的方法及装置
CN104793985B (zh) * 2015-04-24 2018-03-30 中国联合网络通信集团有限公司 一种虚拟机调度方法和管理设备
CN107045457A (zh) * 2016-02-05 2017-08-15 华为技术有限公司 一种多租户资源共享的方法及装置
CN105912408A (zh) * 2016-05-10 2016-08-31 广东睿江云计算股份有限公司 云主机系统中的cpu调度方法及装置
CN105824708A (zh) * 2016-05-10 2016-08-03 广东睿江云计算股份有限公司 云主机系统中的cpu调度方法及装置
CN107977381B (zh) * 2016-10-24 2021-08-27 华为技术有限公司 数据配置方法、索引管理方法、相关装置以及计算设备
CN106775925B (zh) * 2016-11-11 2020-08-04 郑州云海信息技术有限公司 一种虚拟机cpu的限额处理方法和装置
CN106610870B (zh) * 2016-12-28 2019-10-15 北京奇艺世纪科技有限公司 一种处理节点数量调整方法及装置
CN108459906B (zh) * 2017-02-20 2021-06-29 华为技术有限公司 一种vcpu线程的调度方法及装置
CN106919457A (zh) * 2017-03-03 2017-07-04 郑州云海信息技术有限公司 一种InCloudSphere虚拟化系统的cpu性能优化方法
CN108446176B (zh) * 2018-02-07 2020-07-03 平安普惠企业管理有限公司 一种任务分配方法、计算机可读存储介质及终端设备
CN108874534B (zh) * 2018-04-18 2022-09-16 华为技术有限公司 一种pcpu资源的调度方法和装置
US11016798B2 (en) * 2018-06-01 2021-05-25 The Research Foundation for the State University Multi-hypervisor virtual machines that run on multiple co-located hypervisors
CN109189581B (zh) * 2018-09-20 2021-08-31 郑州云海信息技术有限公司 一种作业调度方法和装置
CN110442423B (zh) * 2019-07-09 2022-04-26 苏州浪潮智能科技有限公司 一种利用控制组实现虚拟机预留cpu的方法和设备
JP7010272B2 (ja) * 2019-10-08 2022-01-26 横河電機株式会社 リアルタイム通信処理システム、およびリアルタイム通信処理方法
CN110928640A (zh) * 2019-10-28 2020-03-27 烽火通信科技股份有限公司 一种云平台的虚拟机带内指标获取方法及系统
CN111431996B (zh) * 2020-03-20 2022-08-09 北京百度网讯科技有限公司 用于资源配置的方法、装置、设备和介质
CN111831398A (zh) * 2020-07-20 2020-10-27 平安科技(深圳)有限公司 虚拟机创建及cpu资源分配方法、装置、设备
CN114237831A (zh) * 2022-02-25 2022-03-25 阿里巴巴(中国)有限公司 虚拟中央处理器热插拔方法、物理主机和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101169731A (zh) * 2007-12-05 2008-04-30 华为技术有限公司 多路多核服务器及其cpu的虚拟化处理方法
CN101354663A (zh) * 2007-07-25 2009-01-28 联想(北京)有限公司 应用于虚拟机系统的真实cpu资源的调度方法及调度装置
US20090150896A1 (en) * 2007-12-05 2009-06-11 Yuji Tsushima Power control method for virtual machine and virtual computer system
CN101593134A (zh) * 2009-06-29 2009-12-02 北京航空航天大学 虚拟机cpu资源分配方法和装置
CN101788920A (zh) * 2010-02-05 2010-07-28 北京航空航天大学 一种基于处理器分区技术的cpu虚拟化方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020184290A1 (en) * 2001-05-31 2002-12-05 International Business Machines Corporation Run queue optimization with hardware multithreading for affinity
US7979863B2 (en) * 2004-05-21 2011-07-12 Computer Associates Think, Inc. Method and apparatus for dynamic CPU resource management
JP4702127B2 (ja) * 2006-03-22 2011-06-15 日本電気株式会社 仮想計算機システム及びその物理リソース再構成方法並びにプログラム
US8312456B2 (en) * 2008-05-30 2012-11-13 International Business Machines Corporation System and method for optimizing interrupt processing in virtualized environments
CN101488098B (zh) * 2009-02-13 2011-11-30 华中科技大学 基于虚拟计算技术的多核计算资源管理系统
US20110029971A1 (en) * 2009-07-30 2011-02-03 Fujitsu Limited Information processing apparatus, image processing method and computer program
CN101706742B (zh) 2009-11-20 2012-11-21 北京航空航天大学 一种基于多核动态划分的非对称虚拟机i/o调度方法
US8918784B1 (en) * 2010-12-21 2014-12-23 Amazon Technologies, Inc. Providing service quality levels through CPU scheduling

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101354663A (zh) * 2007-07-25 2009-01-28 联想(北京)有限公司 应用于虚拟机系统的真实cpu资源的调度方法及调度装置
CN101169731A (zh) * 2007-12-05 2008-04-30 华为技术有限公司 多路多核服务器及其cpu的虚拟化处理方法
US20090150896A1 (en) * 2007-12-05 2009-06-11 Yuji Tsushima Power control method for virtual machine and virtual computer system
CN101593134A (zh) * 2009-06-29 2009-12-02 北京航空航天大学 虚拟机cpu资源分配方法和装置
CN101788920A (zh) * 2010-02-05 2010-07-28 北京航空航天大学 一种基于处理器分区技术的cpu虚拟化方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3435231A1 (en) * 2013-05-03 2019-01-30 VMware, Inc. Dynamic virtual machine sizing
US10430226B2 (en) 2013-05-03 2019-10-01 Vmware Inc. Dynamic virtual machine sizing
CN105094947A (zh) * 2015-07-28 2015-11-25 中国联合网络通信集团有限公司 一种虚拟计算资源的配额管理方法及系统
CN105094947B (zh) * 2015-07-28 2018-06-12 中国联合网络通信集团有限公司 一种虚拟计算资源的配额管理方法及系统
CN111427673A (zh) * 2020-03-16 2020-07-17 杭州迪普科技股份有限公司 一种负载均衡方法、装置及设备
CN111427673B (zh) * 2020-03-16 2023-04-07 杭州迪普科技股份有限公司 一种负载均衡方法、装置及设备

Also Published As

Publication number Publication date
CN102317917A (zh) 2012-01-11
US20140115586A1 (en) 2014-04-24
EP2698711B1 (en) 2015-08-05
US9519499B2 (en) 2016-12-13
CN102317917B (zh) 2013-09-11
EP2698711A1 (en) 2014-02-19
EP2698711A4 (en) 2014-02-26

Similar Documents

Publication Publication Date Title
WO2012103728A1 (zh) 热点域虚拟机cpu调度方法及虚拟机系统
EP3073373B1 (en) Method for interruption affinity binding of virtual network interface card, and computer device
US10387202B2 (en) Quality of service implementation in a networked storage system with hierarchical schedulers
US8381215B2 (en) Method and system for power-management aware dispatcher
US9367340B2 (en) Resource management method and apparatus for virtual machine system, and virtual machine system
US9619287B2 (en) Methods and system for swapping memory in a virtual machine environment
Lee et al. Supporting soft real-time tasks in the xen hypervisor
US10628273B2 (en) Node system, server apparatus, scaling control method, and program
JP5324934B2 (ja) 情報処理装置および情報処理方法
WO2016078178A1 (zh) 一种虚拟cpu调度方法
WO2015096656A1 (zh) 线程创建方法、业务请求处理方法及相关设备
US20130167152A1 (en) Multi-core-based computing apparatus having hierarchical scheduler and hierarchical scheduling method
WO2016115000A1 (en) Hybrid scheduler and power manager
CN109564528B (zh) 分布式计算中计算资源分配的系统和方法
CN107851039A (zh) 用于资源管理的系统和方法
JP2014516192A5 (zh)
JP2014219977A (ja) 動的仮想マシンサイジング
CN103179048A (zh) 云数据中心的主机QoS策略变换方法及系统
Guan et al. Workload-aware credit scheduler for improving network I/O performance in virtualization environment
JP5961402B2 (ja) 計算機システム
KR101330609B1 (ko) 모바일 멀티코어 가상화 시스템에서 실시간 처리를 보장하기 위한 스케쥴링 방법
Dhule et al. Energy efficient green consolidator for cloud data centers
US11934890B2 (en) Opportunistic exclusive affinity for threads in a virtualized computing system
WO2015180111A1 (zh) 一种管理系统资源的方法、装置及设备
CN111506407B (zh) Pull模式与Push模式相结合的资源管理与作业调度方法、系统

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201180000976.3

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11857577

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011857577

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE