Check how many CPUs are there in Linux system

I am a new Linux user. How do you check how many CPUs are there in Linux system using the command line option?

Introduction: One can obtain the number of CPUs or cores in Linux from the command line. The /proc/cpuinfo file stores CPU and system architecture dependent items, for each supported architecture. You can view /proc/cpuinfo with the help of cat command or grep command/egrep command. This page shows how to use /proc/cpuinfo file and lscpu command to display number of processors on Linux.

How do you check how many CPUs are there in Linux system?

You can use one of the following command to find the number of physical CPU cores including all cores on Linux:

  1. lscpu command
  2. cat /proc/cpuinfo
  3. top or htop command
  4. nproc command
  5. hwinfo command
  6. dmidecode -t processor command
  7. getconf _NPROCESSORS_ONLN command

Let us see all commands and examples in details.

How to display information about the CPU on Linux

Just run the lscpu command:
$ lscpu
$ lscpu | egrep 'Model name|Socket|Thread|NUMA|CPU\(s\)'
$ lscpu -p

Check how many CPUs are there in Linux system
The output clearly indicate that I have:

  1. CPU model/make: AMD Ryzen 7 1700 Eight-Core Processor
  2. Socket: Single (1)
  3. CPU Core: 8
  4. Thread per core: 2
  5. Total threads: 16 ( CPU core[8] * Thread per core [2])

Use /proc/cpuinfo to find out how many CPUs are there in Linux

The lscpu command gathers CPU architecture information from sysfs, /proc/cpuinfo and other sources. To view use the cat command and more command as follows:
$ cat /proc/cpuinfo
$ more /proc/cpuinfo
Command To Check Number Of CPU Cores On Linux
Let us print cpu thread count:
$ echo "CPU threads: $(grep -c processor /proc/cpuinfo)"
$ grep 'cpu cores' /proc/cpuinfo | uniq

Run top or htop command to obtain the number of CPUs/cores in Linux

Simply run the following command and hit ‘1’:
$ top
Obtain the number of CPUs cores in Linux from the command line
Another option is to run lovely htop:
$ htop
Show number of cores of a system in Linux with htop

How do I Find Out Linux CPU Utilization?

Execute nproc print the number of CPUs available on Linux

Let us print the number of installed processors on your system i.e core count:
$ nproc --all
$ echo "Threads/core: $(nproc --all)"

Sample outputs:

Threads/core: 16

How to probe for CPU/core on Linux using hwinfo command

$ hwinfo --cpu --short ## short info ##
$ hwinfo --cpu ## detailed info on CPUs ##

Linux see CPU core information with hwinfo

Linux display CPU core with getconf _NPROCESSORS_ONLN command

One can query Linux system configuration variables with getconf command:
$ echo "Number of CPU/cores online at $HOSTNAME: $(getconf _NPROCESSORS_ONLN)"

Sample outputs:

Number of CPU/cores online at 16

dmidecode -t processor command

You can use get BIOS and hardware information with dmidecode command (DMI table decoder) on Linux. To find out how many CPUs are there in Linux system, run:
$ sudo dmidecode -t 4
$ sudo dmidecode -t 4 | egrep -i 'core (count|enabled)|thread count|Version'

Linux dmidecode show CPU thread and core count

Linux Setting processor affinity for a certain task or process

Here is a quick video demo of lscpu and other commands:


You learned how to display information about the CPU architecture, core, threads, CPU version/model, vendor and other information using various Linux command line options.

This entry is 1 of 13 in the Linux CPU/Hardware Info Tutorial series. Keep reading the rest of the series:
  1. Check how many CPUs are there in Linux system
  2. Linux Find If Processor (CPU) is 64 bit / 32 bit [long mode ~ lm]
  3. Linux Find Out CPU Architecture Information
  4. Linux Hotplug a CPU and Disable CPU Cores At Run Time
  5. Linux Command To Find the System Configuration And Hardware Information
  6. How To Read CPUID Instruction For Each CPU on Linux With x86info and cpuid Commands
  7. Linux Display CPU Information Number of CPUs and Their Speed
  8. Linux detect or find out a dual-core cpu
  9. Stress Test CPU and Memory (VM) On a Linux / Unix With Stress-ng
  10. Linux Find Out If CPU Support Intel VT/AMD-V Virtualization For KVM
  11. Linux display each multiple SMP CPU processors utilization individually
  12. Linux Find Number of CPU Cores Command
  13. Linux Read CPU Temperature Sensor Chip Data Including Voltage and Fan Speed With lm-sensors

🐧 Get the latest tutorials on Linux, Open Source & DevOps via RSS feed or Weekly email newsletter.

🐧 1 comment so far... add one

CategoryList of Unix and Linux commands
Disk space analyzersdf ncdu pydf
File Managementcat tree
FirewallAlpine Awall CentOS 8 OpenSUSE RHEL 8 Ubuntu 16.04 Ubuntu 18.04 Ubuntu 20.04
Network UtilitiesNetHogs dig host ip nmap
OpenVPNCentOS 7 CentOS 8 Debian 10 Debian 8/9 Ubuntu 18.04 Ubuntu 20.04
Package Managerapk apt
Processes Managementbg chroot cron disown fg jobs killall kill pidof pstree pwdx time
Searchinggrep whereis which
User Informationgroups id lastcomm last lid/libuser-lid logname members users whoami who w
WireGuard VPNAlpine CentOS 8 Debian 10 Firewall Ubuntu 20.04
1 comment… add one
  • Raymond Nov 10, 2020 @ 13:54

    Nice examples. Suggest removing the $ in the examples so that the student does not copy and paste $

Leave a Reply

Your email address will not be published.

Use HTML <pre>...</pre> for code samples. Still have questions? Post it on our forum