1CPUID(1) General Commands Manual CPUID(1)
2
3
4
6 cpuid - Dump CPUID information for each CPU
7
9 cpuid [options...]
10
12 cpuid dumps detailed information about the CPU(s) gathered from the
13 CPUID instruction, and also determines the exact model of CPU(s) from
14 that information.
15
16 It dumps all information available from the CPUID instruction. The
17 exact collection of information available varies between manufacturers
18 and processors. The following information is available consistently on
19 all modern CPUs:
20
21 vendor_id
22 version information (1/eax)
23 miscellaneous (1/ebx)
24 feature information (1/ecx)
25
26 It also produces synthetic fields based on information from multiple
27 CPUID functions. Currently, the synthetic fields are the exact model
28 of each CPU (but see LIMITATIONS below) as (synth); the multiprocessing
29 characteristics including the number of cores per chip (c) and the num‐
30 ber of hyperthreads per core (t) as (multi-processing synth); and a
31 decoding of the APIC physical ID as (APIC synth).
32
33 The determination of the model is based on the following information:
34
35 version information (1/eax), processor type
36 version information (1/eax), family
37 version information (1/eax), model
38 version information (1/eax), stepping id
39 version information (1/eax), extended family
40 version information (1/eax), extended model
41 feature information (1/ecx), virtual machine extensions
42 brand id (1/ebx)
43 brand (0x80000004)
44 cache and TLB information (2)
45 deterministic cache parameters (4/eax), extra processor cores
46 AMD extended brand id (0x80000001/ebx)
47 AMD extended processor signature (0x80000001/eax)
48 Transmeta processor revision ID (0x80860001/ebx & ecx)
49
50 The determination of the multiprocessing characteristics and decoding
51 of APIC physical ID is based on the following information:
52
53 feature information (1/edx), hyper-threading / multi-core supported
54 miscellaneous (1/ebx), cpu count
55 deterministic cache parameters (4/eax), extra processor cores on this die
56 x2APIC features / processor topology (0xb)
57 AMD feature flags (0x80000001/ecx)
58 AMD Logical CPU cores (0x80000008/ecx), number of logical CPU cores - 1
59
60 In addition, a simpler and coarser determination of the CPU is per‐
61 formed using only the information listed above under version informa‐
62 tion (1/eax). It is provided as (simple synth) under version informa‐
63 tion (1/eax). However, it tends to be unable to distinguish between
64 various modern CPUs.
65
67 cpuid accepts the following command line arguments:
68
69 -1, --one-cpu
70 Display information only for the first CPU. This cuts down on
71 the output on a multiprocessor system, and is useful when cer‐
72 tain that all CPUs are identical.
73
74 -f FILE, --file=FILE
75 Read raw hex information from FILE instead of from executions
76 of the cpuid instruction. If the filename is '-', instead read
77 from standard input.
78
79 -l LEAF, --leaf=LEAF
80 Display information only for the specified LEAF.
81
82 -s SUBLEAF, --subleaf=SUBLEAF
83 Display information only for the specified SUBLEAF. It
84 requires the -l or --leaf option to specify the LEAF.
85
86 -h, -H, --help
87 Display help information.
88
89 -i, --inst
90 Use the CPUID instruction. The information it provides is
91 reliable. It is not necessary to be root to use this option.
92 (This option is the default.)
93
94 -k, --kernel
95 Use the CPUID kernel module. The information does not seem to
96 be reliable on all combinations of CPU type and kernel version.
97 Typically, it is necessary to be root to use this option.
98
99 -r, --raw
100 Display only raw hex information with no decoding.
101
102 -v, --version
103 Display cpuid version.
104
106 There are numerous cases where there is no way to distinguish between
107 various CPUs in the (synth) information. In some cases, the sizes of
108 caches, number of cores, brand strings, etc., can be used to distin‐
109 guish multiple CPUs with the same family and model. But there are
110 cases where that information is insufficient. Whenever cpuid is unable
111 to distinguish between multiple CPUs, it will list all known possibili‐
112 ties.
113
114 If you believe that a certain processor should be distinguishable from
115 another and it isn't, please inform the author of this tool.
116
117 The (multi-processing synth) information is unreliable on many proces‐
118 sors. It faithfully reports the information provided by the CPUID
119 instruction and decodes it as recommended by the processor manufactur‐
120 ers, but often that information is incorrect. The information seems to
121 indicate the architecture's capabilities, rather than what the particu‐
122 lar chip actually does. In particular, it seems commonplace to claim
123 the presence of multiple hyperthreads when there is only one.
124
126 Information on the CPUID instruction and on specific CPUs is available
127 from the following documents from Intel Corporation
128 <http://www.intel.com/support/processors/index.htm>, with the specified
129 Document Numbers:
130
131 241618: Intel Processor Identification and the CPUID Instruc‐
132 tion, Application Note 485
133 242480: Pentium Processor Specification Update
134 242689: Pentium Pro Processor Specification Update
135 243326: 60- and 66-MHz Pentium Processor Specification Update
136 243337: Intel Pentium II Processor Specification Update
137 243748: Intel Celeron Processor Specification Update
138 243776: Intel Pentium II Xeon Processor Specification Update
139 243887: Mobile Intel Pentium II Processor Specification Update
140 244444: Mobile Intel Celeron Processor at 466 MHz, 433 MHz, 400
141 MHz, 366 MHz, 333 MHz, 300 MHz, and 266 MHz Specification Update
142 244453: Intel Pentium III Processor Specification Update
143 244460: Intel Pentium III Xeon Processor Specification Update
144 245306: Mobile Intel Pentium III Processor and Mobile Intel Pen‐
145 tium III Processor-M Specification Update
146 245421: Mobile Intel Celeron Processor (0.18u and 0.13u) Speci‐
147 fication Update
148 249199: Intel Pentium 4 Processor Specification Update
149 249678: Intel Xeon Processor Specification Update
150 250721: Mobile Intel Pentium 4 Processor-M Specification Update
151 251309: Mobile Intel Celeron Processor on .13 Micron Process in
152 Micro-FCPGA Package Specification Update
153 252665: Intel Pentium M Processor Specification Update
154 253176: Mobile Intel Pentium 4 Processor with 533 MHz System Bus
155 Specification Update
156 253666: 64 and IA-32 Architectures Software Developer's Manual
157 Volume 2A: Instruction Set Reference, A-M.
158 276613: Detecting Multi-Core Processor Topology in an IA-32
159 Platform by Khang Nguyen and Shihjong Kuo
160 290741: Intel Xeon Processor MP Specification Update
161 290749: Intel Celeron Processor in the 478-Pin Package Specifi‐
162 cation Update
163 300303: Intel Celeron M Processor Specification Update
164 302209: Intel Pentium M Processor on 90nm Process with 2-MB L2
165 Cache Specification Update
166 302352: Intel Pentium 4 Processor on 90 nm Process Specification
167 Update
168 302354: Intel Celeron D Processor 3xx Sequence Specification
169 Update
170 302402: Intel Xeon Processor with 800 MHz System Bus
171 302441: Mobile Intel Pentium 4 Processor supporting Hyper-
172 Threading Technology on 90-nm process technology Specification
173 Update
174 306752: 64-bit Intel Xeon Processor MP with 1 MB L2 Cache Speci‐
175 fication Update
176 306757: 64-bit Intel Xeon Processor MP with up to 8 MB L3 Cache
177 Specification Update
178 306832: Intel Pentium Processor Extreme Edition and Intel Pen‐
179 tium D Processor Specification Update
180 309159: Dual-Core Intel Xeon Processor 2.80 GHz Specification
181 Update
182 309222: Intel Core Duo Processor and Intel Core Solo Processor
183 on 65 nm Process Specification Update
184 309627: Dual-Core Intel Xeon Processor 7000 Sequence Specifica‐
185 tion Update
186 310307: Intel Pentium D Processor 900 Sequence and Intel Pentium
187 Processor Extreme Edition 955, 965 Specification Update
188 310309: Intel Pentium 4 Processor 6x1 Sequence Specification
189 Update
190 311392: Dual-Core Intel Xeon Processor LV and ULV Specification
191 Update 311827: Intel Celeron D Processor 300 Sequence Specifica‐
192 tion Update
193 313065: Dual-Core Intel Xeon Processor 5000 Series Specification
194 Update
195 313279: Intel Core 2 Extreme Processor X6800 and Intel Core 2
196 Duo Desktop Processor E6000 Sequence Specification Update
197 313356: Dual-Core Intel Xeon Processor 5100 Series Specification
198 Update
199 313515: Intel Pentium Dual-Core Processor Specification Update
200 314079: Intel Core 2 Duo and Intel Core 2 Solo Processor for
201 Intel Centrino Duo Processor Technology Intel Celeron Processor
202 500 Series Specification Update 314554: Dual-Core Intel Xeon
203 Processor 7100 Series Specification Update
204 314916: Dual-Core Intel Xeon Processor 3000 Series Specification
205 Update
206 315593: Intel Core 2 Extreme Quad-Core Processor QX6000 Sequence
207 and Intel Core 2 Quad Processor Q6000 Sequence Specification
208 Update
209 316134: Quad-Core Intel Xeon Processor 3200 Series Specification
210 Update
211 316515: Intel Pentium Dual-Core Processor Specification Update
212 316964: Intel Celeron Processor 400 Series Specification Update
213 316982: Intel Pentium Dual-Core Desktop Processor E2000 Series
214 Specification Update
215 317667: Intel Celeron Processor 500 Series Specification Update
216 318081: Intel Xeon Processor 7200 and 7300 Series Specification
217 Update
218 318547: Intel Celeron Processor 200 Sequence Specification
219 Update
220 318585: Intel Xeon Processor 5400 Series Specification Update
221 318586: Intel Xeon Processor 5200 Series Specification Update
222 318727: Intel Core 2 Extreme Processor QX9000 Series and Intel
223 Core 2 Quad Processor Q9000, Q9000S, Q8000, Q8000S Series Speci‐
224 fication Update
225 318733: Intel Core 2 Duo Processor E8000 and E7000 Series Speci‐
226 fication Update
227 318915: Intel Core 2 Duo Processor and Intel Core 2 Extreme Pro‐
228 cessor on 45-nm Process Specification Update
229 318925: Intel Celeron Dual-Core Processor E1000 Series Specifi‐
230 cation Update
231 319006: Dual-Core Intel Xeon Processor 3100 Series Specification
232 Update
233 319007: Quad-Core Intel Xeon Processor 3300 Series Specification
234 Update
235 319129: Intel Core 2 Extreme Processor QX9775 Specification
236 Update
237 319433: Intel Architecture Instruction Set Extensions Program‐
238 ming Reference
239 319536: Intel Atom Processor Z5xx Series Specification Update
240 319735: Intel Celeron Dual-Core Processor T1x00 Series Specifi‐
241 cation Update
242 319978: Intel Atom Processor 200 Series Specification Update
243 320047: Intel Atom Processor N270 Series Specification Update
244 320121: Intel Core 2 Extreme Quad-Core Mobile Processor, Intel
245 Core 2 Quad Mobile Processor, Intel Core 2 Extreme Mobile Pro‐
246 cessor, Intel Core 2 Duo Mobile Processor, Intel Core 2 Solo
247 Mobile Processor and Intel Celeron Processor on 45-nm Process
248 Specification Update
249 320257: Intel EP80579 Integrated Processor Product Line Specifi‐
250 cation Update
251 320336: Intel Xeon Processor 7400 Series Specification Update
252 320468: Intel Pentium Dual-Core E6000 and E5000 Series Specifi‐
253 cation Update
254 320529: Intel Atom Processor 300 Series Specification Update
255 320767: Intel Core i7-900 Mobile Processor Extreme Edition
256 Series, Intel Core i7-800 and i7-700 Mobile Processor Series
257 Specification Update
258 320836: Intel Core i7-900 Desktop Processor Extreme Edition
259 Series and Intel Core i7-900 Desktop Processor Series Specifica‐
260 tion Update
261 321324: Intel Xeon Processor 5500 Series Specification Update
262 321333: Intel Xeon Processor 3500 Series Specification Update
263 322166: Intel Core i7-800 and i5-700 Desktop Processor Series
264 Specification Update
265 322373: Intel Xeon Processor 3400 Series Specification Update
266 322568: Intel Celeron Processor E3x00 Series Specification
267 Update
268 322849: Intel Atom Processor N400 Series Specification Update
269 322861: Intel Atom Processor D400 Series (Single Core) Specifi‐
270 cation Update
271 322862: Intel Atom Processor D500 Series (Dual Core) Specifica‐
272 tion Update
273 322814: Intel Core i7-600, i5-500, i5-400 and i3-300 Mobile Pro‐
274 cessor Series Specification Update
275 322911: Intel Core i5-600, i3-500 Desktop Processor Series and
276 Intel Pentium Processor G6950 Specification Update
277 323056: Intel Xeon Processor L3406 Specification Update
278 323179: Intel Core i7-660UE, i7-620LE/UE, i7-610E, i5-520E,
279 i3-330E and Intel Celeron Processor P4505, U3405 Series
280 Datasheet Addendum Specification Update
281 323105: Intel Xeon Processor C5500/C3500 Series Specification
282 Update
283 323254: Intel Core i7-900 Desktop Processor Extreme Edition
284 Series and Intel Core i7-900 Desktop Processor Series on 32-nm
285 Process Specification Update
286 323338: Intel Xeon Processor 3600 Series Specification Update
287 323344: Intel Xeon Processor 7500 Series Specification Update
288 323372: Intel Xeon Processor 5600 Series Specification Update
289 323874: Intel Pentium P6000 and U5000 Mobile Processor Series
290 Specification Update
291 324209: Intel Atom Processor E6xx Series Specification Update
292 324341: Intel Atom Processor N500 Series Specification Update
293 Intel 64 Architecture Processor Topology Enumeration (Whitepa‐
294 per) by Shih Kuo
295 324456: Intel Celeron Mobile Processor P4000 and U3000 Series
296 Specification Update
297 324643: 2nd Generation Intel Core Processor Family Desktop Spec‐
298 ification Update
299 324827: 2nd Generation Intel Core Processor Family Mobile Speci‐
300 fication Update
301 324972: Intel Xeon Processor E3-1200 Product Family Specifica‐
302 tion Update
303 325122: Intel Xeon Processor E7-8800 / 4800 / 2800 Product Fami‐
304 lies Specification Update
305 325307: Intel Atom Processor Z600 Series Specification Update
306 325309: Intel Atom Processor Z6000 Series Specification Update
307 325462: Intel 64 and IA-32 Architectures Software Developer's
308 Manual Combined Volumes: 1, 2A, 2B, 2C, 2D, 3A, 3B, 3C, 3D, and
309 4
310 325630: Intel Atom Processor Z6xx Series Specification Update
311 326140: Intel Atom Processor N2000 and D2000 Series Specifica‐
312 tion Update
313 326198: Intel Core i7 Processor Family for the LGA-2011 Socket
314 Specification Update
315 326510: Intel Xeon Processor E5 Family Specification Update
316 326766: Desktop 3rd Generation Intel Core Processor Family Spec‐
317 ification Update
318 326770: Mobile 3rd Generation Intel Core Processor Family Speci‐
319 fication Update
320 326774: Intel Xeon Processor E3-1200 v2 Product Family Specifi‐
321 cation Update
322 327335: Intel Xeon and Intel Core Processors For Communications
323 Infrastructure Specification Update
324 328105: Intel Atom Processor Z2760 Specification Update
325 328198: Intel Atom Processor S1200 Product Family for
326 Microserver Specification Update
327 328205: Intel Xeon Phi Coprocessor x100 Product Family Specifi‐
328 cation Update
329 328899: Desktop 4th Generation Intel Core Processor Family Spec‐
330 ification Update
331 328903: Mobile 4th Generation Intel Core Processor Family Speci‐
332 fication Update
333 328908: Intel Xeon Processor E3-1200 v3 Product Family Specifi‐
334 cation Update
335 329189: Intel Xeon Processor E5 v2 Product Family Specification
336 Update
337 329376: Intel Xeon E3-1125C v2, E3-1105C v2, Intel Core 3115C
338 and Intel Pentium Processor B925C Specification Update
339 329460: Intel Atom Processor C2000 Product Family Specification
340 Update
341 329475: Intel Atom Processor Z3600 and Z3700 Series Specifica‐
342 tion Update
343 329597: Intel Xeon Processor E7 v2 Product Family Specification
344 Update
345 329671/600827: Intel Pentium Processor N3500-series, J2850,
346 J2900 and Intel Celeron Processor N2900-series, N2800-series,
347 J1800-series, J1900, J1750 Specification Update
348 329676: Intel Quark SoC X1000 Datasheet
349 329901/600834: Intel Atom Processor E3800 Specification Update
350 330785: Intel Xeon Processor E5 v3 Product Family Specification
351 Update
352 330836: 5th Generation Intel Core Processor Family, Intel Core M
353 Processor Family, Mobile Intel Pentium Processor Family, and
354 Mobile Intel Celeron Processor Family Specification Update
355 330841: Intel Core i7 Processor Family for LGA2011-v3 Socket
356 Specification Update
357 332054: Intel Xeon Processor D-1500 Product Family Specification
358 Update
359 332067: Intel Atom Z8000 Processor Series Specification Update
360 332095: Intel N-Series Intel Pentium Processors and Intel
361 Celeron Processors Specification Update
362 332317: Intel Xeon Processor E7 v3 Product Family Specification
363 Update
364 332381: Mobile/Desktop 5th Generation Intel Core Processor Fam‐
365 ily Specification Update
366 332689: 6th Generation Intel Core Processor Family Specification
367 Update
368 333133: Intel Xeon Processor E3-1200 v5 Product Family Specifi‐
369 cation Update
370 333811: Intel Xeon Processor E5-2600 v4 Product Family Specifi‐
371 cation Update
372 334165: Intel Xeon Processor E7-8800/4800 v4 Product Family
373 Specification Update
374 334208: Intel Core i7 Processor Family for LGA2011-v3 Socket
375 Specification Update
376 334525: Control-flow Enforcement Technology Preview
377 334646: Intel Xeon Phi Processor x200 Product Family Preliminary
378 Specification Update
379 334663: 7th Generation Intel Processor Family Specification
380 Update Supporting 7th Generation Intel Core Processor Families
381 based on U/Y-Processor Line
382 334820: Intel Pentium and Celeron Processor N- and J- Series
383 Specification Update
384 335252: 5-Level Paging and 5-Level EPT White Paper
385 335718: Intel Xeon Processor E3-1200 v6 Product Family Specifi‐
386 cation Update
387 335901: Intel Core X-Series Processor Family Specification
388 Update
389 336345: Intel Atom Processor C3000 Product Family Specification
390 Update
391 336466: 8th Generation Intel Processor Family for S-Processor
392 Platforms Specification Update
393 336505: Intel Xeon Processor Scalable Family Specification
394 Update
395 336562: Intel Pentium Silver and Intel Celeron Processors Speci‐
396 fication Update
397 337346: 8th and 9th Generation Intel Core Processor Family Spec‐
398 ification Update
399 336907: Intel Architecture Memory Encryption Technologies Speci‐
400 fication
401 338014: Intel Xeon E-2100 and E-2200 Processor Family Specifica‐
402 tion Update
403 338025: 8th Generation Intel Core Processor Families Specifica‐
404 tion Update
405 338848: Second Generation Intel Xeon Scalable Processors Speci‐
406 fication Update
407 338854: Intel Xeon D-2100 Processor Product Family Specification
408 Update
409 341079: 10th Generation Intel Core Processor Families Specifica‐
410 tion Update
411 615213: 10th Generation Intel Core Processor Specification
412 Update
413 Intel Microcode Update Guidance
414
415 Information on the CPUID instruction and on specific CPUs is available
416 from the following documents from Advanced Micro Devices, Inc.
417 <http://www.amd.com/us-en/Processors/TechnicalResources>, with the
418 specified Publication Numbers:
419
420 20734: AMD Processor Recognition Application Note
421 21266: AMD-K6 Processor Revision Guide Model 6
422 21641: AMD-K6-2 Processor Revision Guide Model 8
423 21846: AMD-K6 Processor Revision Guide Model 7
424 22473: AMD-K6-III Processor Revision Guide Model 9
425 23614: AMD Athlon Processor Model 4 Revision Guide
426 23865: AMD Duron Processor Model 3 Revision Guide
427 24332: AMD Athlon Processor Model 6 Revision Guide
428 24806: AMD Duron Processor Model 7 Revision Guide
429 25481: CPUID Specification
430 25703: AMD Athlon Processor Model 8 Revision Guide
431 25759: Revision Guide for AMD Athlon 64 and AMD Opteron Proces‐
432 sors
433 26094: BIOS and Kernel Developer's Guide for AMD Athlon 64 and
434 AMD Opteron Processors
435 27532: AMD Athlon Processor Model 10 Revision Guide
436 31177H: AMD Geode NX Processors Data Book
437 31610: Revision Guide for AMD NPT Family 0Fh Processors
438 33234F: AMD Geode LX Processors Data Book
439 41322: Revision Guide for AMD Family 10h Processors
440 41788: Revision Guide for AMD Family 11h Processors
441 44739: Revision Guide for AMD Family 12h Processors
442 47534: Revision Guide for AMD Family 14h Models 00h-0Fh Proces‐
443 sors
444 48063: Revision Guide for AMD Family 15h Models 00h-0Fh Proces‐
445 sors
446 48931: Revision Guide for AMD Family 15h Models 10h-1Fh Proces‐
447 sors
448 51603: Revision Guide for AMD Family 15h Models 30h-3Fh Proces‐
449 sors
450 51810: Revision Guide for AMD Family 16h Models 00h-0Fh Proces‐
451 sors
452 53072: Revision Guide for AMD Family 16h Models 30h-3Fh Proces‐
453 sors
454 54945: Processor Programming Reference (PPR) for AMD Family 17h
455 Models 01h,0h, Revision B2 Processors
456 54945: Processor Programming Reference (PPR) for AMD Family 17h
457 Models 01h,08h Revision B2 Processors
458 55370: Revision Guide for AMD Family 15h Models 70h-7Fh Proces‐
459 sors
460 55449: Revision Guide for AMD Family 17h Models 00h-0Fh proces‐
461 sors
462 55570-B1: Processor Programming Reference (PPR) for AMD Family
463 17h Model 18h, Revision B1 Processors
464 55766: Secure Encrypted Virtualization API Version 0.16 Techni‐
465 cal Preview
466 55803: Preliminary Processor Programming Reference (PPR) for AMD
467 Family 17h Model 31h, Revision B0 Processors
468 56176: Processor Programming Reference (PPR) for AMD Family 17h
469 Model 71h, Revision B0 Processors
470 AMD64 Technology Indirect Branch Control Extension (White
471 Paper), Revision 4.10.18
472 AMD64 Technology Speculative Store Bypass Disable (White Paper),
473 Revision 5.21.18
474
475 Information on the CPUID instruction and on specific CPUs is available
476 from the following documents from Transmeta Corporation
477 <http://www.transmeta.com/crusoe_docs/Crusoe_CPUID_5-7-02.pdf>:
478
479 Processor Recognition, 2002/05/07
480
481 The linux kernel can be a source of information on CPUID flags, using
482 X86_FEATURE_* definitions in arch/x86/include/asm/cpufeatures.h. Also,
483 it can be used to learn about Intel microarchitectures in
484 arch/x86/include/asm/intel-family.h.
485
486 Information on generic hypervisor CPUID leaves is available from this
487 proposal: <http://lwn.net/Articles/301888/>.
488
489 Information on KVM hypervisor CPUID leaves is available from the Linux
490 kernel under Documentation/virtual/kvm/cpuid.txt.
491
492 Information on XEN hypervisor CPUID leaves is deduced from source
493 inspection, mainly from xen's include/public/arch-x86/cpuid.h and
494 arch/x86/traps.c.
495
496 Information on Microsoft hypervisor CPUID leaves is available from the
497 following documents from Microsoft: <https://docs.microsoft.com/en-
498 us/virtualization/hyper-v-on-windows/reference/tlfs> and
499 <http://msdn.microsoft.com/en-us/library/windows/hard‐
500 ware/ff542428%28v=vs.85%29.aspx>.
501
502 Also, information is available from the following web sites:
503
504 <http://www.sandpile.org/x86/cpuid.htm>
505 <http://instlatx64.atw.hu/>
506 <http://en.wikipedia.org/wiki/List_of_Intel_CPU_microarchitec‐
507 tures>
508 <http://en.wikipedia.org/wiki/List_of_AMD_CPU_microarchitec‐
509 tures>
510 <http://en.wikipedia.org/wiki/List_of_Intel_microprocessors>
511 <http://en.wikipedia.org/wiki/List_of_AMD_microprocessors>
512 <http://en.wikipedia.org/wiki/Category:X86_microprocessors>
513
515 Todd Allen <cpuid@etallen.com>
516
517
518
51920200211 11 Feb 2020 CPUID(1)