COZ(1)

πŸ“¦
version 0.2.2 Β· 4 versions
, in debian bookworm, ubuntu jammy

πŸ’… COZ(1) β€” like, the coz manual but make it make sense

okay bestie, gather round 🫢 this is the manual page for coz, from the User Commands corner of the manual-verse. It's a profiler that runs experiments on multithreaded code. Yes. That's the whole vibe. Let's go ✨


✨ NAME ✨

coz β€” a profiler that runs experiments on multithreaded code πŸ’–


🌈 SYNOPSIS 🌈

coz run [profiling options] --- <command> [args]

coz plot [-h]

yes the triple dash is real, it's not a typo, it's a whole separator, respect it πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

So here's the tea, and it's hot: Coz is a new kind of profiler, one that unlocks optimization opportunities that traditional profilers literally just… miss. πŸ™ˆ Not their fault, they just weren't built for this.

Coz uses a technique called causal profiling, and it measures something called optimization potential. And the way that this measurement matches what developers already assumed profilers did? Iconic. Because the assumption has always been: optimizing the highly-ranked code is gonna give you the biggest performance glow-up. πŸ”₯

Causal profiling measures optimization potential for serial, parallel, and asynchronous programs, and it does it without instrumenting special handling for library calls and concurrency primitives. No cap. Instead, a causal profiler runs performance experiments to predict the effect of optimizations. Which means it can actually establish causality: "optimizing function X will have effect Y" β€” exactly the measurement developers thought they were getting all along. πŸŽ€ periodt.


πŸ’– OPTIONS πŸ’–

  • -h, --help β€” show this help message and exit. the classic. the goat. 🐐
  • --binary-scope <filepattern>, -b <filepattern> β€” profile matching executables. Use '%' as a wildcard, or 'MAIN' to include the main executable (default=MAIN). 🎯
  • --source-scope <filepattern>, -s <filepattern> β€” profile matching source files. Use '%' as a wildcard. (default=%) πŸ“‚
  • --progress <source file>:<line number>, -p <source file>:<line number> β€” [NOT SUPPORTED] add a sampling-based progress point. yeah bestie it's not supported, don't come for me, I'm just the messenger 😭
  • --output <profileoutput>, -o <profileoutput> β€” profiler output (default=profile.coz) πŸ’Ύ
  • --end-to-end β€” run a single performance experiment per-execution πŸƒβ™€οΈ
  • --fixed-line <source file>:<line number> β€” evaluate optimizations of a specific source line πŸ“
  • --fixed-speedup <speedup> (0-100) β€” evaluate optimizations of a specific amount. note the range, it's 0-100, don't get creative ⚑

🫢 SEE ALSO 🫢


πŸ‘‘ AUTHOR πŸ‘‘

Petter Reinholdtsen β€” pere@hungry.com πŸ“


public domain β€” she's free, she's generous, she belongs to the people πŸ’œ


okay that's the whole page!! version 0.1, dated 2016-08-15, and yes this manual is lowkey a time capsule but she still ate πŸ’…βœ¨ go profile something bestie, ily, bye!! 🌸

πŸ“¦ where this page comes from