开发者

Hyper-V, VMware ESX and custom power management

In a research project involving virtualization and power management I am testing various resource allocation scenarios and custom power management algorithms. I am interested in isolating a virtual machine to use only a certain CPU core.

I was thinking about using Windows 2008R2 and Hyper-V, but Hyper-V does not allow setting CPU affinity for a virtual machine, is there any way I can make sure that a virtual machine running a CPU intensive task will开发者_如何学运维 use only one core of the CPU (the VM is configured to use a single CPU) and have the rest of the cores available for other task?

VMware ESX Server is an interesting choice since it provides the settings I need (including hot memory add), however it seems like a closed system. Does the OS of ESX Server, based on Linux from what I understand, allow for installing custom application through which to control aspects related to power management of the physical server's components (e.g. perform CPU frequency scaling). Does it provide any APIs? I am aware the product already has power management features, but I am looking for means to achieve custom implementations.

Besides these two solutions, can you recommend other hypervisors which provide facilities such as setting CPU affinity, CPU limits and reservations, hot memory add and which allow for custom applications running on the host server (also provide APIs to program such applications) - maybe Citrix XenSource, KVM (I am not familiar with these solutions)?


I don't think VMware would support modifications to the server, but you can get a command line on the ESX server as essentially you're right, it's linux underneath (RedHat mod I believe).

Xen/KVM are open source so you can hack away. You may be advised to go down the KVM route if you have budgetary constraints as the community will support you. The inclusion of Citrix may prove troublesome in an enterprise setting.


is there any way I can make sure that a virtual machine running a CPU intensive task will use only one core of the CPU

Openstack (KVM as hypervisor) provides a feature of CPU pinning through which you can bind a vCPU to a physical CPU core. Let me know if you need more information on the subject.

Here is a link explaining the feature. This link also confirms that Hyper-V doesn't support CPU pinning.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