How to determine the micro-architecture of a system's Intel CPU.
Environment
- Red Hat Enterprise Linux
- Intel CPUs
Issue
- How to determine the micro-architecture of a system's CPU.
Resolution
-
The
cpuid
command provides the micro-architecture.# cpuid -1 | grep \(synth\) (synth) = Intel Core i*-8000U (Whiskey Lake-U V0) [Kaby Lake] {Skylake}, 14nm+/14nm++
-
The command
cpuid
does not come pre-installed in Red Hat Enterprise Linux, it will need to be installed with yum. -
Please note that
cpuid
man page does mention that it may have limitations around new or less common hardware.# man cpuid ... 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 multi‐ ple 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. ...
Root Cause
- With Intel CPUs, micro-architecture is referred to as "Code Name" within the Intel Ark.
Diagnostic Steps
-
The
cpuid
command provides the micro-architecture. -
As an example, it's possible to determine the CPU by reading the file
/proc/cpuinfo
.$ cat /proc/cpuinfo | head | grep "model name" model name : Intel(R) Core(TM) i7-8665U CPU @ 1.90GHz
-
The CPU
i7-8665U
has the micro-architecture "Whiskey Lake".$ cpuid -1 | grep \(synth\) (synth) = Intel Core i*-8000U (Whiskey Lake-U V0) [Kaby Lake] {Skylake}, 14nm+/14nm++
-
And we can confirm this by referencing the Intel Ark page for this particular CPU.
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments