Tools of the Trade
2026-09-24
I am not a mind-reader – your comments help!
This module: fundamentals of single-thread performance
Concurrency and multi-threaded performance comes later.
Combine HW context, tricks, and principles:
What is your plan for fall break?
Respond at: https://PollEv.com/davidbindel252
or send davidbindel252 to 22333
Real world is complicated:
Most work starts before execution (map stuff into memory).
What about after the start of execution? Dynamic loader
.so: Shared ObjectNeed position-independent code (relative jump offsets)
Chapter 7 in CS:APP3e is pretty good.
RUSTFLAGS="-C opt-level=3 \
-C target-cpu=native \
-C llvm-args=-pass-remarks=loop-vectorize \
-C llvm-args=-pass-remarks-missed=loop-vectorize \
-C llvm-args=-pass-remarks-analysis=loop-vectorize \
-C llvm-args=-pass-remarks=slp-vectorizer \
-C llvm-args=-pass-remarks-missed=slp-vectorizer \
-C llvm-args=-pass-remarks-analysis=slp-vectorizer" \
cargo build --releaseHardware context, some tricks, and some principles:
Next module: Unix abstractions
May start to be more interesting for 5416!
On Ed: I may do a (real) multi-lab project for the first three labs next year. What do you think would be a compelling project?