Overview
Syllabus
Intro: Speaker's Credentials
Basics: Naive question
Basics: Getting the units right
Basics: Benchmarks are experiments
Basics: Experimental Control
Basics: Common Wisdom
Basics: The Root Cause
Basics: Evil Optimizations
Basics: Know Thy Optimizations
Basics: JMH API Sneak Peek
Basics: Warmup plateaus
System: Optimization Quiz (A)
System: Power management
System: OS Schedulers
VM: Optimization Quiz (B)
VM: Dead-code elimination
VM: DCE, Avoiding
VM: DCE, Blackholes
VM: Optimization Quiz (C)
VM: Constant folding, etc.
VM: DCE and CSE are brothers
VM: Optimization Quiz (D), #2
VM: Optimization Quiz (E). #3
VM: Profile feedback
VM: Optimization Quiz (F). #2
VM: Run-to-run variance
VM: Inlining budgets
VM: Inlining example
CPU: Cache capacity
CPU: Optimization Quiz (G) Scalability for this code?
CPU: Optimization Quiz (G). #2
CPU: Bulk method transfers
CPU: Optimization Quiz (H)
CPU: Branch Prediction
Conclusion: Benchmarking is serious
Conclusion: Things on list to do
Taught by
Java