Download of the day: cupid Linux tool to determines the exact model of CPU

by on September 22, 2006 · 1 comment· LAST UPDATED September 22, 2006

in

cpuid dumps detailed information about the CPU(s) gathered from the CPUID instruction, and also determines the exact model of CPU(s). It supports Intel, AMD, and VIA CPUs, as well as older Transmeta, Cyrix, UMC, NexGen, and Rise CPUs.

Use this tool to verify that you got the same product for which you have paid money or determine features and instruction set supported by your CPU.

This is useful to find CPU information such as:

=> vendor_id
=> version information (1/eax)
=> miscellaneous (1/ebx)
=> feature information (1/ecx)
=> processor type
=> family
=> model
=> stepping id
=> extended family
=> extended model
=> virtual machine extensions
=> brand id (1/ebx)
=> brand (0x80000004)
=> cache and TLB information (2)
=> deterministic cache parameters (4/eax), extra processor cores
=> AMD extended brand id (0x80000001/ebx)
=> Transmeta processor revision ID (0x80860001/ebx & ecx) etc

This tool dumps all information available from the CPUID instruction. The exact collection of information available varies between manufacturers and even between different CPUs from a single manufacturer.

Sample output:
$ ./cpuidOutput:

CPU:
   vendor_id = "AuthenticAMD"
   version information (1/eax):
      processor type  = primary processor (0)
      family          = Intel Pentium 4/Pentium D/Pentium Extreme Edition/Celeron/Xeon/Xeon MP/Itanium2, AMD Athlon 64/Athlon XP-M/Opteron/Sempron/Turion (15)
      model           = 0x3 (3)
      stepping id     = 0x2 (2)
      extended family = 0x0 (0)
      extended model  = 0x2 (2)
      (simple synth)  = AMD Dual Core Opteron (Denmark JH-E6) / Athlon 64 X2 (Toledo JH-E6), 939-pin, 90nm
   miscellaneous (1/ebx):
      process local APIC physical ID = 0x1 (1)
      cpu count                      = 0x2 (2)
      CLFLUSH line size              = 0x8 (8)
      brand index                    = 0x0 (0)
   brand id = 0x00 (0): unknown
   feature information (1/edx):
      x87 FPU on chip                        = true
      virtual-8086 mode enhancement          = true
      debugging extensions                   = true
      page size extensions                   = true
      time stamp counter                     = true
      RDMSR and WRMSR support                = true
      physical address extensions            = true
      machine check exception                = true
      CMPXCHG8B inst.                        = true
      APIC on chip                           = true
      SYSENTER and SYSEXIT                   = true
      memory type range registers            = true
      PTE global bit                         = true
      machine check architecture             = true
      conditional move/compare instruction   = true
      page attribute table                   = true
      page size extension                    = true
  processor serial number                = false
      CLFLUSH instruction                    = true
      debug store                            = false
      thermal monitor and clock ctrl         = false
      MMX Technology                         = true
      FXSAVE/FXRSTOR                         = true
      SSE extensions                         = true
      SSE2 extensions                        = true
      self snoop                             = false
      hyper-threading / multi-core supported = true
      therm. monitor                         = false
      IA64                                   = false
      pending break event                    = false
   feature information (1/ecx):
      PNI/SSE3: Prescott New Instructions    = true
      MONITOR/MWAIT                          = false
      CPL-qualified debug store              = false
      VMX: virtual machine extensions        = false
      Enhanced Intel SpeedStep Technology    = false
      thermal monitor 2                      = false
      context ID: adaptive or shared L1 data = false
      cmpxchg16b available                   = false
      xTPR disable                           = false
   extended processor signature (0x80000001/eax):
      generation     = AMD Athlon 64/Opteron/Sempron/Turion (15)
      model          = 0x3 (3)
      stepping       = 0x2 (2)
      (simple synth) = AMD Dual Core Opteron (Denmark JH-E6) / Athlon 64 X2 (Toledo JH-E6 / Manchester JH-E6), 939-pin, 90nm
   extended feature flags (0x80000001/edx):
      x87 FPU on chip                       = true
      virtual-8086 mode enhancement         = true
      debugging extensions                  = true
      page size extensions                  = true
      time stamp counter                    = true
      RDMSR and WRMSR support               = true
      physical address extensions           = true
      machine check exception               = true
      CMPXCHG8B inst.                       = true
      APIC on chip                          = true
      SYSCALL and SYSRET instructions       = true
      memory type range registers           = true
      global paging extension               = true
      machine check architecture            = true
      conditional move/compare instruction  = true
      page attribute table                  = true
      page size extension                   = true
      multiprocessing capable               = false
      no-execute page protection            = true
      AMD multimedia instruction extensions = true
      MMX Technology                        = true
      FXSAVE/FXRSTOR                        = true
      SSE extensions                        = true
      RDTSCP                                = false
      long mode (AA-64)                     = true
      3DNow! instruction extensions         = true
      3DNow! instructions                   = true
   extended brand id = 0xb05 (2821):
      MSB = reserved (0b101100)
      NN  = 0x5 (5)
   AMD feature flags (0x80000001/ecx):
      LAHF/SAHF supported in 64-bit mode = true
      CMP Legacy                         = true
      SVM: secure virtual machine        = false
      AltMovCr8                          = false
   brand = "Dual Core AMD Opteron(tm) Processor 170"
   L1 TLB/cache information: 2M/4M pages & L1 TLB (0x80000005/eax):
      instruction # entries     = 0x8 (8)
      instruction associativity = 0xff (255)
      data # entries            = 0x8 (8)
      data associativity        = 0xff (255)
 L1 TLB/cache information: 4K pages & L1 TLB (0x80000005/ebx):
      instruction # entries     = 0x20 (32)
      instruction associativity = 0xff (255)
      data # entries            = 0x20 (32)
      data associativity        = 0xff (255)
   L1 data cache information (0x80000005/ecx):
      line size (bytes) = 0x40 (64)
      lines per tag     = 0x1 (1)
      associativity     = 0x2 (2)
      size (Kb)         = 0x40 (64)
   L1 instruction cache information (0x80000005/ecx):
      line size (bytes) = 0x40 (64)
      lines per tag     = 0x1 (1)
      associativity     = 0x2 (2)
      size (Kb)         = 0x40 (64)
   L2 TLB/cache information: 2M/4M pages & L2 TLB (0x80000006/eax):
      instruction # entries     = 0x0 (0)
      instruction associativity = L2 off (0)
      data # entries            = 0x0 (0)
      data associativity        = L2 off (0)
   L2 TLB/cache information: 4K pages & L2 TLB (0x80000006/ebx):
      instruction # entries     = 0x200 (512)
      instruction associativity = 4-way (4)
      data # entries            = 0x200 (512)
      data associativity        = 4-way (4)
   L2 unified cache information (0x80000006/ecx):
      line size (bytes) = 0x40 (64)
      lines per tag     = 0x1 (1)
      associativity     = 16-way (8)
      size (Kb)         = 0x400 (1024)
   Advanced Power Management Features (0x80000007/edx):
      temperature sensing diode      = 0x1 (1)
      frequency ID (FID) control     = 0x1 (1)
      voltage ID (VID) control       = 0x1 (1)
      thermal trip (TTP)             = 0x1 (1)
    thermal monitor (TM)           = 0x0 (0)
      software thermal control (STC) = 0x0 (0)
      TscInvariant                   = 0x0 (0)
   Physical Address and Linear Address Size (0x80000008/eax):
      maximum physical address = 0x28 (40)
      maximum linear address   = 0x30 (48)
   Logical CPU cores (0x80000008/ecx):
      number of logical CPU cores - 1 = 0x1 (1)
      ApicIdCoreIdSize                = 0x0 (0)
   SVM Secure Virtual Machine (0x8000000a/eax):
      SvmRev: SVM revision = 0x0 (0)
   SVM Secure Virtual Machine (0x8000000a/edx):
      LBR virtualization = false
   NASID: number of address space identifiers = 0x0 (0):
   (multi-processing synth): multi-core (c=2)
   (synth) = AMD Dual Core Opteron (Denmark JH-E6), 939-pin, 90nm Processor 170

Above output clearly indicates that how much information it can display as compare to your regular less /proc/cpuinfo command.

=> You can download RPM version or source code here.

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 1 comment… read it below or add one }

1 Raj September 22, 2006 at 7:18 pm

Hey,

Cool tool. There is also tool avilbale from Vmware but you need to burn it on CD (ISO file)
http://download3.vmware.com/software/vi/CPU_Compatibility.zip

It determines VMotion compatibility, AMD and Intel cpu revision, 32 or 64 bit instruction set and much more.

Although this product is VMWare specific but anyone can download it and use for any purpose.

Cheers

Raj

Reply

Leave a Comment

Previous post:

Next post: