| .TH LSCPU 1 "November 2015" "util-linux" "User Commands" |
| .SH NAME |
| lscpu \- display information about the CPU architecture |
| .SH SYNOPSIS |
| .B lscpu |
| .RB [ \-a | \-b | \-c | \-J "] [" \-x "] [" \-y "] [" \-s " \fIdirectory\fP] [" \-e [=\fIlist\fP]| \-p [=\fIlist\fP]] |
| .br |
| .B lscpu |
| .BR \-h | \-V |
| .SH DESCRIPTION |
| .B lscpu |
| gathers CPU architecture information from sysfs, /proc/cpuinfo and any |
| applicable architecture-specific libraries (e.g.\& librtas on Powerpc). The |
| command output can be optimized for parsing or for easy readability by humans. |
| The information includes, for example, the number of CPUs, threads, cores, |
| sockets, and Non-Uniform Memory Access (NUMA) nodes. There is also information |
| about the CPU caches and cache sharing, family, model, bogoMIPS, byte order, |
| and stepping. |
| .sp |
| In virtualized environments, the CPU architecture information displayed |
| reflects the configuration of the guest operating system which is |
| typically different from the physical (host) system. On architectures that |
| support retrieving physical topology information, |
| .B lscpu |
| also displays the number of physical sockets, chips, cores in the host system. |
| .sp |
| Options that result in an output table have a \fIlist\fP argument. Use this |
| argument to customize the command output. Specify a comma-separated list of |
| column labels to limit the output table to only the specified columns, arranged |
| in the specified order. See \fBCOLUMNS\fP for a list of valid column labels. The |
| column labels are not case sensitive. |
| .sp |
| Not all columns are supported on all architectures. If an unsupported column is |
| specified, \fBlscpu\fP prints the column but does not provide any data for it. |
| |
| .SS COLUMNS |
| Note that topology elements (core, socket, etc.) use a sequential unique ID |
| starting from zero, but CPU logical numbers follow the kernel where there is |
| no guarantee of sequential numbering. |
| .TP |
| .B CPU |
| The logical CPU number of a CPU as used by the Linux kernel. |
| .TP |
| .B CORE |
| The logical core number. A core can contain several CPUs. |
| .TP |
| .B SOCKET |
| The logical socket number. A socket can contain several cores. |
| .TP |
| .B BOOK |
| The logical book number. A book can contain several sockets. |
| .TP |
| .B DRAWER |
| The logical drawer number. A drawer can contain several books. |
| .TP |
| .B NODE |
| The logical NUMA node number. A node can contain several drawers. |
| .TP |
| .B CACHE |
| Information about how caches are shared between CPUs. |
| .TP |
| .B ADDRESS |
| The physical address of a CPU. |
| .TP |
| .B ONLINE |
| Indicator that shows whether the Linux instance currently makes use of the CPU. |
| .TP |
| .B CONFIGURED |
| Indicator that shows if the hypervisor has allocated the CPU to the virtual |
| hardware on which the Linux instance runs. CPUs that are configured can be set |
| online by the Linux instance. |
| This column contains data only if your hardware system and hypervisor support |
| dynamic CPU resource allocation. |
| .TP |
| .B POLARIZATION |
| This column contains data for Linux instances that run on virtual hardware with |
| a hypervisor that can switch the CPU dispatching mode (polarization). The |
| polarization can be: |
| .RS |
| .TP 12 |
| .B horizontal\fP |
| The workload is spread across all available CPUs. |
| .TP 12 |
| .B vertical |
| The workload is concentrated on few CPUs. |
| .P |
| For vertical polarization, the column also shows the degree of concentration, |
| high, medium, or low. This column contains data only if your hardware system |
| and hypervisor support CPU polarization. |
| .RE |
| .TP |
| .B MAXMHZ |
| Maximum megahertz value for the CPU. Useful when \fBlscpu\fP is used as hardware |
| inventory information gathering tool. Notice that the megahertz value is |
| dynamic, and driven by CPU governor depending on current resource need. |
| .TP |
| .B MINMHZ |
| Minimum megahertz value for the CPU. |
| .SH OPTIONS |
| .TP |
| .BR \-a , " \-\-all" |
| Include lines for online and offline CPUs in the output (default for \fB-e\fR). |
| This option may only be specified together with option \fB-e\fR or \fB-p\fR. |
| .TP |
| .BR \-b , " \-\-online" |
| Limit the output to online CPUs (default for \fB-p\fR). |
| This option may only be specified together with option \fB-e\fR or \fB-p\fR. |
| .TP |
| .BR \-c , " \-\-offline" |
| Limit the output to offline CPUs. |
| This option may only be specified together with option \fB-e\fR or \fB-p\fR. |
| .TP |
| .BR \-e , " \-\-extended" [=\fIlist\fP] |
| Display the CPU information in human-readable format. |
| |
| If the \fIlist\fP argument is omitted, all columns for which data is available |
| are included in the command output. |
| |
| When specifying the \fIlist\fP argument, the string of option, equal sign (=), and |
| \fIlist\fP must not contain any blanks or other whitespace. |
| Examples: '\fB-e=cpu,node\fP' or '\fB--extended=cpu,node\fP'. |
| .TP |
| .BR \-h , " \-\-help" |
| Display help text and exit. |
| .TP |
| .BR \-J , " \-\-json" |
| Use JSON output format for the default summary or extended output (see \fB\-\-extended\fP). |
| .BR |
| .TP |
| .BR \-p , " \-\-parse" [=\fIlist\fP] |
| Optimize the command output for easy parsing. |
| |
| If the \fIlist\fP argument is omitted, the command output is compatible with earlier |
| versions of \fBlscpu\fP. In this compatible format, two commas are used to separate |
| CPU cache columns. If no CPU caches are identified the cache column is omitted. |
| .br |
| If the \fIlist\fP argument is used, cache columns are separated with a colon (:). |
| |
| When specifying the \fIlist\fP argument, the string of option, equal sign (=), and |
| \fIlist\fP must not contain any blanks or other whitespace. |
| Examples: '\fB-p=cpu,node\fP' or '\fB--parse=cpu,node\fP'. |
| .TP |
| .BR \-s , " \-\-sysroot " \fIdirectory\fP |
| Gather CPU data for a Linux instance other than the instance from which the |
| \fBlscpu\fP command is issued. The specified \fIdirectory\fP is the system root |
| of the Linux instance to be inspected. |
| .TP |
| .BR \-x , " \-\-hex" |
| Use hexadecimal masks for CPU sets (for example 0x3). The default is to print |
| the sets in list format (for example 0,1). |
| .TP |
| .BR \-y , " \-\-physical" |
| Display physical IDs for all columns with topology elements (core, socket, etc.). |
| Other than logical IDs, which are assigned by \fBlscpu\fP, physical IDs are |
| platform-specific values that are provided by the kernel. Physical IDs are not |
| necessarily unique and they might not be arranged sequentially. |
| If the kernel could not retrieve a physical ID for an element \fBlscpu\fP prints |
| the dash (-) character. |
| |
| The CPU logical numbers are not affected by this option. |
| .TP |
| .BR \-V , " \-\-version" |
| Display version information and exit. |
| .SH BUGS |
| The basic overview of CPU family, model, etc. is always based on the first |
| CPU only. |
| |
| Sometimes in Xen Dom0 the kernel reports wrong data. |
| |
| On virtual hardware the number of cores per socket, etc. can be wrong. |
| .SH AUTHOR |
| .nf |
| Cai Qian <qcai@redhat.com> |
| Karel Zak <kzak@redhat.com> |
| Heiko Carstens <heiko.carstens@de.ibm.com> |
| .fi |
| .SH "SEE ALSO" |
| .BR chcpu (8) |
| .SH AVAILABILITY |
| The lscpu command is part of the util-linux package and is available from |
| https://www.kernel.org/pub/linux/utils/util-linux/. |