Skip to Main Content

Infrastructure Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

HARD PARTITIONING OF GUEST VMS ON ORACLE VM SERVER

ShahrukhApr 28 2016 — edited Nov 22 2016

Hi All

We have 2 Oracle VM servers with the following configuration:

2 Sockets

each socket contains = 8 cores

each core = 2 threads

16 cores = 32 threads on each server  and 64 threads in total

We need to pin the CPU to physical cores in order to avoid licensing issues. We have 3 CPU license with intel multiplication factor 0.5 it equals to 6 cores and have divided these cores to 3 to 4 databases. In production we have assigned 4 CPUs in the guest VM which is basically 2 cores, i have few queries, request the experts to please provide some suggestions:

1. Currently the performance of production is excellent on 2 core but by pinning the CPUs to cores will it have any impact on performance? every time when i execute the command "xm vcpu-list 1" it shows different CPUs on soft portioning, so it is keep on changing the cores and scheduling the request to available cores, but by pinning it on particular core will it have any performance degradation?

2. The document "https://ericsteed.wordpress.com/2015/05/06/oracle-vm-hard-partitioning-potential-performance-issues/" suggest that even if hyper threading is enabled 4 CPUs to be assigned only to 2 cores to limit the license but: (Point 3)

3. Document "http://mokumsolutions.com/hard-and-soft-partitioning-oracle-vm" says "Oracle VM’s default CPU scheduler is the credit scheduler. The credit scheduler uses a credit/debit system to fairly share CPU resources between virtual machines. Credits are assigned to each running virtual machine, along with the allocated fraction of CPU resources. The credit scheduler continually increments/decrements credits from running virtual machines, which is how the credit scheduler balances CPU resources. In many ways, the credit scheduler is like the Linux scheduler. The Linux scheduler is used as the default CPU scheduler with the KVM hypervisor. Both schedulers can preempt processes as needed while trying to ensure proportional fair share allocations. The default behavior of the credit scheduler is to bind each virtual machine CPU to a separate physical core. For example, when you create a virtual machine with two CPUs, the credit scheduler will map the two virtual machine CPUs to two physical cores. So when pinning virtual machine CPUs, we follow the credit scheduler’s default behavior of mapping virtual machine CPUs to an Oracle VM Server’s CPU cores"      --> This means each thread should be assigned to different core this is how default scheduler works? what is the right path?

Help please

Thank you

Regards

shahrukh

This post has been answered by ratdude on May 23 2016
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jun 20 2016
Added on Apr 28 2016
7 comments
4,225 views