process T
C
and dividing it through the numbers of
CPU N
P
. This results in the throughput per CPU.
The number of work processes is expressed by C.
An example may illustrate this: Assume a 4 CPU
machine with 4 configured work processes per CPU.
Therefore we need to sum up 16 results from the
work processes and divide this result through 4 CPU
as we are interested in the result per CPU.
2.2.3 Test Characteristics
The characteristic of the Zachmann test is a high
CPU and memory load. The work processes access
the RAM of the machine very often as the internal
tables of the Zachmann test are held in the buffers of
the SAP system. Because of the random access onto
the internal tables, the CPU is utilized with a high
load. Configuring too much work processes without
having enough memory results in a high swapping
activity. We used the Zachmann test to measure the
CPU activity overhead of a virtualization solution
and the scalability of a SAP system.
It is important to avoid swapping activities
monitoring the relation between user time and
system time. Running the test with insufficient
memory will lead to a high system time as the
swapping activity is very time-consuming. A system
time less than 5% (own experiences) shows
sufficient memory. Too much swapping activity
falsifies the gained results and does not show the
correct performance.
2.3 Testing Configuration
2.3.1 Hardware and Software Configuration
The hardware test configuration consists of a Sun
Fire X4200 server from Sun Microsystems with two
2.4GHz AMD Dual core Opteron 280 CPU. It is
equipped with 16GB RAM (DDR2-667) and four
internal 73GB 10000 RPM SAS disks. Three disks
operated as a RAID-0 compound, containing the
databases of the SAP systems and one disk operated
as the root disk, containing the operating system and
the application servers of the SAP systems.
The operating system does not distinguish
between CPUs and cores. A dual core CPU is
counted as two CPUs in the operating system. For
simplicity we use the term CPU in the rest of the
paper.
As operating system Sun Solaris Express
Developer Edition 1/08 is used. In this version the
XEN hypervisor of Sun Microsystems is integrated.
The installed hypervisor has the version 3.0.4-1. The
Express Edition comes with two kernels: one
includes the hypervisor, the other one does not. This
makes it easy to switch between a virtualized and
non-virtualized operation.
We use SLCS version 2.3 operates on basis of a
7.0 SAP kernel (patch number 126). The underlying
DBMS is MaxDB version 7.6.03.07. The database
instance is configured with 3224.06MB Data Cache.
2.3.2 Overcommitment Situations
In the test scenarios several virtual machines were
configured. For each virtual machine it is possible to
configure vCPU. These are virtual CPUs, which are
assigned to the virtual machine. This assignment can
be fix or variable.
A fix assignment means that a physical CPU is
dedicated as a vCPU to a VM. As a result, the VM
can only use this physical CPU as a resource and no
other VM has access to the CPU. This is a typical
1:1 relationship between physical and virtual CPU.
A variable assignment is made upon a group of
physical CPUs, so that several physical CPUs are
assigned but not dedicated explicitly to several VMs.
As a result all VMs have access to all assigned
physical CPU and the physical resource must be
shared fairly. This is a n:m relationship between
physical CPU and vCPU. In the situations of
variable assignments the upper bound for the
number of assigned vCPU is the number of physical
CPU. You may assign up to 4 vCPU to a VM in a 4
CPU machine.
When assigning several vCPU as a variable
assignment it may come to a situation with more
vCPUs assigned to the VMs than physical CPUs are
existing. As an example: on a machine with 4
physical CPU you want to run 4 virtual machines.
You configure each of them with 4 vCPU. Summing
up the numbers of vCPU you will get 16 vCPUs
whereas the underlying machine only runs 4
physical CPUs. We call this situation an
“overcommitment” situation (or oversubscription
situation) as there are more physical resources
assigned to the virtual machines than actually exist.
The term overcommitment or oversubscription
situation is not established in any research work. It
was mentioned in (Apparao, 2008) for the first time.
When facing an overcommitment situation you
will have to quantify the overcommitment.
Therefore, we use the theoretical computing power
and set N
P
(as the number of physical CPU) as
100%.
Overcommitment O is calculated by using the
sum of all assigned vCPU N
V
from all VMs V and
PERFORMANCE OVERHEAD OF PARAVIRTUALIZATION ON AN EXEMPLARY ERP SYSTEM
349