LTTNG-SCHEDSTATS(1)

πŸ“¦ version 0.6.1, in debian bookworm, ubuntu jammy

πŸ’… NAME πŸ’…

lttng-schedstats β€” bestie, it's the LTTng tool that analyses Scheduler statistics. That's it. That's the whole job. And it eats. πŸ‘‘

Oh also? This is the page from the User Commands manual, section 1. Now you know. 🫢


✨ DESCRIPTION ✨

okay so first things first, here's how you actually call this thing. look at her go:

usage: lttng-schedstats [-h] [-r REFRESH] [--gmt] [--skip-validation]
       [--begin BEGIN] [--end END] [--period PERIOD]
       [--period-captures PERIOD_CAPTURES] [--period-begin PERIOD_BEGIN]
       [--period-end PERIOD_END] [--period-begin-key PERIOD_BEGIN_KEY]
       [--period-end-key PERIOD_END_KEY] [--period-key-value
       PERIOD_KEY_VALUE] [--cpu CPU] [--timerange TIMERANGE]
       [--progress-use-size] [--no-intersection] [-V] [--debug]
       [--no-color] [--no-progress] [--min MIN] [--max MAX] [--procname
       PROCNAME] [--tid TID] [--freq] [--freq-resolution
       FREQ_RESOLUTION] [--freq-uniform] [--freq-series] [--limit LIMIT]
       [--top] [--log] [--stats] [--total] [--per-tid] [--per-prio]
       <path/to/trace>

and the short version of what it does? The sched command. πŸ’€ iconic, truly.


πŸŽ€ POSITIONAL ARGUMENTS πŸŽ€

  • <path/to/trace> β€” the trace path, babes. point her at your trace and let her cook. πŸ“

πŸ¦‹ OPTIONAL ARGUMENTS πŸ¦‹

  • -h, --help β€” show this help message and exit. the classic. when in doubt, ask for help bestie, no shame. πŸ™ˆ
  • -r REFRESH, --refresh REFRESH β€” refresh period, and you can tack on an optional units suffix (default units: s). so like, seconds unless you say otherwise. ⏱️
  • --gmt β€” manipulate timestamps based on GMT instead of local time. timezone queen behavior. 🌍
  • --skip-validation β€” skip the trace validation. living dangerously, love that for you. ⚠️
  • --begin BEGIN β€” start time, formatted like hh:mm:ss[.nnnnnnnnn]. πŸ•
  • --end END β€” end time, same deal: hh:mm:ss[.nnnnnnnnn]. πŸ•
  • --period PERIOD β€” period definition. πŸ“…
  • --period-captures PERIOD_CAPTURES β€” period captures definition. πŸ“…
  • --period-begin PERIOD_BEGIN β€” the analysis period start marker event name. 🚩
  • --period-end PERIOD_END β€” the analysis period end marker event name β€” and heads up, this one requires --period-begin. they're a package deal fr fr. 🚩
  • --period-begin-key PERIOD_BEGIN_KEY β€” optional, a list of event field names used to match period markers (default: cpu_id). πŸ”‘
  • --period-end-key PERIOD_END_KEY β€” optional, a list of event field names used to match period marker. if none is specified, it uses the same --period-begin-key. πŸ”‘
  • --period-key-value PERIOD_KEY_VALUE β€” optional, define a fixed key value that a period must correspond to in order to be considered. 🎯
  • --cpu CPU β€” filter the results only for this list of CPU IDs. πŸ–₯️
  • --timerange TIMERANGE β€” time range, written as [begin,end]. βŒ›
  • --progress-use-size β€” use trace size to approximate progress. πŸ“
  • --no-intersection β€” disable stream intersection mode. 🚫
  • -V, --version β€” show program's version number and exit. πŸ‘‹
  • --debug β€” enable debug mode (or set the LTTNG_ANALYSES_DEBUG environment variable, whichever vibe you prefer). πŸ›
  • --no-color β€” disable colored output. (sad, honestly, but valid.) 🎨
  • --no-progress β€” don't display the progress bar. 🚫
  • --min MIN β€” filter out durations shorter than min usec. πŸ“‰
  • --max MAX β€” filter out durations longer than max usec. πŸ“ˆ
  • --procname PROCNAME β€” filter the results only for this list of process names. 🏷️
  • --tid TID β€” filter the results only for this list of TIDs. πŸ†”
  • --freq β€” output the frequency distribution of sched switch latencies. πŸ“Š
  • --freq-resolution FREQ_RESOLUTION β€” frequency distribution resolution (default 20). πŸ”
  • --freq-uniform β€” use a uniform resolution across distributions. πŸ“
  • --freq-series β€” consolidate the frequency distribution histogram as a single one. 🧬
  • --limit LIMIT β€” limit to top X (default = 10). βœ‚οΈ
  • --top β€” output the top sched switch latencies. πŸ†
  • --log β€” output the sched switches in chronological order. πŸ“œ
  • --stats β€” output sched switch statistics. πŸ“ˆ
  • --total β€” group all results (applies to stats and freq). 🧺
  • --per-tid β€” group results per-TID (applies to stats and freq) β€” and yes, this is the default. πŸ‘‘
  • --per-prio β€” group results per-prio (applies to stats and freq). 🎚️
bestie reminder: --period-end will not work without --period-begin, and --period-end-key falls back to --period-begin-key if you don't give it one. read the fine print, it's giving considerate. πŸ’–

and that's the whole page, you ate that. now go stare at some sched switches and slay. 🧚✨

LTTng Analyses v0.6.0 β€” dating all the way back to January 2017, and still the moment. mwah. πŸ’‹ πŸŽ€

πŸ“¦ where this page comes from