Browse Prior Art Database

Method and mechanism to improve shared processor performance with soft entitlement in an entitlement-based dispatching scheme

IP.com Disclosure Number: IPCOM000224963D
Publication Date: 2013-Jan-16
Document File: 2 page(s) / 31K

Publishing Venue

The IP.com Prior Art Database

Abstract

Some entitlement mechanism to optimize hypervisor locality scheduling

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 37% of the total text.

Page 01 of 2

Method and mechanism to improve shared processor performance with soft entitlement in an entitlement-based dispatching scheme

Processor virtualization enables a physical processor system to support multiple concurrent operating environments. Each operating environment, or partition, has the illusion of operating on an independent machine or system. Processors may be virtualized using time-slicing techniques which allow a virtual processor to operate on the physical processor for some period of time and then be undispatched.

In some virtualization embodiments, each partition's use of physical processor resources is limited by the following constraints:


1) The number of virtual processors in the partition - This controls concurrency of the partition and provides an upper bound on the amount of physical resources a partition may be without dynamic reconfiguration.


2) The entitlement of the partition. This is the guaranteed processor resource available if the partition is processor limited.


3) Whether or not the partition is uncapped. If the partition is uncapped, it may use more processor resource than its entitlement if the processor resource is available and the number of virtual processor capability is greater than the entitlement.


4) Variable weight - a mechanism used to prioritize usage of processor resource used above entitlement.

In order to satisfy such mechanisms, the dispatching algorithm of such a hypervisor implements a time-slice methodology which imposes some ordering on a periodic basis known as an evaluation cycle. For the sake of simplicity, consider the duration of an evaluation cycle to be 10 milliseconds. At the beginning of the evaluation cycle, the hypervisor effectivity begins dispatching ready virtual processors with a time slice that would enable the virtual processor to use its entitlement for that evaluation cycle time period. Typically, the hypervisor is able to line up those dispatches in a way that the virtual processors are dispatched on physical processors which are directly connected to the physical memory that the virtual processor is mostly executing through. This enables the hypervisor to provide a very good mapping of processor usage to local memory, or locality.

However, more and more customers have embraced the concept of uncapped partitions using an over commit of physical processor capacity. This notion assumes that the average usage of partitions on a system is much lower than the peak usage, and that the peak usage is infrequent. The average utilization of the system can be driven higher by assigning partitions less entitlement than they may need and making the partitions uncapped. While this definitely allows the systems to be driven to a higher utilization, it also tends to result in the locality of processors to memory dropping as well. That is because the hypervisor has less flexibility in dispatching virtual processors operating above their entitlement to physical processors which are...