Skip to main content

System performance cheatsheet

A one-page reference for system performance analysis. For the full worked "server is slow" diagnosis, see the complete guide.

๐Ÿ“– Full guide: System Performance โ†’ Intermediate
Learn this in 5 minutes5 min
  1. Begin with the The USE method card
  2. Then the The RED method and CPU cards
  3. Treat the other 4 cards as lookups โ€” scan by card title when you need one
  4. Open the full guide when a card isn't enough

The USE methodโ€‹

For every resource (CPU, memory, disk, network), ask:

  • Utilization โ€” % time busy
  • Saturation โ€” extra work queued, waiting
  • Errors โ€” error events (retries, CRC errors, retransmits)

High utilization without saturation is fine. Saturation is the real bottleneck signal.

The RED methodโ€‹

For every service: Rate, Errors, Duration (p50/p95/p99, never just the mean). RED tells you what users feel; USE tells you why.

CPUโ€‹

mpstat 1        # per-CPU utilization
vmstat 1 # run queue (r), CPU, memory summary
top / htop

Memoryโ€‹

free -h
vmstat 1 # si/so = swap in/out โ€” nonzero is a red flag

Disk I/Oโ€‹

iostat -x 1     # %util, avgqu-sz (queue depth), await (latency)

High await with low %util = the disk itself is slow, not overloaded.

Networkโ€‹

ss -s           # socket summary
sar -n DEV 1 # interface throughput

Diagnostic orderโ€‹

  1. uptime โ€” load average, quick gut check.
  2. vmstat 1 โ€” CPU/memory/run-queue in one view.
  3. mpstat -P ALL 1 โ€” per-CPU, catches single-core saturation.
  4. iostat -x 1 โ€” disk.
  5. Drill into the specific resource USE flagged.
See: Worked Example โ€” Diagnosing "The Server Is Slow"