OpenBSD Journal

Heads up! cpuid program needs testing

Contributed by johan on from the cpu's-all-around dept.

Tobias Weingartner (weingart@) asked for more tests in an updated cpuid.c on tech and misc mailing lists. A previous post covered the beginnings of this. Any and all i386 and amd64 cpus are welcome. Of course, really bizarre things would be even better (there's a lot of current Intel/AMD cpus around). Of special interest would be Via Nano, Intel Atom, older cpus or anything with OpenBSD running on a virtual server. Toby would love to have reports (along with uname -a and vm software version used) so he can extend cpuid.c to grok even more vm information.

Please read on for Toby's mail:

List:       openbsd-tech
Subject:    New cpuid code to test
From:       Tobias Weingartner 
Date:       2008-10-19 21:40:59

Hello all,

I'd love to get another round of cpuid testing done (i386/amd64).
The code is available at: http://www.tepid.org/~weingart/cpuid.c
I'd appreciate it if people could do something like the following
on their i386 and amd64 boxes:

make cpuid && ./cpuid | mail -s 'cpuid output' weingart@tepid.org


Thanks,

--Toby.

Sample output should look something like this:

Found 686 class CPU with CPUID support.
Base: 'GenuineIntel', max cpuid level = 10
Base: Ext Family/Model = 0/0
Base: Family/Model/Step = 6/15/6
Base: Type = 'Original OEM processor'
Base: FMS = 0x0060f06
Base: APIC ID = 0
Base: Count = 2
Base: Chunks = 8
Base: BrandID = 0
Base: HTT = 1, LCores = 2, PCores = 2
Base-Feature: FPU, Floating Point Unit On-chip
Base-Feature: VME, Virtual Mode Extension
Base-Feature: DE, Debugging Extension
Base-Feature: PSE, Page Size Extension
Base-Feature: TSC, Time-Stamp Counter
Base-Feature: MSR, Model Specific Registers
Base-Feature: PAE, Physical Address Extension
Base-Feature: MCE, Machine Check Exception
Base-Feature: CX8, CMPXCHG8 Instruction Supported
Base-Feature: APIC, On-chip APIC Hardware Supported
Base-Feature: SEP, Fast System Call
Base-Feature: MTRR, Memory Type Range Registers
Base-Feature: PGE, Page Global Enable
Base-Feature: MCA, Machine Check Architecture
Base-Feature: CMOV, Conditional Move Instruction Supported
Base-Feature: PAT, Page Attribute Table
Base-Feature: PSE36, 36-bit Page Size Extension
Base-Feature: CLFSH, CLFLUSH Instruction Supported
Base-Feature: DS, Debug Store
Base-Feature: ACPI, Thermal Monitor & Software Controlled Clock
Base-Feature: MMX, IA32 MMX Supported
Base-Feature: FXSR, Fast Floating Point Save and Restore
Base-Feature: SSE, Streaming SIMD Extensions Supported
Base-Feature: SSE2, Steaming SIMD Extensions 2 Supported
Base-Feature: SS, Self-Snoop
Base-Feature: HTT, Hyper-Threading Supported
Base-Feature: TM, Thermal Monitor Supported
Base-Feature: PBE, Pending Break Enable
Base-Feature: SSE3, Streaming SIMD Extensions 3 Supported
Base-Feature: DTES64, 64-bit Debug Store
Base-Feature: MONITOR, Monitor/MWait Instructions Supported
Base-Feature: DS-CPL, CPL Qualified Debug Store
Base-Feature: VMX, Virtual Machine Extensions
Base-Feature: EST, Enhanced Intel SpeedStep
Base-Feature: TM2, Thermal Monitor 2
Base-Feature: SSSE3, Supplemental Streaming SIMD Extensions 3
Base-Feature: CX16, CMPXCHG16B Instruction Support
Base-Feature: xTPR, Send Task Priority Messages
Base-Feature: PDCM, Performance Capabilities MSR
Base-Cache-Desc: 1 page(s) of cache descriptors
Base-Cache-Desc(0x5): 32-entry, 4M page data TLB, 4-way set associative
Base-Cache-Desc(0xB0): 128-entry, 4K page instruction TLB, 4-way set associative
Base-Cache-Desc(0xB1): 4-entry, 4M page instruction TLB, 4-way set associative
Base-Cache-Desc(0x56): 16-entry, 4M page data TLB, 4-way set associative
Base-Cache-Desc(0x57): 16-entry, 4K page data TLB, 4-way set associative
Base-Cache-Desc(0xF0): 64-byte Prefetch
Base-Cache-Desc(0x2C): 32K 8-way, 64-byte line, level 1 data cache
Base-Cache-Desc(0xB4): 256-entry, 4K page data TLB, 4-way set associative
Base-Cache-Desc(0x30): 32K 8-way, 64-byte line, level 1 instruction cache
Base-Cache-Desc(0x49): 4M 16-way, 64-byte line, level 2 unified cache
Base-PSN: disabled
Base-Cache-Det: nthr=1, full=0, init=1
Base-Cache-Det: ppart=1, sline=64, nset=64, pref=1
Base-Cache-Det: 32KB 8-way 64 byte/line level-1 Data Cache
Base-Cache-Det: nthr=1, full=0, init=1
Base-Cache-Det: ppart=1, sline=64, nset=64, pref=1
Base-Cache-Det: 32KB 8-way 64 byte/line level-1 Instruction Cache
Base-Cache-Det: nthr=2, full=0, init=1
Base-Cache-Det: ppart=1, sline=64, nset=4096, pref=1
Base-Cache-Det: 4MB 16-way 64 byte/line level-2 Unified Cache
Base: CPU = 'Intel(R) Core(TM)2 CPU T7200 @ 2.00GHz'
Ext: max vendor cpuid level = 0x80000008
Ext: brand string = 'Intel(R) Core(TM)2 CPU         T7200  @ 2.00GHz'
0x00000000: 0x0000000a 0x756e6547 0x6c65746e 0x49656e69 ....GenuntelineI
0x00000001: 0x000006f6 0x00020800 0x0000e3bd 0xbfebfbff ................
0x00000002: 0x05b0b101 0x005657f0 0x00000000 0x2cb43049 .....WV.....I0.,
0x00000003: 0x00000000 0x00000000 0x00000000 0x00000000 ................
0x00000004: 0x04000121 0x01c0003f 0x0000003f 0x00000001 !...?...?.......
0x00000005: 0x00000040 0x00000040 0x00000003 0x00022220 @...@....... "..
0x00000006: 0x00000001 0x00000002 0x00000001 0x00000000 ................
0x00000007: 0x00000000 0x00000000 0x00000000 0x00000000 ................
0x00000008: 0x00000400 0x00000000 0x00000000 0x00000000 ................
0x00000009: 0x00000000 0x00000000 0x00000000 0x00000000 ................
0x0000000a: 0x07280202 0x00000000 0x00000000 0x00000000 ..(.............
0x80000000: 0x80000008 0x00000000 0x00000000 0x00000000 ................
0x80000001: 0x00000000 0x00000000 0x00000001 0x20100800 ...............
0x80000002: 0x65746e49 0x2952286c 0x726f4320 0x4d542865 Intel(R) Core(TM
0x80000003: 0x43203229 0x20205550 0x20202020 0x54202020 )2 CPU         T
0x80000004: 0x30303237 0x20402020 0x30302e32 0x007a4847 7200  @ 2.00GHz.
0x80000005: 0x00000000 0x00000000 0x00000000 0x00000000 ................
0x80000006: 0x00000000 0x00000000 0x10008040 0x00000000 ........@.......
0x80000007: 0x00000000 0x00000000 0x00000000 0x00000000 ................
0x80000008: 0x00003024 0x00000000 0x00000000 0x00000000 $0..............

(Comments are closed)


Comments
  1. By Anonymous Coward (129.128.4.7) on

    It's been a few hours since my message, and I thought I'd let people know how things are going. At the current time, I've received 95 reports, with 60+ unique CPUs represented. Top end of 3.2GHz, bottom end of (most likely) Pentium 90.

    A current 'wc -l' style output of the CPU brand string looks like:

       1 Base: CPU = 'AMD Athlon(TM) XP 2500+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4400+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4600+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4800+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 6000+'
       1 Base: CPU = 'AMD Athlon(tm) XP 2500+'
       1 Base: CPU = 'AMD Athlon(tm) XP 2600+'
       1 Base: CPU = 'AMD Geode(tm) NX 1750+'
       1 Base: CPU = 'AMD-K6tm w/ multimedia extensions'
       1 Base: CPU = 'Dual Core AMD Opteron(tm) Processor 275'
       1 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 2216'
       1 Base: CPU = 'Genuine Intel(R) CPU T2400 @ 1.83GHz'
       1 Base: CPU = 'Intel(R) Atom(TM) CPU 330 @ 1.60GHz'
       1 Base: CPU = 'Intel(R) Atom(TM) CPU N270 @ 1.60GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) CPU 430 @ 1.80GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) M CPU 440 @ 1.86GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) M processor 900MHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 CPU T5500 @ 1.66GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E4500 @ 2.20GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU L7500 @ 1.60GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU L7700 @ 1.80GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T5250 @ 1.50GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T5670 @ 1.80GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T7100 @ 1.80GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.00GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.00GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.06GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) D CPU 2.80GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) D CPU 3.40GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) III Mobile CPU 1133MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1.70GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1600MHz'
       1 Base: CPU = 'Intel(R) Xeon(TM) CPU 2.80GHz'
       1 Base: CPU = 'Mobile Intel(R) Pentium(R) 4 - M CPU 1.80GHz'
       1 Base: CPU = 'Mobile Intel(R) Pentium(R) 4 CPU 3.20GHz'
       1 Base: CPU = 'VIA Esther processor 1200MHz'
       1 Base: CPU = 'VIA Esther processor 1500MHz'
       2 Base: CPU = 'AMD Athlon(tm) 64 Processor 3800+'
       2 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 3800+'
       2 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 5200+'
       2 Base: CPU = 'AMD Opteron(tm) Processor 244'
       2 Base: CPU = 'Intel(R) Celeron(R) CPU 2.40GHz'
       2 Base: CPU = 'Intel(R) Celeron(R) processor'
       2 Base: CPU = 'Intel(R) Core(TM)2 CPU T5600 @ 1.83GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.80GHz'
       2 Base: CPU = 'Intel(R) Xeon(R) CPU 3065 @ 2.33GHz'
       2 Base: CPU = 'Intel(R) Xeon(R) CPU E5462 @ 2.80GHz'
       2 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.20GHz'
       3 Base: CPU = 'Geode(TM) Integrated Processor by National Semi'
       3 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz'
       3 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T8300 @ 2.40GHz'
       3 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.40GHz'
       3 Base: CPU = 'Intel(R) Pentium(R) III processor'
       3 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.00GHz'
       3 Base: CPU = 'VIA Samuel 2'
       5 Base: CPU = '(Unknown CPU Brand String)'
       5 Base: CPU = 'Geode(TM) Integrated Processor by AMD PCS'
    
    The "(Unknown CPU Brand String)" ones are CPUs that don't give us any way of identifying them, other than using heuristics and tables which I've not included in the program yet.

    Anyways, I've had 130+ downloads of the source, and there's 80+ in the greylisting pipeline. I'd love to get more.

    Comments
    1. By Anonymous Coward (219.90.160.197) on

      What's going on here?
      0x00000000: 0x00000001 0x68747541 0x444d4163 0x69746e65 ....AuthcAMDenti
      
      0x00000000: 0x0000000a 0x756e6547 0x6c65746e 0x49656e69 ....GenuntelineI
      

      Comments
      1. By Shane J Pearson (203.20.79.230) on

        > What's going on here?
        >
        > 0x00000000: 0x00000001 0x68747541 0x444d4163 0x69746e65 ....AuthcAMDenti
        >
        > 0x00000000: 0x0000000a 0x756e6547 0x6c65746e 0x49656e69 ....GenuntelineI

        32bit endianess?

      2. By Anonymous Coward (68.148.4.19) on

        > What's going on here?
        >
        > 0x00000000: 0x00000001 0x68747541 0x444d4163 0x69746e65 ....AuthcAMDenti
        >
        > 0x00000000: 0x0000000a 0x756e6547 0x6c65746e 0x49656e69 ....GenuntelineI

        That's normal.

        -Toby.

    2. By Altadel (68.149.160.222) on

      > Anyways, I've had 130+ downloads of the source, and there's 80+ in the
      > greylisting pipeline. I'd love to get more.

      I just sent about 6-8 more, from boxen P133 through Xeon 5148, with a Via Ezra thrown in.

      HTH.

  2. By Wouter (2001:888:1b6b:b0e::6965:6b73) on

    I just submitted a report for my Mac OS X-running macbook. To get cpuid.c to compile successfully, I had to add the following lines to the source (just below the include block):

    #include <libkern/i386/_OSByteOrder.h>
    #define swap32 _OSSwapInt32

    and then compile it with -mdynamic-no-pic. Yes, they're hacks. However, cpuid then compiles without warnings (nice!).

    My $old-gen macbook probably isn't very useful (it has a rather pedestrian processor), but maybe somebody can test this program on one of the recently released macs? Those usually have more exotic silicon.

    Comments
    1. By tedu (74.66.20.150) on


      > My $old-gen macbook probably isn't very useful (it has a rather pedestrian processor), but maybe somebody can test this program on one of the recently released macs? Those usually have more exotic silicon.

      If the point of the exercise is to make sure everything still works in the future and only the newest machines get tested, guess what's likely to happen to support for the older machines?

  3. By Anonymous Coward (129.128.4.7) on

    I've been updating cpuid.c with new tables and fixes as I've been getting reports. More of the 486/586 CPUs with no brandid or not brandstring should be identified (in a generic way).

    Also, I've fixed a few bugs here and there, including one from the new AMD quad core chips (cache descriptors were zero'd). Also, there is a fix in there to fix the "cpu class", down-grading the class if the family happens to be lower than the discovered class. Another fix that I've put in is the extra functions needed to get this to compile on linux and osx. It should largely compile with gcc on most things at this point. (Not sure about cygwin/windows).

    I'd love more tests (download a new copy). Pretty good coverage so far. At last count, we have (roughly) things looking like:

       1 Base: CPU = 'AMD Athlon(TM) MP 1800+'
       1 Base: CPU = 'AMD Athlon(TM) XP 2000+'
       1 Base: CPU = 'AMD Athlon(TM) XP 2800+'
       1 Base: CPU = 'AMD Athlon(tm) '
       1 Base: CPU = 'AMD Athlon(tm) 64 Processor 3400+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4400+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4600+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4800+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 5600+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 6000+'
       1 Base: CPU = 'AMD Athlon(tm) Dual Core Processor 4450e'
       1 Base: CPU = 'AMD Athlon(tm) MP 2600+'
       1 Base: CPU = 'AMD Athlon(tm) X2 Dual Core Processor BE-2350'
       1 Base: CPU = 'AMD Athlon(tm) XP 1800+'
       1 Base: CPU = 'AMD Athlon(tm) XP 3000+'
       1 Base: CPU = 'AMD Athlon(tm) XP 3200+'
       1 Base: CPU = 'AMD Athlon(tm) XP'
       1 Base: CPU = 'AMD Duron(tm) processor'
       1 Base: CPU = 'AMD Duron(tm)'
       1 Base: CPU = 'AMD Geode(tm) NX 1750+'
       1 Base: CPU = 'AMD Opteron(tm) Processor 146'
       1 Base: CPU = 'AMD Opteron(tm) Processor 148'
       1 Base: CPU = 'AMD Opteron(tm) Processor 248'
       1 Base: CPU = 'AMD Phenom(tm) 9350e Quad-Core Processor'
       1 Base: CPU = 'AMD Sempron(tm) 2400+'
       1 Base: CPU = 'AMD Sempron(tm) 2800+'
       1 Base: CPU = 'AMD Turion(tm) 64 Mobile Technology MT-40'
       1 Base: CPU = 'AMD Turion(tm) 64 X2 Mobile Technology TL-50'
       1 Base: CPU = 'AMD Turion(tm) 64 X2 Mobile Technology TL-60'
       1 Base: CPU = 'AMD Turion(tm) 64 X2 Mobile Technology TL-64'
       1 Base: CPU = 'AMD-K6(tm) 3D processor'
       1 Base: CPU = 'AMD-K6tm w/ multimedia extensions'
       1 Base: CPU = 'Dual Core AMD Opteron(tm) Processor 265'
       1 Base: CPU = 'Dual Core AMD Opteron(tm) Processor 275'
       1 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 2212'
       1 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 2220'
       1 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 8212'
       1 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 8218'
       1 Base: CPU = 'Genuine Intel(R) CPU T2080 @ 1.73GHz'
       1 Base: CPU = 'Genuine Intel(R) CPU T2500 @ 2.00GHz'
       1 Base: CPU = 'Genuine Intel(R) CPU T2600 @ 2.16GHz'
       1 Base: CPU = 'Intel(R) Atom(TM) CPU 330 @ 1.60GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) CPU 1.70GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) CPU 1.80GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) CPU 2.66GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) CPU 2.80GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) CPU 3.06GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) M CPU 440 @ 1.86GHz'
       1 Base: CPU = 'Intel(R) Celeron(TM) CPU 1200MHz'
       1 Base: CPU = 'Intel(R) Celeron(TM) CPU 1300MHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 CPU 6320 @ 1.86GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 CPU 6700 @ 2.66GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 CPU T7200 @ 2.00GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 CPU T7600 @ 2.33GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E4500 @ 2.20GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E4700 @ 2.60GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E8200 @ 2.66GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU L7700 @ 1.80GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T5250 @ 1.50GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T5670 @ 1.80GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T9300 @ 2.50GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1.80GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1500MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1700MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.53GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.06GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.80GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 Mobile CPU 1.70GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 Mobile CPU 1.80GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) Dual CPU E2160 @ 1.80GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) Dual CPU T2310 @ 1.46GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) III Mobile CPU 1133MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1200MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1400MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1500MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1700MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 2.00GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU 3060 @ 2.40GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU 5110 @ 1.60GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU 5148 @ 2.33GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU X5355 @ 2.66GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU X5460 @ 3.16GHz'
       1 Base: CPU = 'Intel(R) Xeon(TM) CPU 1.80GHz'
       1 Base: CPU = 'Intel(R) Xeon(TM) CPU 2.40GHz'
       1 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.40GHz'
       1 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.60GHz'
       1 Base: CPU = 'Intel(R) Xeon(TM) MP CPU 2.20GHz'
       1 Base: CPU = 'Mobile AMD Athlon(tm) XP-M Processor 2800+'
       1 Base: CPU = 'Mobile Intel(R) Pentium(R) 4 CPU 3.20GHz'
       1 Base: CPU = 'Mobile Intel(R) Pentium(R) III CPU - M 1200MHz'
       1 Base: CPU = 'OASIS Vcpu'
       1 Base: CPU = 'QEMU Virtual CPU version 0.7.2'
       1 Base: CPU = 'Unknown CPU Typ'
       1 Base: CPU = 'VIA Eden Processor 1000MHz'
       1 Base: CPU = 'AMD Athlon(TM) XP 2500+'
       1 Base: CPU = 'AMD Athlon(tm) 64 Processor 3200+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4400+'
       1 Base: CPU = 'AMD Athlon(tm) XP 2500+'
       1 Base: CPU = 'AMD-K6tm w/ multimedia extensions'
       1 Base: CPU = 'Intel(R) Atom(TM) CPU N270 @ 1.60GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E8500 @ 3.16GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1.50GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.60GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.00GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) III CPU family 1266MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) III Mobile CPU 1000MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) III Mobile CPU 1133MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1.70GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1600MHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU X5355 @ 2.66GHz'
       1 Base: CPU = 'Intel(R) Xeon(TM) CPU 2.80GHz'
       1 Base: CPU = 'VIA Esther processor 1200MHz'
       2 Base: CPU = 'AMD Athlon(tm) 64 Processor 3800+'
       2 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4200+'
       2 Base: CPU = 'AMD Athlon(tm) X2 Dual Core Processor BE-2400'
       2 Base: CPU = 'AMD Athlon(tm) XP 2200+'
       2 Base: CPU = 'AMD Athlon(tm) XP 2600+'
       2 Base: CPU = 'AMD Athlon(tm) XP 2800+'
       2 Base: CPU = 'AMD Athlon(tm) processor'
       2 Base: CPU = 'AMD Opteron(tm) Processor 144'
       2 Base: CPU = 'AMD Opteron(tm) Processor 244'
       2 Base: CPU = 'AMD Sempron(tm) 2500+'
       2 Base: CPU = 'AMD Sempron(tm) Processor 3600+'
       2 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 1212 HE'
       2 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 2216'
       2 Base: CPU = 'Genuine Intel(R) CPU T2300 @ 1.66GHz'
       2 Base: CPU = 'Genuine Intel(R) CPU T2400 @ 1.83GHz'
       2 Base: CPU = 'Intel(R) Atom(TM) CPU 230 @ 1.60GHz'
       2 Base: CPU = 'Intel(R) Celeron(R) CPU 2.40GHz'
       2 Base: CPU = 'Intel(R) Celeron(R) CPU 430 @ 1.80GHz'
       2 Base: CPU = 'Intel(R) Celeron(R) M processor 1.00GHz'
       2 Base: CPU = 'Intel(R) Celeron(R) M processor 900MHz'
       2 Base: CPU = 'Intel(R) Core(TM)2 CPU T5500 @ 1.66GHz'
       2 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz'
       2 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU L7100 @ 1.20GHz'
       2 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz'
       2 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T7100 @ 1.80GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1.70GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.66GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) D CPU 2.80GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) D CPU 3.40GHz'
       2 Base: CPU = 'Intel(R) Xeon(R) CPU E5320 @ 1.86GHz'
       2 Base: CPU = 'Intel(R) Xeon(R) CPU E5462 @ 2.80GHz'
       2 Base: CPU = 'Intel(R) Xeon(R) CPU X3320 @ 2.50GHz'
       2 Base: CPU = 'Intel(R) Xeon(TM) CPU 2.80GHz'
       2 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.06GHz'
       2 Base: CPU = 'Mobile Intel(R) Pentium(R) 4 - M CPU 1.80GHz'
       2 Base: CPU = 'QEMU Virtual CPU version 0.9.1'
       2 Base: CPU = 'VIA Esther processor 1000MHz'
       2 Base: CPU = 'VIA Nehemiah'
       3 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 5000+'
       3 Base: CPU = 'AMD Sempron(tm) Processor 2800+'
       3 Base: CPU = 'AMD Sempron(tm) Processor 3000+'
       3 Base: CPU = 'Intel(R) Atom(TM) CPU N270 @ 1.60GHz'
       3 Base: CPU = 'Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz'
       3 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU L7500 @ 1.60GHz'
       3 Base: CPU = 'Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz'
       3 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.00GHz'
       3 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.40GHz'
       3 Base: CPU = 'Intel(R) Pentium(R) M processor 1.40GHz'
       3 Base: CPU = 'Intel(R) Pentium(R) M processor 1.73GHz'
       3 Base: CPU = 'Intel(R) Xeon(R) CPU 3065 @ 2.33GHz'
       3 Base: CPU = 'Intel(R) Xeon(R) CPU E5405 @ 2.00GHz'
       4 Base: CPU = 'Intel(R) Celeron(R) processor'
       4 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz'
       4 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz'
       4 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1.60GHz'
       5 Base: CPU = 'AMD Athlon(tm) 64 Processor 3000+'
       5 Base: CPU = 'AMD Athlon(tm) 64 Processor 3200+'
       5 Base: CPU = 'AMD Athlon(tm) 64 Processor 3500+'
       5 Base: CPU = 'Intel(R) Core(TM)2 CPU T5600 @ 1.83GHz'
       5 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz'
       5 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T8300 @ 2.40GHz'
       5 Base: CPU = 'Intel(R) Pentium(R) M processor 1.60GHz'
       5 Base: CPU = 'VIA Esther processor 1500MHz'
       6 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 5200+'
       6 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.00GHz'
       7 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 3800+'
       7 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.40GHz'
       7 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.20GHz'
       7 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.20GHz'
       8 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.80GHz'
       9 Base: CPU = 'AMD Athlon(tm) Processor'
      10 Base: CPU = 'Geode(TM) Integrated Processor by National Semi'
      10 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.00GHz'
      14 Base: CPU = 'VIA Samuel 2'
      17 Base: CPU = 'Geode(TM) Integrated Processor by AMD PCS'
      32 Base: CPU = 'Intel(R) Pentium(R) III processor'
      50 Base: CPU = '(Unknown CPU Brand String)'
    

    That's some roughly 200 distinct CPUs, from 482 CPUs. Decent spread of things out there. Thank you to all the people that managed to get those old and very weird machines running.

    -Toby.

    Comments
    1. By Anonymous Coward (217.31.65.40) on

      btw what's the purpose?

      Just statistics?

      Comments
      1. By Anonymous Coward (129.128.4.7) on

        > btw what's the purpose?
        >
        > Just statistics?

        Nope, this is to make code that handles cpu identification in
        a different way.

        -Toby.
        PS: Yes, they could be jokes, but then so can every bug report out
        there, right? In the end you get what you return. Return a joke
        for a report, and you get a joke of a software in return.

    2. By Anonymous Coward (87.178.158.90) on

      > That's some roughly 200 distinct CPUs, from 482 CPUs. Decent spread
      > of things out there. Thank you to all the people that managed to get
      > those old and very weird machines running.

      Did you consider that there might be fakes (jokes, whatnots)?

      They might even evolve into a security risk if relied upon in scripts people make.

      Comments
      1. By tedu (udet) on

        > > That's some roughly 200 distinct CPUs, from 482 CPUs. Decent spread
        > > of things out there. Thank you to all the people that managed to get
        > > those old and very weird machines running.
        >
        > Did you consider that there might be fakes (jokes, whatnots)?
        >
        > They might even evolve into a security risk if relied upon in scripts people make.
        >

        please explain.

    3. By Anonymous Coward (87.178.158.90) on

      > 1 Base: CPU = 'Unknown CPU Typ'

      Linguistical typo forensics tell me the writer of this text is probably a German.

      Comments
      1. By Anonymous Coward (129.128.4.7) on

        > > 1 Base: CPU = 'Unknown CPU Typ'
        >
        > Linguistical typo forensics tell me the writer of this text is probably a German.

        Tester must be an italian... (fast). That version was only up
        for a short time... :)

        -Toby.


  4. By Anonymous Coward (129.128.4.7) on

    Up to 640 responses, 225 unique cpu signatures at this point. Thank you tons for all the good testing I've been getting on this. It has made cpuid.c progress a lot faster than before, and the extra cpuid dump information has been helpfull in getting more correct output in most cases. Still need to tweak things a bit, but I think I'm on a much more productive track now. It makes certain things much easier when you have a good cross-section of things to look at, rather than simply guessing.

       1 Base: CPU = 'AMD Athlon(TM) MP 1800+'
       1 Base: CPU = 'AMD Athlon(TM) XP 2000+'
       1 Base: CPU = 'AMD Athlon(TM) XP 2500+'
       1 Base: CPU = 'AMD Athlon(TM) XP 2800+'
       1 Base: CPU = 'AMD Athlon(tm) 64 Processor 3400+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4600+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4800+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 5600+'
       1 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 6000+'
       1 Base: CPU = 'AMD Athlon(tm) Dual Core Processor 4450e'
       1 Base: CPU = 'AMD Athlon(tm) MP 2600+'
       1 Base: CPU = 'AMD Athlon(tm) X2 Dual Core Processor BE-2350'
       1 Base: CPU = 'AMD Athlon(tm) XP 2500+'
       1 Base: CPU = 'AMD Athlon(tm) XP 3000+'
       1 Base: CPU = 'AMD Athlon(tm) XP 3200+'
       1 Base: CPU = 'AMD Athlon(tm) XP'
       1 Base: CPU = 'AMD Duron(tm) Processor'
       1 Base: CPU = 'AMD Duron(tm) processor'
       1 Base: CPU = 'AMD Duron(tm)'
       1 Base: CPU = 'AMD Geode(tm) NX 1750+'
       1 Base: CPU = 'AMD Opteron(tm) Processor 146'
       1 Base: CPU = 'AMD Opteron(tm) Processor 148'
       1 Base: CPU = 'AMD Opteron(tm) Processor 250'
       1 Base: CPU = 'AMD Opteron(tm) Processor 256'
       1 Base: CPU = 'AMD Opteron(tm) Processor 848'
       1 Base: CPU = 'AMD Phenom(tm) 8600B Triple-Core Processor'
       1 Base: CPU = 'AMD Phenom(tm) 9350e Quad-Core Processor'
       1 Base: CPU = 'AMD Sempron(tm) 2400+'
       1 Base: CPU = 'AMD Sempron(tm) 2800+'
       1 Base: CPU = 'AMD Turion(tm) 64 X2 Mobile Technology TL-50'
       1 Base: CPU = 'AMD Turion(tm) 64 X2 Mobile Technology TL-60'
       1 Base: CPU = 'AMD Turion(tm) 64 X2 Mobile Technology TL-64'
       1 Base: CPU = 'AMD-K6(tm) 3D processor'
       1 Base: CPU = 'AMD-K7(tm) Processor'
       1 Base: CPU = 'Dual Core AMD Opteron(tm) Processor 265'
       1 Base: CPU = 'Dual Core AMD Opteron(tm) Processor 285'
       1 Base: CPU = 'Dual Core AMD Opteron(tm) Processor 890'
       1 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 1214'
       1 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 2212'
       1 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 2220'
       1 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 2222'
       1 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 8212'
       1 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 8218'
       1 Base: CPU = 'Genuine Intel(R) CPU T2080 @ 1.73GHz'
       1 Base: CPU = 'Genuine Intel(R) CPU T2600 @ 2.16GHz'
       1 Base: CPU = 'Intel(R) Atom(TM) CPU 330 @ 1.60GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) CPU 1.80GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) CPU 2.66GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) CPU 2.80GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) CPU 3.06GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) D CPU 3.33GHz'
       1 Base: CPU = 'Intel(R) Celeron(R) M CPU 440 @ 1.86GHz'
       1 Base: CPU = 'Intel(R) Celeron(TM) CPU 1200MHz'
       1 Base: CPU = 'Intel(R) Celeron(TM) CPU 1300MHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 CPU 6300 @ 1.86GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 CPU T7200 @ 2.00GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 CPU T7600 @ 2.33GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E4500 @ 2.20GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E8200 @ 2.66GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E8500 @ 3.16GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU L7700 @ 1.80GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T5670 @ 1.80GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T8100 @ 2.10GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T9300 @ 2.50GHz'
       1 Base: CPU = 'Intel(R) Core(TM)2 Extreme CPU X7900 @ 2.80GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1500MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1700MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.53GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.80GH=
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.06GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.80GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 Mobile CPU 1.70GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) 4 Mobile CPU 1.80GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) D CPU 3.20GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) Dual CPU E2160 @ 1.80GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) Dual CPU T2310 @ 1.46GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) III CPU family 1400MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) III Mobile CPU 1000MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1.50GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1.70GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1.80GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1.86GHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1200MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1500MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 1700MHz'
       1 Base: CPU = 'Intel(R) Pentium(R) M processor 2.00GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU 3050 @ 2.13GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU 3060 @ 2.40GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU 5148 @ 2.33GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU E5345 @ 2.33GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU E5420 @ 2.50GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU E5430 @ 2.66GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU E5450 @ 3.00GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU E5462 @ 2.80GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU X3220 @ 2.40GHz'
       1 Base: CPU = 'Intel(R) Xeon(R) CPU X5460 @ 3.16GHz'
       1 Base: CPU = 'Intel(R) Xeon(TM) CPU 1.80GHz'
       1 Base: CPU = 'Intel(R) Xeon(TM) CPU 2.40GHz'
       1 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.60GHz'
       1 Base: CPU = 'Intel(R) Xeon(TM) MP CPU 2.20GHz'
       1 Base: CPU = 'Mobile AMD Athlon(tm) XP-M Processor 2800+'
       1 Base: CPU = 'Mobile AMD Sempron(tm) Processor 3000+'
       1 Base: CPU = 'Mobile Intel(R) Pentium(R) 4 CPU 3.20GHz'
       1 Base: CPU = 'Mobile Intel(R) Pentium(R) III CPU - M 1200MHz'
       1 Base: CPU = 'OASIS Vcpu'
       1 Base: CPU = 'Pentium II processor, model 03'
       1 Base: CPU = 'Pentium II {,Xeon,Celeron} processor, model 05'
       1 Base: CPU = 'Pentium II {,Xeon} processor, model 07'
       1 Base: CPU = 'QEMU Virtual CPU version 0.7.2'
       1 Base: CPU = 'VIA Eden Processor 1000MHz'
       1 Base: CPU = 'VIA Esther processor 1200MHz'
       2 Base: CPU = 'AMD Athlon(tm) 64 Processor 3800+'
       2 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4200+'
       2 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 4400+'
       2 Base: CPU = 'AMD Athlon(tm) X2 Dual Core Processor BE-2400'
       2 Base: CPU = 'AMD Athlon(tm) XP 2200+'
       2 Base: CPU = 'AMD Athlon(tm) XP 2600+'
       2 Base: CPU = 'AMD Athlon(tm) XP 2800+'
       2 Base: CPU = 'AMD Opteron(tm) Processor 144'
       2 Base: CPU = 'AMD Opteron(tm) Processor 248'
       2 Base: CPU = 'AMD Opteron(tm) Processor 250'
       2 Base: CPU = 'AMD Sempron(tm) 2500+'
       2 Base: CPU = 'AMD Sempron(tm) Processor 3600+'
       2 Base: CPU = 'AMD Turion(tm) 64 Mobile Technology MT-40'
       2 Base: CPU = 'AMD-K6tm w/ multimedia extensions'
       2 Base: CPU = 'Dual Core AMD Opteron(tm) Processor 275'
       2 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 1210'
       2 Base: CPU = 'Genuine Intel(R) CPU 1400 @ 1.83GHz'
       2 Base: CPU = 'Genuine Intel(R) CPU T2300 @ 1.66GHz'
       2 Base: CPU = 'Genuine Intel(R) CPU T2400 @ 1.83GHz'
       2 Base: CPU = 'Genuine Intel(R) CPU T2500 @ 2.00GHz'
       2 Base: CPU = 'Intel(R) Atom(TM) CPU 230 @ 1.60GHz'
       2 Base: CPU = 'Intel(R) Celeron(R) CPU 2.00GHz'
       2 Base: CPU = 'Intel(R) Celeron(R) CPU 2.40GHz'
       2 Base: CPU = 'Intel(R) Celeron(R) CPU 430 @ 1.80GHz'
       2 Base: CPU = 'Intel(R) Celeron(R) M processor 1.00GHz'
       2 Base: CPU = 'Intel(R) Celeron(R) M processor 900MHz'
       2 Base: CPU = 'Intel(R) Core(TM)2 CPU 6320 @ 1.86GHz'
       2 Base: CPU = 'Intel(R) Core(TM)2 CPU 6700 @ 2.66GHz'
       2 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E4700 @ 2.60GHz'
       2 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU L7100 @ 1.20GHz'
       2 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T5250 @ 1.50GHz'
       2 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T7100 @ 1.80GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1.50GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1.70GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1.80GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.60GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.66GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) D CPU 3.40GHz'
       2 Base: CPU = 'Intel(R) Pentium(R) III CPU family 1266MHz'
       2 Base: CPU = 'Intel(R) Pentium(R) III Mobile CPU 1133MHz'
       2 Base: CPU = 'Intel(R) Pentium(R) M processor 1400MHz'
       2 Base: CPU = 'Intel(R) Xeon(R) CPU 5110 @ 1.60GHz'
       2 Base: CPU = 'Intel(R) Xeon(R) CPU E5320 @ 1.86GHz'
       2 Base: CPU = 'Intel(R) Xeon(R) CPU X3320 @ 2.50GHz'
       2 Base: CPU = 'Intel(R) Xeon(R) CPU X5355 @ 2.66GHz'
       2 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.40GHz'
       2 Base: CPU = 'Mobile Intel(R) Pentium(R) 4 - M CPU 1.80GHz'
       2 Base: CPU = 'Mobile Intel(R) Pentium(R) 4 - M CPU 2.00GHz'
       2 Base: CPU = 'Transmeta(tm) Crusoe(tm) Processor TM5800'
       2 Base: CPU = 'VIA Esther processor 1000MHz'
       2 Base: CPU = 'VIA Nehemiah'
       3 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 5000+'
       3 Base: CPU = 'AMD Athlon(tm) XP 1800+'
       3 Base: CPU = 'AMD Athlon(tm) processor'
       3 Base: CPU = 'AMD Sempron(tm) Processor 2800+'
       3 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 1212 HE'
       3 Base: CPU = 'Dual-Core AMD Opteron(tm) Processor 2216'
       3 Base: CPU = 'Intel(R) Celeron(R) CPU 1.70GHz'
       3 Base: CPU = 'Intel(R) Core(TM)2 CPU T5500 @ 1.66GHz'
       3 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU L7500 @ 1.60GHz'
       3 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz'
       3 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.00GHz'
       3 Base: CPU = 'Intel(R) Pentium(R) D CPU 2.80GHz'
       3 Base: CPU = 'Intel(R) Pentium(R) M processor 1.73GHz'
       3 Base: CPU = 'Intel(R) Xeon(R) CPU 3065 @ 2.33GHz'
       3 Base: CPU = 'Intel(R) Xeon(R) CPU E5405 @ 2.00GHz'
       3 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.06GHz'
       3 Base: CPU = 'QEMU Virtual CPU version 0.9.1'
       4 Base: CPU = 'AMD Athlon(tm) 64 Processor 2800+'
       4 Base: CPU = 'AMD Sempron(tm) Processor 3000+'
       4 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz'
       4 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz'
       4 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.40GHz'
       4 Base: CPU = 'Intel(R) Pentium(R) M processor 1600MHz'
       5 Base: CPU = 'AMD Athlon(tm) 64 Processor 3500+'
       5 Base: CPU = 'AMD Opteron(tm) Processor 244'
       5 Base: CPU = 'Intel(R) Atom(TM) CPU N270 @ 1.60GHz'
       5 Base: CPU = 'Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz'
       5 Base: CPU = 'Intel(R) Core(TM)2 CPU T5600 @ 1.83GHz'
       5 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz'
       5 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T8300 @ 2.40GHz'
       5 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 1.60GHz'
       6 Base: CPU = 'AMD Athlon(tm) 64 Processor 3000+'
       6 Base: CPU = 'AMD Athlon(tm) 64 Processor 3200+'
       6 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 5200+'
       6 Base: CPU = 'Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz'
       6 Base: CPU = 'Intel(R) Xeon(TM) CPU 2.80GHz'
       6 Base: CPU = 'VIA Esther processor 1500MHz'
       7 Base: CPU = 'Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz'
       7 Base: CPU = 'Intel(R) Pentium(R) M processor 1.40GHz'
       7 Base: CPU = 'Intel(R) Pentium(R) M processor 1.60GHz'
       7 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.20GHz'
       8 Base: CPU = 'Intel(R) Celeron(R) processor'
       8 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.40GHz'
       8 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.20GHz'
       8 Base: CPU = 'Intel(R) Xeon(TM) CPU 3.00GHz'
       9 Base: CPU = 'AMD Athlon(tm) Processor'
      10 Base: CPU = 'AMD Athlon(tm) 64 X2 Dual Core Processor 3800+'
      10 Base: CPU = 'Geode(TM) Integrated Processor by National Semi'
      12 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 2.80GHz'
      12 Base: CPU = 'Intel(R) Pentium(R) 4 CPU 3.00GHz'
      17 Base: CPU = 'VIA Samuel 2'
      24 Base: CPU = 'Geode(TM) Integrated Processor by AMD PCS'
      47 Base: CPU = 'Intel(R) Pentium(R) III processor'
      66 Base: CPU = '(Unknown CPU Brand String)'
    

    If you have a cpu not on this list, I'd love to get the output from cpuid from you. If you have cpus that show up as 'Unknown', then a re-run of a newer cpuid version (I've added a version number to the first line it prints) would be appreciated. Since the original post, cpuid.c has gone through at least a dozen revisions.

    -Toby.

    Comments
    1. By Brynet (Brynet) on

      > ...
      > 1 Base: CPU = 'OASIS Vcpu'
      > ...
      >
      > -Toby.
      >

      Hey, a little off topic.. sorta.. but what is this? :)

      Comments
      1. By Colin D. (cdidier) on http://cybione.org/

        > > ...
        > > 1 Base: CPU = 'OASIS Vcpu'
        > > ...
        > >
        > > -Toby.
        > >
        >
        > Hey, a little off topic.. sorta.. but what is this? :)

        It's the name of a CPU seen by a virtual machine running as a KVM guest, from the hoster lost-oasis.fr.

Credits

Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original deadly.org with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]