понедельник, 21 сентября 2009 г.

cpu utilization, co-scheduling esx 4 / esxi 4

Если интересно понять, как ESX(i) 4 работает с процессором:

VMware vSphere 4: The CPU Scheduler in VMware ESX 4.
пара цитат:

Like a process, a vCPU may be in one of the following states. In running state, a vCPU executes on a pCPU. In ready state, it is runnable
but waiting in a queue. In wait state, it is blocking on a resource. An idle vCPU may enter wait_idle, a special wait state, which does
not depend on a resource. The idle vCPU wakes up when interrupted.
UNIX CPU scheduler uses a priority-based scheme. It associates each process with a priority and makes a scheduling choice or
preemption decision based on the priorities. For example, a process with the highest priority among ready processes would be
chosen, and then the process may preempt the currently running process if it is higher in the priority.
Unlike UNIX, ESX implements the proportional-share based algorithm. It associates each world with a share of CPU resource. This
is called entitlement and is calculated from the user-provided resource specifcations like shares, reservation, and limit. See the ESX
Resource Management Guide [1] for details.


про Co-scheduling SMP VMs in VMware ESX Server.

Почему на 6ти ялерных процессорах какие то ВМ могут работать медленее чем ожидается, и как с этим бороться - Scheduler Cell Size on Six-Core Processors.

Некоторые данные тестирований тут - Measuring the Cost of SMP with Mixed Workloads.

Мораль какая:
процессоров лучше меньше. Горизонтальное масштабирование - наше все. Сильно процессороемкие задачи имеет смысл виртуализовать только если очень хочется.

0 коммент.:

Отправить комментарий