Find out the total CPU units available on your system.
Look for the line labelled CPU(s):
If CPU(s): 2, your system can handle 2 fully active processes at any given instant.
lscpu or lscpu | grep "CPU(s):"
Check CPU load
The terminal will show load average: [Load over last 1 minutes], [Load over last 5 minutes], [Load over last 15 minutes]
uptime
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.
Testing to increase CPU load
dd if=/dev/zero of=/dev/null &
Check CPU load
Notice the CPU load will increase, run command 2 times to see if rising
uptime
uptime
Terminate testing
killall dd
Result
student@localhost:~$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 39 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Vendor ID: GenuineIntel
Model name: Intel(R) Core(TM) i5-7300U CPU @ 2.60GHz
CPU family: 6
Model: 142
Thread(s) per core: 1
Core(s) per socket: 2
Socket(s): 1
Stepping: 9
BogoMIPS: 5423.99
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm consta
nt_tsc rep_good nopl xtopology nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 movbe popcnt aes
xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch pti fsgsbase bmi1 avx2 bmi2 invpcid rdseed adx clflushopt arat md_cl
ear flush_l1d arch_capabilities
Virtualization features:
Hypervisor vendor: KVM
Virtualization type: full
Caches (sum of all):
L1d: 64 KiB (2 instances)
L1i: 64 KiB (2 instances)
L2: 512 KiB (2 instances)
L3: 6 MiB (2 instances)
NUMA:
NUMA node(s): 1
NUMA node0 CPU(s): 0,1
Vulnerabilities:
Gather data sampling: Unknown: Dependent on hypervisor status
Indirect target selection: Mitigation; Aligned branch/return thunks
Itlb multihit: KVM: Mitigation: VMX unsupported
L1tf: Mitigation; PTE Inversion
Mds: Mitigation; Clear CPU buffers; SMT Host state unknown
Meltdown: Mitigation; PTI
Mmio stale data: Mitigation; Clear CPU buffers; SMT Host state unknown
Old microcode: Not affected
Reg file data sampling: Not affected
Retbleed: Vulnerable
Spec rstack overflow: Not affected
Spec store bypass: Vulnerable
Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Spectre v2: Mitigation; Retpolines; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Retpoline
Srbds: Unknown: Dependent on hypervisor status
Tsa: Not affected
Tsx async abort: Not affected
Vmscape: Not affected
student@localhost:~$ uptime
11:40:59 up 1:39, 1 user, load average: 0.23, 0.60, 0.30
student@localhost:~$ dd if=/dev/zero of=/dev/null &
[1] 4706
student@localhost:~$ uptime
11:41:17 up 1:39, 1 user, load average: 0.18, 0.57, 0.29
student@localhost:~$ uptime
11:41:27 up 1:39, 1 user, load average: 0.87, 0.70, 0.34
student@localhost:~$ killall dd
[1]+ Terminated dd if=/dev/zero of=/dev/null