STANNIX Community


Manual: lscpu

LSCPU(1)						User Commands						    LSCPU(1)

NAME
       lscpu - display information about the CPU architecture

SYNOPSIS
       lscpu [options]

DESCRIPTION
       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.

       The default output formatting on terminal is subject to change and maybe optimized for better readability. The output
       for non-terminals (e.g., pipes) is never affected by this optimization and it is always in "Field: data\n" format.
       Use for example "lscpu | less" to see the default output without optimizations.

       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, lscpu also displays the number of physical sockets, chips, cores in the
       host system.

       Options that result in an output table have a list 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 COLUMNS for a list of valid column labels. The column labels are not case sensitive.

       Not all columns are supported on all architectures. If an unsupported column is specified, lscpu prints the column
       but does not provide any data for it.

       The cache sizes are reported as summary from all CPUs. The versions before v2.34 reported per-core sizes, but this
       output was confusing due to complicated CPUs topology and the way how caches are shared between CPUs. For more
       details about caches see --cache. Since version v2.37 lscpu follows cache IDs as provided by Linux kernel and it does
       not always start from zero.

OPTIONS
       -a, --all
	   Include lines for online and offline CPUs in the output (default for -e). This option may only be specified
	   together with option -e or -p.

       -B, --bytes
	   Print the sizes in bytes rather than in a human-readable format.

	   By default, the unit, sizes are expressed in, is byte, and unit prefixes are in power of 2^10 (1024).
	   Abbreviations of symbols are exhibited truncated in order to reach a better readability, by exhibiting alone the
	   first letter of them; examples: "1 KiB" and "1 MiB" are respectively exhibited as "1 K" and "1 M", then omitting
	   on purpose the mention "iB", which is part of these abbreviations.

       -b, --online
	   Limit the output to online CPUs (default for -p). This option may only be specified together with option -e or
	   -p.

       -C, --caches[=list]
	   Display details about CPU caches. For details about available information see --help output.

	   If the list argument is omitted, all columns for which data is available are included in the command output.

	   When specifying the list argument, the string of option, equal sign (=), and list must not contain any blanks or
	   other whitespace. Examples: -C=NAME,ONE-SIZE or --caches=NAME,ONE-SIZE.

	   The default list of columns may be extended if list is specified in the format +list (e.g., lscpu
	   -C=+ALLOC-POLICY).

       -c, --offline
	   Limit the output to offline CPUs. This option may only be specified together with option -e or -p.

       --hierarchic[=when]
	   Use subsections in summary output. For backward compatibility, the default is to use subsections only when output
	   on a terminal and flattened output on a non-terminal. The optional argument when can be never, always or auto. If
	   the when argument is omitted, it defaults to "always".

       -e, --extended[=list]
	   Display the CPU information in human-readable format.

	   If the list argument is omitted, the default columns are included in the command output. The default output is
	   subject to change.

	   When specifying the list argument, the string of option, equal sign (=), and list must not contain any blanks or
	   other whitespace. Examples: '-e=cpu,node' or '--extended=cpu,node'.

	   The default list of columns may be extended if list is specified in the format +list (e.g., lscpu -e=+MHZ).

       -J, --json
	   Use JSON output format for the default summary or extended output (see --extended). For backward compatibility,
	   JSON output follows the default summary behavior for non-terminals (e.g., pipes) where subsections are missing.
	   See also --hierarchic.

       -p, --parse[=list]
	   Optimize the command output for easy parsing.

	   If the list argument is omitted, the command output is compatible with earlier versions of lscpu. In this
	   compatible format, two commas are used to separate CPU cache columns. If no CPU caches are identified the cache
	   column is omitted. If the list argument is used, cache columns are separated with a colon (:).

	   When specifying the list argument, the string of option, equal sign (=), and list must not contain any blanks or
	   other whitespace. Examples: '-p=cpu,node' or '--parse=cpu,node'.

	   The default list of columns may be extended if list is specified in the format +list (e.g., lscpu -p=+MHZ).

       -r, --raw
	   Produce output in its raw format. This option is only applicable for the --extended, --parse, and --caches
	   outputs.

       -s, --sysroot directory
	   Gather CPU data for a Linux instance other than the instance from which the lscpu command is issued. The
	   specified directory is the system root of the Linux instance to be inspected.

       -x, --hex
	   Use hexadecimal masks for CPU sets (for example "ff"). The default is to print the sets in list format (for
	   example 0,1). Note that before version 2.30 the mask has been printed with 0x prefix.

       -y, --physical
	   Display physical IDs for all columns with topology elements (core, socket, etc.). Other than logical IDs, which
	   are assigned by lscpu, 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 lscpu prints the dash (-) character.

	   The CPU logical numbers are not affected by this option.

       --output-all
	   Output all available columns. This option must be combined with either --extended, --parse or --caches.

BUGS
       The basic overview of CPU models is based on heuristics, taking into account differences such as CPU model names and
       implementer IDs. In some (unusual) cases, CPUs may differentiate in flags or BogoMIPS, but these differences are
       ignored in the lscpu overview.

       Sometimes in Xen Dom0 the kernel reports wrong data.

       On virtual hardware the number of cores per socket, etc. can be wrong.

AUTHORS
       Cai Qian , Karel Zak , Heiko Carstens 

SEE ALSO
       chcpu(8)

REPORTING BUGS
       For bug reports, use the issue tracker .

AVAILABILITY
       The lscpu command is part of the util-linux package which can be downloaded from Linux Kernel Archive
       .

util-linux 2.41.3					 2025-12-15						    LSCPU(1)