Re: [PATCH] introduce kvm64 CPU

2009-08-23 Thread Avi Kivity

On 08/22/2009 12:53 AM, Andre Przywara wrote:
I think this is best left to management software, which has more 
information

about the migration pool.

I believe what we want is an automatic tool that will connect to a
list of machines,and determine which qemu cpu type we should use.


 Doesn't sound like black magic...
I already have such a basic tool. It uses ssh (with pubkey) to connect 
to the target machine, then uses dd on /dev/cpu/0/cpuid to get the 
CPUID info. This requires cpuid.ko to be loaded and the permissions on 
the device file to be sufficient (the appropriate udev patch is 
already upstream). It then computes the least common denominator bits 
from several machines.
Were you thinking of that approach or do you want to include this host 
CPUID functionality into QEMU (somehow embedded in the migration 
handler)?


When qemu is involved it is already far too late.  This node needs to be 
classified when it is added to the cluster.


But maybe we can integrate it into 'qemu -capabilities', if and when 
that is added.


--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] introduce kvm64 CPU

2009-08-23 Thread Avi Kivity

On 08/22/2009 12:59 AM, Andre Przywara wrote:
Typically users will want more specialized greatest common denomiator 
cpu types; if a site has standardized on recent hardware they will 
want the features of that hardware exposed.
Sure, but this was not the purpose of this patch. Currently KVM guests 
see a CPU type which is TCG dependent, so I just wanted to get rid of 
this. Features of TCG and features of the host processor are totally 
uncorrelated. This new type should be KVM's default, leaving -cpu host 
as the alternative for the non-migration case.


That does make sense.  Note we can call it '-cpu kvm' since qemu will 
strip away long mode if it is not supported by the cpu or by the kernel.


--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] introduce kvm64 CPU

2009-08-23 Thread Jamie Lokier
Avi Kivity wrote:
 On 08/22/2009 12:59 AM, Andre Przywara wrote:
 Typically users will want more specialized greatest common denomiator 
 cpu types; if a site has standardized on recent hardware they will 
 want the features of that hardware exposed.
 Sure, but this was not the purpose of this patch. Currently KVM guests 
 see a CPU type which is TCG dependent, so I just wanted to get rid of 
 this. Features of TCG and features of the host processor are totally 
 uncorrelated. This new type should be KVM's default, leaving -cpu host 
 as the alternative for the non-migration case.
 
 That does make sense.  Note we can call it '-cpu kvm' since qemu will 
 strip away long mode if it is not supported by the cpu or by the kernel.

I thought the point was to provide a lowest common denominator for
migration, while acknowledging that 64-bit is too useful to exclude?

So if you start running on a 64-bit host, but know you have 32-bit
hosts in your pool, you'll need '-cpu kvm32'.

And if you start on a 32-bit host, but want to migrate to a 64-bit
host, will that work if the destination has different cpuid than the
source?

-- Jamie
--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] introduce kvm64 CPU

2009-08-23 Thread Amit Shah
On (Fri) Aug 21 2009 [23:53:41], Andre Przywara wrote:
 Glauber Costa wrote:
 On Fri, Aug 21, 2009 at 12:41 PM, Avi Kivitya...@redhat.com wrote:
 On 08/21/2009 12:34 AM, Andre Przywara wrote:
 In addition to the TCG based qemu64 type let's introduce a kvm64 CPU type,
 which is the least common denominator of all KVM-capable x86-CPUs
 (based on Intel Pentium 4 Prescott). It can be used as a base type
 for migration.

 Typically users will want more specialized greatest common denomiator cpu
 types; if a site has standardized on recent hardware they will want the
 features of that hardware exposed.

 I think this is best left to management software, which has more information
 about the migration pool.
 I believe what we want is an automatic tool that will connect to a
 list of machines,and determine which qemu cpu type we should use.
  Doesn't sound like black magic...
 I already have such a basic tool. It uses ssh (with pubkey) to connect  
 to the target machine, then uses dd on /dev/cpu/0/cpuid to get the CPUID  
 info. This requires cpuid.ko to be loaded and the permissions on the  
 device file to be sufficient (the appropriate udev patch is already  
 upstream). It then computes the least common denominator bits from  
 several machines.

