[libvirt] Gathering CPUID data for x86 CPUs

Daniel P. Berrange berrange at redhat.com
Fri Jun 26 09:39:27 UTC 2015


On Fri, Jun 26, 2015 at 11:05:48AM +0200, Jiri Denemark wrote:
> On Thu, Jun 25, 2015 at 14:12:16 +0200, Jiri Denemark wrote:
> > Hi all,
> > 
> > I'm working on improving our host CPU detection logic and I'd like to
> > gather test data for various CPUs and include them in the libvirt's CPU
> > unit test to make sure I don't introduce regressions.
> > 
> > If you are willing to help me, please, send me the output of the
> > following command:
> > 
> >     grep 'model name' /proc/cpuinfo | head -n1; cpuid -1r
> > 
> 
> Oh, I forgot I'd also like to see what QEMU/KVM is thinking about the
> host CPU. If you have QEMU and KVM enabled on the hosts (or you are
> willing to do so), please, also send me the output of the following
> command:
> 
> qemu-system-x86_64 -cpu host -machine accel=kvm -nodefaults -nographic \
> -qmp unix:/tmp/socket,server,nowait & sleep 5; echo \
> '{"execute":"qmp_capabilities"}{"execute":"qom-get","arguments":' \
> '{"path":"/machine/unattached/device[0]","property":"feature-words"},' \
> '"id":"feature-words"}{"execute":"qom-get","arguments":{"path":' \
> '"/machine/unattached/device[0]","property":"family"},"id":"family"}' \
> '{"execute":"qom-get","arguments":{"path":' \
> '"/machine/unattached/device[0]","property":"model"},"id":"model"}' \
> '{"execute":"qom-get","arguments":{"path":' \
> '"/machine/unattached/device[0]","property":"stepping"},"id":' \
> '"stepping"}{"execute":"qom-get","arguments":{"path":' \
> '"/machine/unattached/device[0]","property":"model-id"},"id":' \
> '"model-id"}{"execute":"quit"}' | nc -U /tmp/socket

On some nice 8 year old hardware I have :-)

model name	: Intel(R) Core(TM)2 Duo CPU     E6850  @ 3.00GHz
CPU:
   0x00000000 0x00: eax=0x0000000a ebx=0x756e6547 ecx=0x6c65746e edx=0x49656e69
   0x00000001 0x00: eax=0x000006fb ebx=0x01020800 ecx=0x0000e3fd edx=0xbfebfbff
   0x00000002 0x00: eax=0x05b0b101 ebx=0x005657f0 ecx=0x00000000 edx=0x2cb43049
   0x00000003 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x00000004 0x00: eax=0x04000121 ebx=0x01c0003f ecx=0x0000003f edx=0x00000001
   0x00000004 0x01: eax=0x04000122 ebx=0x01c0003f ecx=0x0000003f edx=0x00000001
   0x00000004 0x02: eax=0x04004143 ebx=0x03c0003f ecx=0x00000fff edx=0x00000001
   0x00000005 0x00: eax=0x00000040 ebx=0x00000040 ecx=0x00000003 edx=0x00000220
   0x00000006 0x00: eax=0x00000001 ebx=0x00000002 ecx=0x00000001 edx=0x00000000
   0x00000007 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x00000008 0x00: eax=0x00000400 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x00000009 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x0000000a 0x00: eax=0x07280202 ebx=0x00000000 ecx=0x00000000 edx=0x00000503
   0x80000000 0x00: eax=0x80000008 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000001 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000001 edx=0x20100800
   0x80000002 0x00: eax=0x65746e49 ebx=0x2952286c ecx=0x726f4320 edx=0x4d542865
   0x80000003 0x00: eax=0x44203229 ebx=0x43206f75 ecx=0x20205550 edx=0x45202020
   0x80000004 0x00: eax=0x30353836 ebx=0x20402020 ecx=0x30302e33 edx=0x007a4847
   0x80000005 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000006 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x10008040 edx=0x00000000
   0x80000007 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000008 0x00: eax=0x00003024 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80860000 0x00: eax=0x07280202 ebx=0x00000000 ecx=0x00000000 edx=0x00000503
   0xc0000000 0x00: eax=0x07280202 ebx=0x00000000 ecx=0x00000000 edx=0x00000503

