How to check your CPU usage in Linux

CPU inside computer
(Image credit: Future)

It's important that you know how to check your CPU usage in Linux. Keeping an eye on the CPU utilization in your Linux system is vital for several reasons. At its core, monitoring CPU usage helps ensure that your system is running smoothly and efficiently. By regularly checking how much of the CPU's processing power is being utilized, you gain insights into the performance and health of your system. If you have one of the best computers, you really should be making sure it's running optimally.

One primary reason to monitor CPU utilization is to pinpoint performance bottlenecks. A consistently high CPU usage may indicate that your system is under strain, prompting the need for hardware upgrades or software optimizations. This allows you to fine-tune your system for optimal efficiency, identifying resource-intensive processes or applications that might be impacting overall performance.

It’s also an invaluable troubleshooting tool. Unusual spikes or sustained high CPU activity can be early indicators of underlying issues, such as runaway processes, malware, or misconfigurations. Detecting and addressing these problems early on helps maintain system responsiveness and stability. 

In this guide, we’ll be looking at how to get all the data on what your CPU is doing and what processes are running at any given time. Whether you want to use the system monitor on your graphic interface or delve into Linux command lines, you’ll find out what you need to know to get a comprehensive view of your system’s performance.

How to check your CPU utilization in Linux

This article covers CPU utilization, which is different from CPU information.

CPU information provides static details about the CPU, while CPU utilization reflects the dynamic usage of the CPU during the operation of a computer or a specific application. Both aspects are important for understanding and managing a system's performance.

We have a separate guide covering how to view CPU information in Linux.

1. Distro: Check your system monitor

(Image: © Future)

If you're using a Linux distribution, like Ubuntu, you can check your current CPU usage in the System Monitor. This is the equivalent of the Task Manager in Windows.

To open the System Monitor in Ubuntu, click the Show Applications icon on your home screen. This is the grid of nine dots on the bottom left of the screen in the image above.

You can also open the System Monitor with the keyboard shortcut Super + A. Your 'super' key is usually next to the ALT key and will probably have a Windows or Apple Command icon.

The System Monitor has several tabs, including Processes and Resources.

The Processes tab provides detailed information about the processes running on your computer and their resource usage, including CPU usage. The CPU column displays the percentage of CPU resources that each process is currently using. You can also use this page to check each process's ID, user, memory, and more.

The Resources tab shows current CPU, memory, and network usage as line graphs.

2. Use the 'top' command

(Image: © Future)

To find out more information about your CPU usage using Linux commands, you can use the Command Line Interface.

Press Ctrl-Alt-T to open the Command Line Interface and type the command "top".

3. Check generated output

(Image: © Future)

The top command in Linux provides a real-time, dynamic view of system processes. When you run the top command in the terminal, you'll see a screen with information about system performance and running processes. Here's a breakdown of the key information presented by top:

Header Information

The top part of the display shows system-related information, including uptime, number of users, load averages, and overall system resource usage.

Task Area

The main section lists running processes. Key columns include:

  • PID (Process ID): A unique identifier assigned to each process.
  • USER: The user who started the process.
  • %CPU: The percentage of CPU resources the process is currently using.
  • %MEM: The percentage of RAM the process is using.
  • TIME+: The total CPU time the process has consumed.
  • COMMAND: The command or program associated with the process.

Press the Q key to quit the function.

4. Use 'top -i' to hide idle processes

(Image: © Future)

If you want to make the top output easier to read, you can enter the Linux -i flag to hide all processes that are in an idle state. Simply type the command top -i.

5. Sort by columns

(Image: © Future)

When the top process is running, you can order the list based on CPU usage so that the processes using the highest percentage of the CPU are at the top. To do this, enter P on your keyboard

You can also sort the list based on other columns using the following shortcuts:

M - Sort processes by Memory usage

T - Sort processes by run time

N - Sort processes by process ID


Keeping tabs on your CPU utilization in a Linux system is like giving your computer a wellness check. The insights gained from monitoring CPU usage are indispensable for ensuring smooth and efficient system operation. Pinpointing performance bottlenecks, detecting unusual spikes, and troubleshooting issues early on are just a few reasons why this practice is crucial.

Remember, CPU utilization isn't just about static details; it's about understanding the dynamic usage of your CPU during the operation of your computer or specific applications. By using tools like the System Monitor or the 'top' command, you can view real-time information about running processes, CPU usage percentages, memory usage, and more.

Now you know how to find CPU usage, why not take your Linux knowledge up another notch with our range of tutorials. Learn how to add users in Linux, how to find a file in Linux, how to rename a file in Linux, and how to remove a directory in Linux.

Emma Street
Contributor

Emma Street is a freelance content writer who contributes technology and finance articles to a range of websites, including Tom's Guide, Top10.com, and BestMoney. She has over 15 years of experience working in technical development within the fintech industry. When not writing about tech, Emma can be found writing romantic fiction, reviewing films, and updating her tea blog.