I had such patches as well. I think I sent them on qemu-devel.

When do you plan on sending your patches out?

Amit
--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] introduce kvm64 CPU

2009-08-21 Thread Jamie Lokier
Andre Przywara wrote:
 In addition to the TCG based qemu64 type let's introduce a kvm64 CPU type,
 which is the least common denominator of all KVM-capable x86-CPUs
 (based on Intel Pentium 4 Prescott). It can be used as a base type
 for migration.

The idea is nice and the name is right, but the description is wrong.

It obviously isn't the least common denominator of all KVM-capable
x86-CPUs, as my KVM-capable Core Duo (32-bit) cannot run it.

A kvm32 would be nice for symmetry.

-- Jamie
--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] introduce kvm64 CPU

2009-08-21 Thread Avi Kivity

On 08/21/2009 12:34 AM, Andre Przywara wrote:

In addition to the TCG based qemu64 type let's introduce a kvm64 CPU type,
which is the least common denominator of all KVM-capable x86-CPUs
(based on Intel Pentium 4 Prescott). It can be used as a base type
for migration.
   


Typically users will want more specialized greatest common denomiator 
cpu types; if a site has standardized on recent hardware they will want 
the features of that hardware exposed.


I think this is best left to management software, which has more 
information about the migration pool.


--
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.

--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] introduce kvm64 CPU

2009-08-21 Thread Glauber Costa
On Fri, Aug 21, 2009 at 12:41 PM, Avi Kivitya...@redhat.com wrote:
 On 08/21/2009 12:34 AM, Andre Przywara wrote:

 In addition to the TCG based qemu64 type let's introduce a kvm64 CPU type,
 which is the least common denominator of all KVM-capable x86-CPUs
 (based on Intel Pentium 4 Prescott). It can be used as a base type
 for migration.


 Typically users will want more specialized greatest common denomiator cpu
 types; if a site has standardized on recent hardware they will want the
 features of that hardware exposed.

 I think this is best left to management software, which has more information
 about the migration pool.
I believe what we want is an automatic tool that will connect to a
list of machines,
and determine which qemu cpu type we should use. Doesn't sound like
black magic...


 --
 I have a truly marvellous patch that fixes the bug which this
 signature is too narrow to contain.

 --
 To unsubscribe from this list: send the line unsubscribe kvm in
 the body of a message to majord...@vger.kernel.org
 More majordomo info at  http://vger.kernel.org/majordomo-info.html




-- 
Glauber  Costa.
Free as in Freedom
http://glommer.net

The less confident you are, the more serious you have to act.
--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] introduce kvm64 CPU

2009-08-21 Thread Andre Przywara

Glauber Costa wrote:

On Fri, Aug 21, 2009 at 12:41 PM, Avi Kivitya...@redhat.com wrote:

On 08/21/2009 12:34 AM, Andre Przywara wrote:

In addition to the TCG based qemu64 type let's introduce a kvm64 CPU type,
which is the least common denominator of all KVM-capable x86-CPUs
(based on Intel Pentium 4 Prescott). It can be used as a base type
for migration.


Typically users will want more specialized greatest common denomiator cpu
types; if a site has standardized on recent hardware they will want the
features of that hardware exposed.

I think this is best left to management software, which has more information
about the migration pool.

I believe what we want is an automatic tool that will connect to a
list of machines,and determine which qemu cpu type we should use.

 Doesn't sound like black magic...
I already have such a basic tool. It uses ssh (with pubkey) to connect 
to the target machine, then uses dd on /dev/cpu/0/cpuid to get the CPUID 
info. This requires cpuid.ko to be loaded and the permissions on the 
device file to be sufficient (the appropriate udev patch is already 
upstream). It then computes the least common denominator bits from 
several machines.
Were you thinking of that approach or do you want to include this host 
CPUID functionality into QEMU (somehow embedded in the migration handler)?


Regards,
Andre.

