Linux Systems Performance - Architecture
summary
Condensed systems practice that names actual wins: six areas (observability, methodology, benchmarking, profiling, tracing, tuning) with recipes using vmstat mpstat iostat, perf_events and flame graphs to find where CPU time actually goes. Concrete surprises: raising CPU from 1600→2800 MHz barely helps because of a memory bus bottleneck. Uses strace/tcpdump/BPF/BCC for low‑overhead traces, samples at 99 Hz for profiles, warns that almost 100% of benchmarks are wrong, and recommends checklisted tunables like swappiness=0 and cautious hugepages.
AI-written summary · about
chapters (24)
- 0:00Intro
- 0:13Systems Performance in 50 mins
- 0:40Agenda A brief discussion of 6 facets of Linux performance
- 1:43Linux Observability Tools
- 4:51uptime
- 8:44iostat
- 12:14strace
- 15:08netstat
- 16:55Where do you start?...and stop?
- 17:12Anti-Methodologies
- 18:33Linux Perf Analysis in 60s
- 21:45The USE Method
- 24:36USE Method for Hardware
- 26:26CPU Profile Method
- 26:57Resource Analysis Typical approach for system performance analysis: begin with system tools & metrics
- 27:53Benchmarking
- 32:20Benchmark Examples
- 36:31as a Flame Graph
- 37:291st Flame Graph: MySQL
- 38:05perf_events: Workflow
- 38:585. Tracing
- 39:14Tracing Stack
- 44:07Ubuntu Trusty Tuning: Early 2016 (1/2)
- 46:17Takeaways
related talks
41mLinux Systems Performance
55mPerformance tuning of Red Hat Enterprise Linux
47mPractical Performance Analysis
39mLinux Server Deep Dives
45mPerformance lab. The power of the perf tool!
44mObservability Tools C++: Beyond GDB and printf - Tools to Understand the Behavior of Your Program
35mOpening the Box: Diagnosing Operating-System Task-Scheduler...
44mThink Outside the VM: Unobtrusive Performance Measurement