{"QMP": {"version": {"qemu": {"micro": 0, "minor": 3, "major": 2}, "package": " (qemu-2.3.0-5.fc22)"}, "capabilities": []}}
{"return": {}}
{"return": [{"cpuid-register": "EAX", "cpuid-input-ecx": 1, "cpuid-input-eax": 13, "features": 0}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483658, "features": 0}, {"cpuid-register": "EAX", "cpuid-input-eax": 1073741825, "features": 16777467}, {"cpuid-register": "EDX", "cpuid-input-eax": 3221225473, "features": 0}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483655, "features": 0}, {"cpuid-register": "ECX", "cpuid-input-eax": 2147483649, "features": 1}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483649, "features": 537921536}, {"cpuid-register": "EBX", "cpuid-input-ecx": 0, "cpuid-input-eax": 7, "features": 2}, {"cpuid-register": "ECX", "cpuid-input-eax": 1, "features": 2166366721}, {"cpuid-register": "EDX", "cpuid-input-eax": 1, "features": 260832255}], "id": "feature-words"}
{"return": 6, "id": "family"}
{"return": 15, "id": "model"}
{"return": 11, "id": "stepping"}
{"return": "Intel(R) Core(TM)2 Duo CPU     E6850  @ 3.00GHz", "id": "model-id"}



And some 7 year old AMD hardware


#  grep 'model name' /proc/cpuinfo | head -n1; cpuid -1r
model name	: Quad-Core AMD Opteron(tm) Processor 2350
CPU:
   0x00000000 0x00: eax=0x00000005 ebx=0x68747541 ecx=0x444d4163 edx=0x69746e65
   0x00000001 0x00: eax=0x00100f23 ebx=0x01040800 ecx=0x00802009 edx=0x178bfbff
   0x00000002 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x00000003 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x00000005 0x00: eax=0x00000040 ebx=0x00000040 ecx=0x00000003 edx=0x00000000
   0x80000000 0x00: eax=0x8000001a ebx=0x68747541 ecx=0x444d4163 edx=0x69746e65
   0x80000001 0x00: eax=0x00100f23 ebx=0x00000b2f ecx=0x000007ff edx=0xefd3fbff
   0x80000002 0x00: eax=0x64617551 ebx=0x726f432d ecx=0x4d412065 edx=0x704f2044
   0x80000003 0x00: eax=0x6f726574 ebx=0x6d74286e ecx=0x72502029 edx=0x7365636f
   0x80000004 0x00: eax=0x20726f73 ebx=0x30353332 ecx=0x00000000 edx=0x00000000
   0x80000005 0x00: eax=0xff30ff10 ebx=0xff30ff20 ecx=0x40020140 edx=0x40020140
   0x80000006 0x00: eax=0x20800000 ebx=0x42004200 ecx=0x02008140 edx=0x0010a140
   0x80000007 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x000001f9
   0x80000008 0x00: eax=0x00003030 ebx=0x00000000 ecx=0x00002003 edx=0x00000000
   0x80000009 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x8000000a 0x00: eax=0x00000001 ebx=0x00000040 ecx=0x00000000 edx=0x00000007
   0x8000000b 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x8000000c 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x8000000d 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x8000000e 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x8000000f 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000010 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000011 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000012 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000013 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000014 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000015 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000016 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000017 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000018 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000019 0x00: eax=0xf0300000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x8000001a 0x00: eax=0x00000003 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80860000 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0xc0000000 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000

{"QMP": {"version": {"qemu": {"micro": 3, "minor": 1, "major": 2}, "package": " (qemu-2.1.3-7.fc21)"}, "capabilities": []}}
{"return": {}}
{"return": [{"cpuid-register": "EDX", "cpuid-input-eax": 2147483658, "features": 1}, {"cpuid-register": "EAX", "cpuid-input-eax": 1073741825, "features": 16777467}, {"cpuid-register": "EDX", "cpuid-input-eax": 3221225473, "features": 0}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483655, "features": 0}, {"cpuid-register": "ECX", "cpuid-input-eax": 2147483649, "features": 1015}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483649, "features": 3864004608}, {"cpuid-register": "EBX", "cpuid-input-ecx": 0, "cpuid-input-eax": 7, "features": 0}, {"cpuid-register": "ECX", "cpuid-input-eax": 1, "features": 2174754817}, {"cpuid-register": "EDX", "cpuid-input-eax": 1, "features": 126614527}], "id": "feature-words"}
{"return": 16, "id": "family"}
{"return": 2, "id": "model"}
{"return": 3, "id": "stepping"}
{"return": "Quad-Core AMD Opteron(tm) Processor 2350", "id": "model-id"}