--
Andre Przywara
AMD-Operating System Research Center (OSRC), Dresden, Germany
Tel: +49 351 488-3567-12
to satisfy European Law for business letters:
Advanced Micro Devices GmbH
Karl-Hammerschmidt-Str. 34, 85609 Dornach b. Muenchen
Geschaeftsfuehrer: Jochen Polster; Thomas M. McCoy; Giuliano Meroni
Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen
Registergericht Muenchen, HRB Nr. 43632

--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] introduce kvm64 CPU

2009-08-21 Thread Andre Przywara

Avi Kivity wrote:

On 08/21/2009 12:34 AM, Andre Przywara wrote:
In addition to the TCG based qemu64 type let's introduce a kvm64 CPU 
type,

which is the least common denominator of all KVM-capable x86-CPUs
(based on Intel Pentium 4 Prescott). It can be used as a base type
for migration.


Typically users will want more specialized greatest common denomiator 
cpu types; if a site has standardized on recent hardware they will want 
the features of that hardware exposed.
Sure, but this was not the purpose of this patch. Currently KVM guests 
see a CPU type which is TCG dependent, so I just wanted to get rid of 
this. Features of TCG and features of the host processor are totally 
uncorrelated. This new type should be KVM's default, leaving -cpu host 
as the alternative for the non-migration case.


I think this is best left to management software, which has more 
information about the migration pool.

Sure.

Regards,
Andre.

--
Andre Przywara
AMD-Operating System Research Center (OSRC), Dresden, Germany
Tel: +49 351 488-3567-12
to satisfy European Law for business letters:
Advanced Micro Devices GmbH
Karl-Hammerschmidt-Str. 34, 85609 Dornach b. Muenchen
Geschaeftsfuehrer: Jochen Polster; Thomas M. McCoy; Giuliano Meroni
Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen
Registergericht Muenchen, HRB Nr. 43632

--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] introduce kvm64 CPU

2009-08-21 Thread Jamie Lokier
Avi Kivity wrote:
 On 08/21/2009 12:34 AM, Andre Przywara wrote:
 In addition to the TCG based qemu64 type let's introduce a kvm64 CPU type,
 which is the least common denominator of all KVM-capable x86-CPUs
 (based on Intel Pentium 4 Prescott). It can be used as a base type
 for migration.

 
 Typically users will want more specialized greatest common denomiator 
 cpu types; if a site has standardized on recent hardware they will want 
 the features of that hardware exposed.

My experience is of sites which don't standardise on hardware in that
way.  They standardise on suppliers, and buy whatever is available
when more hardware is needed, or reuse existing hardware which is made
redundant from some other purpose.

kvm64 is a good compromise for sites like that, because it should work
with everything that's 64-bit and capable of running KVM.  I expect
all server machines which can run KVM are 64-bit, and it's only
laptops which have 32-bit KVM-capable chips (but I'm not sure).

-- Jamie
--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] introduce kvm64 CPU

2009-08-21 Thread Jamie Lokier
Andre Przywara wrote:
 If you happen to stuck with 32bit 
 (pity you!) then I agree that a kvm32 would be nice to have.
 Will think about it...

I know that 32-bit is a bit slower for some things due to register
pressure (but it's a bit faster for some things due to less memory
needed for pointers), and it's RAM is limited to about 3GB in
practice, which affects some things but is plenty for others.

I know it's a pain for KVM developers to support 32-bit hosts.

And yes, it would be nice to run a 64-bit guest from time to time.

But apart from being a bit slower, is there anything wrong with 32-bit
x86s compared with 64-bit that justifies pity?

The 32-bitness doesn't seem to be a handicap, only perhaps the
expected amount of slowness for a laptop that's 2-3 years old, or a
current netbook, compared with current desktops and servers.

So I'm having a hard time understanding why 32-bitness is considered
bad for KVM - why pity?  Does it have any other real problems than
not being able to emulate 64-bit guests that I should know about, or
is it just a matter of distaste?

-- Jamie
--
To unsubscribe from this list: send the line unsubscribe kvm in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html