Subject: Re: XEN0 kernel with options MULTIPROCESSOR
To: None <port-xen@NetBSD.org>
From: Johan Ihren <johani@johani.org>
List: port-xen
Date: 03/31/2006 15:16:03
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 30 Mar 2006, at 21:35, Johnny Lam wrote:

> Florent Parent wrote:
>> On 3/30/06, Johnny Lam <jlam@pkgsrc.org> wrote:
>>> No, there is no multiprocessor domain support in Xen 2.0.x.   
>>> However, if
>>> you have multiple CPUs, you can assign domains to each of the  
>>> CPUs by
>>> appropriately setting the "cpu" variable in your domain config file.
>> I might be missing something here, but if domain0 (not domainU) is  
>> not
>> "aware" of the 2 CPUs (in my case), how can you possibly assign the
>> CPUs to unprivileged domains?
>
> Your domain config file is used as input to xend to talk to the Xen  
> hypervisor, which *does* see both CPUs, and can assign domainUs to  
> a particular CPU.

On that subject:

I understand that if I do explicit CPU - domU assignments then the  
expected thing happens. But what happens if I *don't* to that? I.e.  
if I have several CPUs and always leave to Xen to to allocation (i.e.  
"cpu=-1"):

* will this lead to static or dynamic CPU allocation? I.e. will a  
particular domU stay locked on a particular CPU or not?

* if static: how does the allocation occur? round robin? random?

My real concern is this: I often have a significant number of domUs  
(10+). There is also noticable churn, i.e. some domUs are destroyed  
and new domUs are created. Today all the domUs run on the same CPU,  
but I'm planning to aquire one or two SMP boxes for this. If  
allocation is completely static then it would seem that there's a  
risk of ending up with an "unbalanced" allocation where most domUs  
run on one CPU thereby possibly defeating most of the benefits of the  
SMP box.

Do I need to work around this by tracking CPU allocation and do  
explicit allocation for load sharing purposes?

Johan


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (Darwin)

iD8DBQFELSuWKJmr+nqSTbYRAo0FAKCqYsLhGlWU8J+nBL86HPW+u4X4nQCeMqyT
tfamiPxQ3UgftJ8gt0zClg4=
=Iz7s
-----END PGP SIGNATURE-----