Re: [PATCH] introduce kvm64 CPU
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
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
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
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
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
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
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
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
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
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
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