And modern hardware

model name	: Intel(R) Core(TM) i7-3740QM CPU @ 2.70GHz
CPU:
   0x00000000 0x00: eax=0x0000000d ebx=0x756e6547 ecx=0x6c65746e edx=0x49656e69
   0x00000001 0x00: eax=0x000306a9 ebx=0x03100800 ecx=0x7fbae3ff edx=0xbfebfbff
   0x00000002 0x00: eax=0x76035a01 ebx=0x00f0b2ff ecx=0x00000000 edx=0x00ca0000
   0x00000003 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x00000004 0x00: eax=0x1c004121 ebx=0x01c0003f ecx=0x0000003f edx=0x00000000
   0x00000004 0x01: eax=0x1c004122 ebx=0x01c0003f ecx=0x0000003f edx=0x00000000
   0x00000004 0x02: eax=0x1c004143 ebx=0x01c0003f ecx=0x000001ff edx=0x00000000
   0x00000004 0x03: eax=0x1c03c163 ebx=0x02c0003f ecx=0x00001fff edx=0x00000006
   0x00000005 0x00: eax=0x00000040 ebx=0x00000040 ecx=0x00000003 edx=0x00021120
   0x00000006 0x00: eax=0x00000077 ebx=0x00000002 ecx=0x00000009 edx=0x00000000
   0x00000007 0x00: eax=0x00000000 ebx=0x00000281 ecx=0x00000000 edx=0x00000000
   0x00000008 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x00000009 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x0000000a 0x00: eax=0x07300403 ebx=0x00000000 ecx=0x00000000 edx=0x00000603
   0x0000000b 0x00: eax=0x00000001 ebx=0x00000002 ecx=0x00000100 edx=0x00000003
   0x0000000b 0x01: eax=0x00000004 ebx=0x00000008 ecx=0x00000201 edx=0x00000003
   0x0000000c 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x0000000d 0x00: eax=0x00000007 ebx=0x00000340 ecx=0x00000340 edx=0x00000000
   0x0000000d 0x02: eax=0x00000100 ebx=0x00000240 ecx=0x00000000 edx=0x00000000
   0x0000000d 0x3e: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000000 0x00: eax=0x80000008 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000001 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000001 edx=0x28100800
   0x80000002 0x00: eax=0x20202020 ebx=0x6e492020 ecx=0x286c6574 edx=0x43202952
   0x80000003 0x00: eax=0x2865726f ebx=0x20294d54 ecx=0x332d3769 edx=0x51303437
   0x80000004 0x00: eax=0x5043204d ebx=0x20402055 ecx=0x30372e32 edx=0x007a4847
   0x80000005 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80000006 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x01006040 edx=0x00000000
   0x80000007 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000100
   0x80000008 0x00: eax=0x00003024 ebx=0x00000000 ecx=0x00000000 edx=0x00000000
   0x80860000 0x00: eax=0x00000007 ebx=0x00000340 ecx=0x00000340 edx=0x00000000
   0xc0000000 0x00: eax=0x00000007 ebx=0x00000340 ecx=0x00000340 edx=0x00000000

{"QMP": {"version": {"qemu": {"micro": 0, "minor": 3, "major": 2}, "package": " (qemu-2.3.0-5.fc22)"}, "capabilities": []}}
{"return": {}}
{"return": [{"cpuid-register": "EAX", "cpuid-input-ecx": 1, "cpuid-input-eax": 13, "features": 1}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483658, "features": 0}, {"cpuid-register": "EAX", "cpuid-input-eax": 1073741825, "features": 16777467}, {"cpuid-register": "EDX", "cpuid-input-eax": 3221225473, "features": 0}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483655, "features": 0}, {"cpuid-register": "ECX", "cpuid-input-eax": 2147483649, "features": 1}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483649, "features": 672139264}, {"cpuid-register": "EBX", "cpuid-input-ecx": 0, "cpuid-input-eax": 7, "features": 643}, {"cpuid-register": "ECX", "cpuid-input-eax": 1, "features": 4156170787}, {"cpuid-register": "EDX", "cpuid-input-eax": 1, "features": 260832255}], "id": "feature-words"}
{"return": 6, "id": "family"}
{"return": 58, "id": "model"}
{"return": 9, "id": "stepping"}
{"return": "      Intel(R) Core(TM) i7-3740QM CPU @ 2.70GHz", "id": "model-id"}

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list