US2018157519A1PendingUtilityA1

Consolidation of idle virtual machines

Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: Apr 20, 2011Filed: Oct 9, 2017Published: Jun 7, 2018
Est. expiryApr 20, 2031(~4.7 yrs left)· nominal 20-yr term from priority
Inventors:Thomas Fahrig
G06F 9/45558G06F 2009/45591G06F 9/5094G06F 9/5077Y02D10/22Y02D10/36Y02D10/00
53
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Idle virtual machine partitions in a virtualized computing environment are consolidated onto one or more idle logical processors. A hypervisor monitors the individual utilization of multiple virtual machine partitions in a computing environment and determines which virtual machine partitions are idle. The hypervisor also monitors the individual utilization of multiple logical processors in the computing environment and determines which logical processors are idle. The hypervisor schedules all of the idle virtual machine partitions on one or more of the idle logical processors. This can improve the performance for work-generating partitions and ensure compliance with service level agreements. At the same time, it can provide efficient power management in that is consolidates idle virtual machines onto a smaller subset of logical processors.

Claims

exact text as granted — not AI-modified
1 . A method for use in a computer system which comprises a plurality of logical processors and a plurality of partitions, the method comprising:
 monitoring a utilization level of each of the plurality of partitions;   determining that at least one of the plurality of partitions is idle based on the utilization level of each of the plurality of partitions;   monitoring a utilization level of each of the plurality of logical processors;   determining that a first logical processor of the plurality of the logical processors is idle; and   scheduling each of the determined at least one idle partitions on the first logical processor.   
     
     
         2 . The method of  claim 1 , wherein a hypervisor is used to determine that at least one of the plurality of partitions is idle. 
     
     
         3 . The method of  claim 1 , further comprising determining that the first logical processor is an ideal logical processor for a particular partition, and scheduling the particular partition on the first logical processor. 
     
     
         4 . The method of  claim 1 , further comprising determining that a second logical processor is idle, and scheduling each of the idle partitions on the second logical processor. 
     
     
         5 . The method of  claim 1 , wherein the utilization level of each of the plurality of logical processors is a utilization level of each of the plurality of logical processors based on the utilization of non-idle partitions, and wherein determining that the first logical processor is idle comprises comparing the utilization level of each of the plurality of logical processors to an idle logical processor threshold. 
     
     
         6 . The method of  claim 5 , wherein the idle logical processor threshold is a predetermined logical processor utilization percentage. 
     
     
         7 . The method of  claim 1 , wherein determining that at least one of the plurality of partitions is idle comprises comparing the utilization level of each of the plurality of partitions to an idle partition threshold. 
     
     
         8 . The method of  claim 7 , wherein the idle partition threshold is a predetermined partition utilization percentage. 
     
     
         9 . The method of  claim 1 , wherein each of the plurality of partitions which is not idle is scheduled on a different one of the plurality of logical processors. 
     
     
         10 . The method of  claim 1 , wherein the method is performed by a hypervisor. 
     
     
         11 . The method of  claim 1 , further comprising changing a power state of at least one of the plurality of logical processors based on the scheduling of each idle partition. 
     
     
         12 . A computing system, comprising:
 at least one physical processor;   a plurality of partitions operating in the computing system;   a plurality of logical processors capable of hosting one or more of the plurality of partitions, each of the plurality of logical processors operating on the at least one physical processor; and   a hypervisor, wherein the hypervisor is configured to:
 monitor a utilization level of each of the plurality of partitions; 
 determine that at least one of the plurality of partitions is idle based on the utilization level of each of the plurality of partitions; 
 monitor a utilization level of each of the plurality of logical processors; 
 determine that a first logical processor of the plurality of the logical processors is idle; and 
 schedule each of the at least one idle partitions on the first logical processor. 
   
     
     
         13 . The system of  claim 12 , wherein a hypervisor is used to determine that at least one of the plurality of partitions is idle. 
     
     
         14 . The system of  claim 12 , wherein the hypervisor is further configured to determine that the first logical processor is an ideal logical processor for a particular partition, and scheduling the particular partition on the first logical processor. 
     
     
         15 . The system of  claim 12 , wherein the hypervisor is further configured to determine that a second logical processor is idle, and scheduling each of the idle partitions on the second logical processor. 
     
     
         16 . The system of  claim 12 , wherein the utilization level of each of the plurality of logical processors is a utilization level of each of the plurality of logical processors based on the utilization of non-idle partitions, and wherein determining that the first logical processor is idle comprises comparing the utilization level of each of the plurality of logical processors to an idle logical processor threshold; and wherein the idle logical processor threshold is a predetermined logical processor utilization percentage. 
     
     
         17 . The system of  claim 12 , wherein determining that at least one of the plurality of partitions is idle comprises comparing the utilization level of each of the plurality of partitions to an idle partition threshold; and wherein the idle partition threshold is a predetermined partition utilization percentage. 
     
     
         18 . The system of  claim 12 , wherein each of the plurality of partitions which is not idle is scheduled on a different one of the plurality of logical processors. 
     
     
         19 . The system of  claim 12 , wherein the hypervisor is further configured to change a power state of at least one of the plurality of logical processors based on the scheduling of each idle partition. 
     
     
         20 . A computer readable storage device tangibly embodying computer readable instructions for execution in a computing environment comprising a plurality of logical processors and a plurality of partitions, the instructions comprising:
 instructions to monitor a utilization level of each of the plurality of partitions;   instructions to determine that at least one of the plurality of partitions is idle based on the utilization level of each of the plurality of partitions;   instructions to monitor a utilization level of each of the plurality of logical processors;   instructions to determine that a first logical processor of the plurality of the logical processors is idle; and   instructions to schedule each of the at least one idle partitions on the first logical processor.

Join the waitlist — get patent alerts

Track US2018157519A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.