Provided by: cpuid_20230614-1_amd64
NAME
cpuid - Dump CPUID information for each CPU
SYNOPSIS
cpuid [options...]
DESCRIPTION
cpuid dumps detailed information about the CPU(s) gathered from the CPUID instruction, and also determines the exact model of CPU(s) from that information. It dumps all information available from the CPUID instruction. The exact collection of information available varies between manufacturers and processors. The following information is available consistently on all modern CPUs: vendor_id version information (1/eax) miscellaneous (1/ebx) feature information (1/ecx) It also produces synthetic fields based on information from multiple CPUID functions. Currently, the synthetic fields are the exact model of each CPU (but see LIMITATIONS below) as (synth); the multiprocessing characteristics including the number of cores per chip (c) and the number of hyperthreads per core (t) as (multi-processing synth); and a decoding of the APIC physical ID as (APIC synth). The determination of the model is based on the following information: version information (1/eax), processor type version information (1/eax), family version information (1/eax), model version information (1/eax), stepping id version information (1/eax), extended family version information (1/eax), extended model feature information (1/ecx), 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) AMD extended processor signature (0x80000001/eax) Transmeta processor revision ID (0x80860001/ebx & ecx) The determination of the multiprocessing characteristics and decoding of APIC physical ID is based on the following information: feature information (1/edx), hyper-threading / multi-core supported miscellaneous (1/ebx), cpu count deterministic cache parameters (4/eax), extra processor cores on this die x2APIC features / processor topology (0xb) AMD feature flags (0x80000001/ecx) AMD Logical CPU cores (0x80000008/ecx), number of logical CPU cores - 1 In addition, a simpler and coarser determination of the CPU is performed using only the information listed above under version information (1/eax). It is provided as (simple synth) under version information (1/eax). However, it tends to be unable to distinguish between various modern CPUs.
OPTIONS
cpuid accepts the following command line arguments: -1, --one-cpu Display information only for the first CPU. This cuts down on the output on a multiprocessor system, and is useful when certain that all CPUs are identical. -f FILE, --file=FILE Read raw hex information from FILE instead of from executions of the cpuid instruction. If the filename is '-', instead read from standard input. -l LEAF, --leaf=LEAF Display information only for the specified LEAF. -s SUBLEAF, --subleaf=SUBLEAF Display information only for the specified SUBLEAF. It requires the -l or --leaf option to specify the LEAF. -h, -H, --help Display help information. -i, --inst Use the CPUID instruction. The information it provides is reliable. It is not necessary to be root to use this option. (This option is the default.) -k, --kernel Use the CPUID kernel module. The information does not seem to be reliable on all combinations of CPU type and kernel version. Typically, it is necessary to be root to use this option. -r, --raw Display only raw hex information with no decoding. -v, --version Display cpuid version.
LIMITATIONS
There are numerous cases where there is no way to distinguish between various CPUs in the (synth) information. In some cases, the sizes of caches, number of cores, brand strings, etc., can be used to distinguish multiple CPUs with the same family and model. But there are cases where that information is insufficient. Whenever cpuid is unable to distinguish between multiple CPUs, it will list all known possibilities. If you believe that a certain processor should be distinguishable from another and it isn't, please inform the author of this tool. The (multi-processing synth) information is unreliable on many processors. It faithfully reports the information provided by the CPUID instruction and decodes it as recommended by the processor manufacturers, but often that information is incorrect. The information seems to indicate the architecture's capabilities, rather than what the particular chip actually does. In particular, it seems commonplace to claim the presence of multiple hyperthreads when there is only one.
INFORMATION SOURCES
Information on the CPUID instruction and on specific CPUs is available from the following documents from Intel Corporation <http://www.intel.com/support/processors/index.htm>, with the specified Document Numbers: 241618: Intel Processor Identification and the CPUID Instruction, Application Note 485 242480: Pentium Processor Specification Update 242689: Pentium Pro Processor Specification Update 243326: 60- and 66-MHz Pentium Processor Specification Update 243337: Intel Pentium II Processor Specification Update 243748: Intel Celeron Processor Specification Update 243776: Intel Pentium II Xeon Processor Specification Update 243887: Mobile Intel Pentium II Processor Specification Update 244444: Mobile Intel Celeron Processor at 466 MHz, 433 MHz, 400 MHz, 366 MHz, 333 MHz, 300 MHz, and 266 MHz Specification Update 244453: Intel Pentium III Processor Specification Update 244460: Intel Pentium III Xeon Processor Specification Update 245306: Mobile Intel Pentium III Processor and Mobile Intel Pentium III Processor-M Specification Update 245421: Mobile Intel Celeron Processor (0.18u and 0.13u) Specification Update 249199: Intel Pentium 4 Processor Specification Update 249678: Intel Xeon Processor Specification Update 250721: Mobile Intel Pentium 4 Processor-M Specification Update 251309: Mobile Intel Celeron Processor on .13 Micron Process in Micro-FCPGA Package Specification Update 252665: Intel Pentium M Processor Specification Update 253176: Mobile Intel Pentium 4 Processor with 533 MHz System Bus Specification Update 253666: 64 and IA-32 Architectures Software Developer's Manual Volume 2A: Instruction Set Reference, A-M. 276613: Detecting Multi-Core Processor Topology in an IA-32 Platform by Khang Nguyen and Shihjong Kuo 290741: Intel Xeon Processor MP Specification Update 290749: Intel Celeron Processor in the 478-Pin Package Specification Update 300303: Intel Celeron M Processor Specification Update 302209: Intel Pentium M Processor on 90nm Process with 2-MB L2 Cache Specification Update 302352: Intel Pentium 4 Processor on 90 nm Process Specification Update 302354: Intel Celeron D Processor 3xx Sequence Specification Update 302402: Intel Xeon Processor with 800 MHz System Bus 302441: Mobile Intel Pentium 4 Processor supporting Hyper-Threading Technology on 90-nm process technology Specification Update 306752: 64-bit Intel Xeon Processor MP with 1 MB L2 Cache Specification Update 306757: 64-bit Intel Xeon Processor MP with up to 8 MB L3 Cache Specification Update 306832: Intel Pentium Processor Extreme Edition and Intel Pentium D Processor Specification Update 309159: Dual-Core Intel Xeon Processor 2.80 GHz Specification Update 309222: Intel Core Duo Processor and Intel Core Solo Processor on 65 nm Process Specification Update 309627: Dual-Core Intel Xeon Processor 7000 Sequence Specification Update 310307: Intel Pentium D Processor 900 Sequence and Intel Pentium Processor Extreme Edition 955, 965 Specification Update 310309: Intel Pentium 4 Processor 6x1 Sequence Specification Update 311392: Dual-Core Intel Xeon Processor LV and ULV Specification Update 311827: Intel Celeron D Processor 300 Sequence Specification Update 313065: Dual-Core Intel Xeon Processor 5000 Series Specification Update 313279: Intel Core 2 Extreme Processor X6800 and Intel Core 2 Duo Desktop Processor E6000 Sequence Specification Update 313356: Dual-Core Intel Xeon Processor 5100 Series Specification Update 313515: Intel Pentium Dual-Core Processor Specification Update 314079: Intel Core 2 Duo and Intel Core 2 Solo Processor for Intel Centrino Duo Processor Technology Intel Celeron Processor 500 Series Specification Update 314554: Dual-Core Intel Xeon Processor 7100 Series Specification Update 314916: Dual-Core Intel Xeon Processor 3000 Series Specification Update 315593: Intel Core 2 Extreme Quad-Core Processor QX6000 Sequence and Intel Core 2 Quad Processor Q6000 Sequence Specification Update 316134: Quad-Core Intel Xeon Processor 3200 Series Specification Update 316515: Intel Pentium Dual-Core Processor Specification Update 316964: Intel Celeron Processor 400 Series Specification Update 316982: Intel Pentium Dual-Core Desktop Processor E2000 Series Specification Update 317667: Intel Celeron Processor 500 Series Specification Update 318081: Intel Xeon Processor 7200 and 7300 Series Specification Update 318547: Intel Celeron Processor 200 Sequence Specification Update 318585: Intel Xeon Processor 5400 Series Specification Update 318586: Intel Xeon Processor 5200 Series Specification Update 318727: Intel Core 2 Extreme Processor QX9000 Series and Intel Core 2 Quad Processor Q9000, Q9000S, Q8000, Q8000S Series Specification Update 318733: Intel Core 2 Duo Processor E8000 and E7000 Series Specification Update 318915: Intel Core 2 Duo Processor and Intel Core 2 Extreme Processor on 45-nm Process Specification Update 318925: Intel Celeron Dual-Core Processor E1000 Series Specification Update 319006: Dual-Core Intel Xeon Processor 3100 Series Specification Update 319007: Quad-Core Intel Xeon Processor 3300 Series Specification Update 319129: Intel Core 2 Extreme Processor QX9775 Specification Update 319433: Intel Architecture Instruction Set Extensions Programming Reference 319536: Intel Atom Processor Z5xx Series Specification Update 319735: Intel Celeron Dual-Core Processor T1x00 Series Specification Update 319978: Intel Atom Processor 200 Series Specification Update 320047: Intel Atom Processor N270 Series Specification Update 320121: Intel Core 2 Extreme Quad-Core Mobile Processor, Intel Core 2 Quad Mobile Processor, Intel Core 2 Extreme Mobile Processor, Intel Core 2 Duo Mobile Processor, Intel Core 2 Solo Mobile Processor and Intel Celeron Processor on 45-nm Process Specification Update 320257: Intel EP80579 Integrated Processor Product Line Specification Update 320336: Intel Xeon Processor 7400 Series Specification Update 320468: Intel Pentium Dual-Core E6000 and E5000 Series Specification Update 320529: Intel Atom Processor 300 Series Specification Update 320767: Intel Core i7-900 Mobile Processor Extreme Edition Series, Intel Core i7-800 and i7-700 Mobile Processor Series Specification Update 320836: Intel Core i7-900 Desktop Processor Extreme Edition Series and Intel Core i7-900 Desktop Processor Series Specification Update 321324: Intel Xeon Processor 5500 Series Specification Update 321333: Intel Xeon Processor 3500 Series Specification Update 322166: Intel Core i7-800 and i5-700 Desktop Processor Series Specification Update 322373: Intel Xeon Processor 3400 Series Specification Update 322568: Intel Celeron Processor E3x00 Series Specification Update 322849: Intel Atom Processor N400 Series Specification Update 322861: Intel Atom Processor D400 Series (Single Core) Specification Update 322862: Intel Atom Processor D500 Series (Dual Core) Specification Update 322814: Intel Core i7-600, i5-500, i5-400 and i3-300 Mobile Processor Series Specification Update 322911: Intel Core i5-600, i3-500 Desktop Processor Series and Intel Pentium Processor G6950 Specification Update 323056: Intel Xeon Processor L3406 Specification Update 323179: Intel Core i7-660UE, i7-620LE/UE, i7-610E, i5-520E, i3-330E and Intel Celeron Processor P4505, U3405 Series Datasheet Addendum Specification Update 323105: Intel Xeon Processor C5500/C3500 Series Specification Update 323254: Intel Core i7-900 Desktop Processor Extreme Edition Series and Intel Core i7-900 Desktop Processor Series on 32-nm Process Specification Update 323338: Intel Xeon Processor 3600 Series Specification Update 323344: Intel Xeon Processor 7500 Series Specification Update 323372: Intel Xeon Processor 5600 Series Specification Update 323874: Intel Pentium P6000 and U5000 Mobile Processor Series Specification Update 324209: Intel Atom Processor E6xx Series Specification Update 324341: Intel Atom Processor N500 Series Specification Update Intel 64 Architecture Processor Topology Enumeration (Whitepaper) by Shih Kuo 324456: Intel Celeron Mobile Processor P4000 and U3000 Series Specification Update 324643: 2nd Generation Intel Core Processor Family Desktop Specification Update 324827: 2nd Generation Intel Core Processor Family Mobile Specification Update 324972: Intel Xeon Processor E3-1200 Product Family Specification Update 325122: Intel Xeon Processor E7-8800 / 4800 / 2800 Product Families Specification Update 325307: Intel Atom Processor Z600 Series Specification Update 325309: Intel Atom Processor Z6000 Series Specification Update 325462: Intel 64 and IA-32 Architectures Software Developer's Manual Combined Volumes: 1, 2A, 2B, 2C, 2D, 3A, 3B, 3C, 3D, and 4 325630: Intel Atom Processor Z6xx Series Specification Update 326140: Intel Atom Processor N2000 and D2000 Series Specification Update 326198: Intel Core i7 Processor Family for the LGA-2011 Socket Specification Update 326510: Intel Xeon Processor E5 Family Specification Update 326766: Desktop 3rd Generation Intel Core Processor Family Specification Update 326770: Mobile 3rd Generation Intel Core Processor Family Specification Update 326774: Intel Xeon Processor E3-1200 v2 Product Family Specification Update 327335: Intel Xeon and Intel Core Processors For Communications Infrastructure Specification Update 328105: Intel Atom Processor Z2760 Specification Update 328198: Intel Atom Processor S1200 Product Family for Microserver Specification Update 328205: Intel Xeon Phi Coprocessor x100 Product Family Specification Update 328899: Desktop 4th Generation Intel Core Processor Family Specification Update 328903: Mobile 4th Generation Intel Core Processor Family Specification Update 328908: Intel Xeon Processor E3-1200 v3 Product Family Specification Update 329189: Intel Xeon Processor E5 v2 Product Family Specification Update 329376: Intel Xeon E3-1125C v2, E3-1105C v2, Intel Core 3115C and Intel Pentium Processor B925C Specification Update 329460: Intel Atom Processor C2000 Product Family Specification Update 329475: Intel Atom Processor Z3600 and Z3700 Series Specification Update 329597: Intel Xeon Processor E7 v2 Product Family Specification Update 329671/600827: Intel Pentium Processor N3500-series, J2850, J2900 and Intel Celeron Processor N2900-series, N2800-series, J1800-series, J1900, J1750 Specification Update 329676: Intel Quark SoC X1000 Datasheet 329901/600834: Intel Atom Processor E3800 Specification Update 330785: Intel Xeon Processor E5 v3 Product Family Specification Update 330836: 5th Generation Intel Core Processor Family, Intel Core M Processor Family, Mobile Intel Pentium Processor Family, and Mobile Intel Celeron Processor Family Specification Update 330841: Intel Core i7 Processor Family for LGA2011-v3 Socket Specification Update 332054: Intel Xeon Processor D-1500 Product Family Specification Update 332067: Intel Atom Z8000 Processor Series Specification Update 332095: Intel N-Series Intel Pentium Processors and Intel Celeron Processors Specification Update 332317: Intel Xeon Processor E7 v3 Product Family Specification Update 332381: Mobile/Desktop 5th Generation Intel Core Processor Family Specification Update 332689: 6th Generation Intel Core Processor Family Specification Update 333133: Intel Xeon Processor E3-1200 v5 Product Family Specification Update 333811: Intel Xeon Processor E5-2600 v4 Product Family Specification Update 334165: Intel Xeon Processor E7-8800/4800 v4 Product Family Specification Update 334208: Intel Core i7 Processor Family for LGA2011-v3 Socket Specification Update 334525: Control-flow Enforcement Technology Preview 334646: Intel Xeon Phi Processor x200 Product Family Preliminary Specification Update 334663: 7th Generation Intel Processor Family Specification Update Supporting 7th Generation Intel Core Processor Families based on U/Y-Processor Line 334820: Intel Pentium and Celeron Processor N- and J- Series Specification Update 335252: 5-Level Paging and 5-Level EPT White Paper 335718/730694: Intel Xeon Processor E3-1200 v6 Product Family Specification Update 335864: Intel Celeron Processor J1800, J1900, N2807, and N2930 for Internet of Things Specification Update Addendum 335901: Intel Core X-Series Processor Family Specification Update 336065/613537: Intel Xeon Processor Scalable Family Specification Update 336345: Intel Atom Processor C3000 Product Family Specification Update 336466: 8th Generation Intel Processor Family for S-Processor Platforms Specification Update 336505: Intel Xeon Processor Scalable Family Specification Update 336562: Intel Pentium Silver and Intel Celeron Processors Specification Update 337346: 8th and 9th Generation Intel Core Processor Family Specification Update 336907: Intel Architecture Memory Encryption Technologies Specification 338014: Intel Xeon E-2100 and E-2200 Processor Family Specification Update 338025: 8th Generation Intel Core Processor Families Specification Update 338848: Second Generation Intel Xeon Scalable Processors Specification Update 338854: Intel Xeon D-2100 Processor Product Family Specification Update 341079: 10th Generation Intel Core Processor Families Specification Update 343754: Intel Trust Domain CPU Architectural Extensions 344425: Architecture Specification: Intel Trust Domain Extensions (Intel TDX) Module 346466: Intel Flexible Return and Event Delivery (FRED) Specification 615213: 10th Generation Intel Core Processor Specification Update 631123: 11th Generation Intel Core Processor Family Specification Update 634808: 11th Generation Intel Core Processor Specification Update Supporting 11th Generation Intel Core Processor Families for S Platform, formerly known as Rocket Lake 634897: 3rd Generation Intel Xeon Scalable Processors, Codename Cooper Lake Specification Update 637780: 3rd Gen Intel Xeon Scalable Processors, Codename Ice Lake Specification Update 682436: 12th Generation Intel Core Processor Specification Update Supporting 12th Generation Intel Core Processor for S Processor Line Platforms, formerly known as Alder Lake 709192: Intel Xeon E-2300 Processor Family Specification Update 714071: Intel Xeon D-2700 Processor Family Specification Update 743844: 13th Generation Intel Core Processors Datasheet, Volume 1 of 2 Supporting 13th Generation Intel Core Processor for S/P/PX/H/HX/U Processor Line Platforms, formerly known as Raptor Lake 759603: Intel Processor and Intel Core i3 N-Series Datasheet, Volume 1 of 2 764616: Intel Processor and Intel Core i3 N-series Specification Update 772415: 4th Gen Intel Xeon Scalable Processors Codename Sapphire Rapids Specification Update Intel Microcode Update Guidance Branch History Injection and Intra-mode Branch Target Injection / CVE-2022-0001, CVE-2022-0002 / INTEL-SA-00598 Intel Transactional Synchronization Extensions (Intel TSX) Memory and Performance Monitoring Update for Intel Processors (Article ID 000059422) Retpoline: A Branch Target Injection Mitigation Special Register Buffer Data Sampling Information on the CPUID instruction and on specific CPUs is available from the following documents from Advanced Micro Devices, Inc. <http://www.amd.com/us- en/Processors/TechnicalResources>, with the specified Publication Numbers: 20734: AMD Processor Recognition Application Note 21266: AMD-K6 Processor Revision Guide Model 6 21641: AMD-K6-2 Processor Revision Guide Model 8 21846: AMD-K6 Processor Revision Guide Model 7 22473: AMD-K6-III Processor Revision Guide Model 9 23614: AMD Athlon Processor Model 4 Revision Guide 23865: AMD Duron Processor Model 3 Revision Guide 24332: AMD Athlon Processor Model 6 Revision Guide 24594: AMD64 Architecture Programmer's Manual Volume 3: General-Purpose and System Instructions 24806: AMD Duron Processor Model 7 Revision Guide 25481: CPUID Specification 25703: AMD Athlon Processor Model 8 Revision Guide 25759: Revision Guide for AMD Athlon 64 and AMD Opteron Processors 26094: BIOS and Kernel Developer's Guide for AMD Athlon 64 and AMD Opteron Processors 27532: AMD Athlon Processor Model 10 Revision Guide 31177H: AMD Geode NX Processors Data Book 31610: Revision Guide for AMD NPT Family 0Fh Processors 33234F: AMD Geode LX Processors Data Book 40332: AMD64 Architecture Programmer's Manual: Volumes 1-5 41322: Revision Guide for AMD Family 10h Processors 41788: Revision Guide for AMD Family 11h Processors 44739: Revision Guide for AMD Family 12h Processors 47534: Revision Guide for AMD Family 14h Models 00h-0Fh Processors 48063: Revision Guide for AMD Family 15h Models 00h-0Fh Processors 48931: Revision Guide for AMD Family 15h Models 10h-1Fh Processors 51603: Revision Guide for AMD Family 15h Models 30h-3Fh Processors 51810: Revision Guide for AMD Family 16h Models 00h-0Fh Processors 53072: Revision Guide for AMD Family 16h Models 30h-3Fh Processors 54945: Processor Programming Reference (PPR) for AMD Family 17h Models 01h,0h, Revision B2 Processors 54945: Processor Programming Reference (PPR) for AMD Family 17h Models 01h,08h Revision B2 Processors 55370: Revision Guide for AMD Family 15h Models 70h-7Fh Processors 55449: Revision Guide for AMD Family 17h Models 00h-0Fh processors 55570-B1: Processor Programming Reference (PPR) for AMD Family 17h Model 18h, Revision B1 Processors 55766: Secure Encrypted Virtualization API Version 0.16 Technical Preview 55772-A1: Processor Programming Reference (PPR) for AMD Family 17h Model 20h, Revision A1 Processors 55898: Preliminary Processor Programming Reference (PPR) for AMD Family 19h Model 01h, Revision B1 Processors 56214: Processor Programming Reference (PPR) for AMD Family 19h Model 21h, Revision B0 Processors 56569: Processor Programming Reference (PPR) for AMD Family 19h Model 51h, Revision A1 Processors 55901: Preliminary Processor Programming Reference (PPR) for AMD Family 19h Model 11h, Revision B1 Processors 55922-A1: Processor Programming Reference (PPR) for AMD Family 17h Model 60h, Revision A1 Processors 55803: Preliminary Processor Programming Reference (PPR) for AMD Family 17h Model 31h, Revision B0 Processors 56176: Processor Programming Reference (PPR) for AMD Family 17h Model 71h, Revision B0 Processors 56375: AMD64 Technology Platform Quality of Service Extensions 57095: Revision Guide for AMD Family 19h Models 10h-1Fh Processors AMD64 Technology Indirect Branch Control Extension (White Paper), Revision 4.10.18 AMD64 Technology Speculative Store Bypass Disable (White Paper), Revision 5.21.18 Technical Guidance For Mitigating Branch Type Confusion (White Paper), Revision 2022-07-12 Information on the CPUID instruction and on specific CPUs is available from the following documents from Transmeta Corporation <http://www.transmeta.com/crusoe_docs/Crusoe_CPUID_5-7-02.pdf>: Processor Recognition, 2002/05/07 Information on the CPUID instruction and on specific CPUs is available from the following documents from Cyrix: Application Note 112: Cyrix CPU Detection Guide Cyrix 6x86 Processor, Instruction Set The linux kernel can be a source of information on CPUID flags, using X86_FEATURE_* definitions in arch/x86/include/asm/cpufeatures.h. Also, it can be used to learn about Intel microarchitectures in arch/x86/include/asm/intel-family.h. Information on generic hypervisor CPUID leaves is available from this proposal: <http://lwn.net/Articles/301888/>. Information on KVM hypervisor CPUID leaves is available from the Linux kernel under Documentation/virtual/kvm/cpuid.txt. Information on XEN hypervisor CPUID leaves is deduced from source inspection, mainly from xen's include/public/arch-x86/cpuid.h and arch/x86/traps.c. Information on Microsoft hypervisor CPUID leaves is available from the following documents from Microsoft: <https://docs.microsoft.com/en-us/virtualization/hyper-v-on- windows/reference/tlfs> and <http://msdn.microsoft.com/en- us/library/windows/hardware/ff542428%28v=vs.85%29.aspx>. Also, information is available from the following web sites: <http://www.sandpile.org/x86/cpuid.htm> <http://instlatx64.atw.hu/> <http://en.wikipedia.org/wiki/List_of_Intel_CPU_microarchitectures> <http://en.wikipedia.org/wiki/List_of_AMD_CPU_microarchitectures> <http://en.wikipedia.org/wiki/List_of_Intel_microprocessors> <http://en.wikipedia.org/wiki/List_of_AMD_microprocessors> <http://en.wikipedia.org/wiki/Category:X86_microprocessors>
AUTHOR
Todd Allen <cpuid@etallen.com>