Browse Prior Art Database

Mechanism for Optimal Configuration of I/O Memory Entitlement

IP.com Disclosure Number: IPCOM000179082D
Original Publication Date: 2009-Feb-05
Included in the Prior Art Database: 2009-Feb-05
Document File: 4 page(s) / 30K

Publishing Venue

IBM

Abstract

This article describes a mechanism for automatically calculating and configuring the optimal setting for a virtual machine's I/O memory entitlement. I/O memory entitlement refers to the maximum amount of memory a virtual memory virtual machine (aka a shared memory virtual machine) is capable of I/O mapping.

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

Page 1 of 4

Mechanism for Optimal Configuration of I /O Memory Entitlement

Disclosed is a mechanism for automatically calculating and configuring the optimal setting for a virtual machine's I/O memory entitlement.

With the rise of virtualization technology, one critical feature is the ability to virtualize a virtual machine's real (aka physical) memory. Virtualizing real memory provides numerous benefits. It allows for better utilization of physical memory on a machine. It allows for hosting a large number of virtual machines on a single server by over-commitment of physical memory, and it allows for advanced workload management capabilities (i.e. shift memory between virtual machines that are busy at different times of the day).

One challenge with virtualized real memory is determining how much I/O memory entitlement to configure for a virtual machine (i.e. a logical partition). I/O memory entitlement refers to the amount of memory a virtual machine can map for I/O (e.g. for DMA). When a virtual machine has I/O mapped memory, the virtual machine's I/O mapped pages must be locked in physical memory and cannot be used by other virtual machines. To prevent a virtual machine from consuming an unfair portion of a machine's physical memory, the amount of memory a virtual machine can I/O map must be limited. A virtual machine's I/O memory entitlement is the limit on the amount of memory a virtual machine can I/O map.

With the concept of I/O memory entitlement, one challenge a user faces is determining how much I/O memory entitlement to configure to a virtual machine. If a user configures too little, the performance of the workload will suffer. The workload will be constrained on how much memory it can I/O map, which will reduce the workload's I/O throughput. If a user configures too much, I/O memory entitlement is wasted, reducing the number of virtual machines that can be run on the physical machine. Thus, selecting the optimal I/O memory entitlement setting for a workload in a virtual machine is critical.

In general, there are two cases of how workloads get deployed in virtual real memory virtual machines: (1) migration of an existing workload from a dedicated memory virtual machine to a virtual memory virtual machine; (2) deployment of a new workload into a virtual memory virtual machine. In both cases, configuring the I/O memory entitlement setting for the virtual machine is very challenging.

In the case of a migration of an existing workload from a dedicated memory virtual machine to a virtual memory virtual machine, a user has an existing workload that runs well in a dedicated memory virtual machine, and the user wants to ensure that the performance of the workload is not degraded when running in a virtual memory virtual machine. Thus, the user must ensure that the I/O memory entitlement configuration is optimal. Otherwise, the performance of the workload could be seriously degraded when running it in...