On 12/21/2009 02:28 AM, Dor Laor wrote:
John's new cpu definitions are the exact solution for this issue - all
users, whether using mgmt app or direct qemu (this is no user, this is
a developer/hacker/other, let's do not optimize this case) should use
the various 'real' cpu definitions like -cpu Merom | Nehalem | Penry |
Opteron G1, ....
Of course, the tricky part is at what level do you define these names.
For instance, do you do just Nehalem, or do you also do Nehalem,
Nehalem-EP, Nehalem-EX?
Nehalem is really just a code name. Would it be better to use core-i7?
I think the only two Fully Correct approachs are to support a very
specific CPU (e.g. Xeon-X5270) or provide the ability to individually
tweak cpu flags.
The notion of compatibility classes should probably be left to
management tools. We can make it a lot easier for them though by
supporting turning point CPU models.
For instance, Xeon-X5570 should be a least common denominator for
Nehalem processors. It's probably better for users too. It's easier
for them to answer "do I have anything older than a Xeon-X5570" than to
ask "do I have any Woodcrest class processors".
I encounter this confusion a lot. I usually ask people whether they
have a Nehalem processor when debugging something and their response is
always, I have a Xeon-XYZ, is that Nehalem?
Regards,
Anthony Liguori