Can VMs use paralleled CPUs?

asked 2013-11-30 23:29:46 -0600

jamesmarkof gravatar image

Have been researching this topic for a while now, cannot find anything specific.

How do I set openstack up so that I can create VMs that use other compute nodes CPU resources? Is it possible at all?

Example: I have compute1, compute2, compute3 nodes. I deploy a VM on compute2, but let it use CPU cores from compute1 and compute2 at the same time.

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted
2

answered 2013-12-02 10:32:48 -0600

simone.tiraboschi gravatar image

What you are trying to do is a NUMA cluster; NUMA means non-uniform memory access. A typical NUMA cluster is a really big system with a lot of CPUs on different nodes; to work together that CPUs still need to share some memory access on a fast and large data bus so you need specialized hardware. This architecture is called numa because the "local" memory access is faster than shared memory one and so it's not uniform.

Both KVM and XEN have some kind of support for NUMA system but it's in general not a matter of OpenStack. OpenStack indeed needs to know what core is on what node to avoid fuzzy core distribution relying as far as possible on local memory access.

Here's a blueprint for it: https://blueprints.launchpad.net/nova/+spec/numa-aware-cpu-binding

edit flag offensive delete link more

Comments

Very interesting. Thanks for the info.

jamesmarkof gravatar imagejamesmarkof ( 2013-12-02 13:04:34 -0600 )edit

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower

Stats

Asked: 2013-11-30 23:29:46 -0600

Seen: 149 times

Last updated: Dec 02 '13