top is the command that show system activity dashboard.
top
Load Average
2. This part is similar to 26 - CPU Load
3. Press the key 1 see how many CPU cores you have.
4. Look for the line labelled %Cpu[CPU Core Index]
Number of CPU core = Maximum CPU core index + 1
Exp: %Cpu1 Number of CPU core = 2
5. Check CPU load
The terminal will show load average: [Load over last 1 minutes], [Load over last 5 minutes], [Load over last 15 minutes]
6. Normal condition: Total CPU units >= Load average
For example, Total CPU units = 2
Load average= 0.45 < 2 Processes are executing without waiting in a queue.
Load average= 2 It is doing maximum work without bottlenecking but has no room for extra tasks.
Load average= 2.2 Processes are backing up and waiting in a queue for their turn to use the CPU, which causes system slowdowns.
CPU Percentages
7. Look for the line labelled %Cpu[CPU Core Index]
us (user): Time spent running normal user applications (e.g., databases, web servers). High is usually fine—it means your apps are working.
sy (system): Time spent running the Linux kernel itself. High sy (above 20-30%) indicates an issue, like a malfunctioning driver or excessive input/output operations.
id (idle): The percentage of time the CPU is doing nothing. Higher means more breathing room.
wa (iowait): Time the CPU is sitting idle waiting for the hard drive or network to respond. If wa is high (above 5%), your storage drive is bottlenecking your entire system.
Memory Usage
8. Look for the line labelled MiB Mem --> free (available memory).
If this drops close to zero, your system will start using the MiB Swap space (simulated memory on the hard drive), which will severely degrade performance.
So try to avoid using MiB Swap space
Quit
Press q to quit
Result
top - 11:20:40 up 2:23, 1 user, load average: 0.44, 0.22, 0.09
Tasks: 225 total, 2 running, 223 sleeping, 0 stopped, 0 zombie
%Cpu0 : 7.9 us, 8.8 sy, 0.0 ni, 80.4 id, 0.0 wa, 0.0 hi, 2.9 si, 0.0 st
%Cpu1 : 4.0 us, 10.1 sy, 0.0 ni, 81.0 id, 0.0 wa, 0.0 hi, 4.9 si, 0.0 st
MiB Mem : 3653.2 total, 1604.2 free, 1462.3 used, 818.5 buff/cache
MiB Swap: 2560.0 total, 2560.0 free, 0.0 used. 2190.9 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3835 student 20 0 1891080 342868 102832 R 28.1 9.2 2:27.16 ptyxis
3106 student 20 0 4156804 365028 126828 S 25.4 9.8 1:31.74 gnome-shell
4074 root 20 0 0 0 0 I 2.0 0.0 0:01.75 kworker/u10:4-events_unbound
4466 root 20 0 0 0 0 I 2.0 0.0 0:00.63 kworker/u9:0-events_unbound
4317 student 20 0 231624 5588 3412 R 1.0 0.1 0:11.16 top
15 root 20 0 0 0 0 S 0.3 0.0 0:03.79 ksoftirqd/0
16 root 20 0 0 0 0 I 0.3 0.0 0:05.58 rcu_preempt
238 root 0 -20 0 0 0 I 0.3 0.0 0:00.33 kworker/1:1H-xfs-log/dm-0
760 root 20 0 0 0 0 S 0.3 0.0 0:01.20 xfsaild/dm-0
3842 student 20 0 377784 7044 6184 S 0.3 0.2 0:04.34 ptyxis-agent
4518 root 20 0 0 0 0 I 0.3 0.0 0:00.05 kworker/0:1-mm_percpu_wq
1 root 20 0 44616 36472 10516 S 0.0 1.0 0:05.55 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.09 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pool_workqueue_release
4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/R-rcu_gp
5 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/R-sync_wq
6 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/R-kvfree_rcu_reclaim
7 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/R-slub_flushwq
8 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/R-netns
12 root 20 0 0 0 0 I 0.0 0.0 0:00.00 kworker/u8:0-events_unbound
13 root 20 0 0 0 0 I 0.0 0.0 0:00.02 kworker/u8:1-ipv6_addrconf
14 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/R-mm_percpu_wq
17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_exp_par_gp_kthread_worker/0
18 root 20 0 0 0 0 S 0.0 0.0 0:00.11 rcu_exp_gp_kthread_worker
19 root rt 0 0 0 0 S 0.0 0.0 0:00.39 migration/0
20 root -51 0 0 0 0 S 0.0 0.0 0:00.00 idle_inject/0
21 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/0
22 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/1
23 root -51 0 0 0 0 S 0.0 0.0 0:00.00 idle_inject/1