The IP.com Prior Art Database
English (United States)
4 pages / 31.1 KB
An efficient method to allocate resources to a virtual machine
In a virtualized environment, system resources are distributed across multiple partitions where each partition operates as a separate entity even though underneath the resources of the system are shared. The allocation of resources and how they are shared play an important role in how the system performs.
Besides partition allocation also influences how power efficiency is managed. If the system is underutilized, turning off cores, memory controllers, memory dimms will save energy. Through allocation, free resources can be grouped in such a way to turn a whole unit off to optimize energy efficiency instead of turning individual or partial units which may not result in optimum efficiency.
The allocation of resources can be either static or dynamic, but in either case the system architecture, workload characteristics and their system resource requirements have to play a role in how resources are allocated to make the system run efficiently. Partition resource requirements can come in any combination of denominations, fitting or mapping all these resource denominations to a system such that partitions get processors and memory close together so they get the maximum performance is a complicated task. In addition systems come with different resource configurations, with different memory distribution etc., mandates that all these characteristics are carefully considered when allocating resources to a partition. Also there are other dynamic changes such as addition or removal of resources brings another complexity that requires that the hypervisor not only optimizes resources during allocation but also throughout the life of the partitions in a system.
The goal of this invention is to present an algorithm the describes methodology to optimize resource allocation to partitions irrespective of different system configurations or different partition requirements.
Advanced Power Virtualization supports a variety of virtualization technologies such as dedicated partitions, dedicated donate partitions, shared partitions where fractional processor resources are consumed and resources can be capped or uncapped. These different virtualization technologies are tailored to improve the system total cost of ownership through optimizing and maximizing system utilization. The resource allocation first takes the system architecture, partition resource requirements, its preferred virtualization technology as input parameters and uses allocation algorithm to allocate system resources.
In order to allocate partitions memory close to its processors, it uses a memory per core metric normalized to the system's memory to core ratio per chip or per node for a given system's configuration. This metric is tracked for each chip and node throughout the process of allocating resources to all partitions. This metric helps to avoid depletion of one of the resources n...