NDL-FILTER(1)

πŸ“¦ version 1.12.48, in fedora 43, fedora 44

πŸŽ€ NDL-FILTER, bestie πŸŽ€

okay so we're doing the ndl filter command today and honestly? it's giving ✨ data glow-up ✨. this is the NDL manual, and i'm gonna walk you through it like we're texting at 2am. no cap, every single flag is staying in here. πŸ’–


🌸 COMMAND ndl filter 🌸

usage: ndl filter [-h] [-q] [-d]
[--exclude EXCLUDE] [--include INCLUDE]
[--exclude-metrics MEXCLUDE]
[--include-metrics MINCLUDE]
[--human-readable] [-o OUTDIR]
[--list-metrics] [--reportid REPORTID]

       respath

so basically, filter datapoints out of a test result β€” you're yeeting CSV rows and whole metrics based on whatever criteria you feel like. πŸ—‘οΈβœ¨ the criteria comes from the row and metric filter and selector options (--include, --exclude-metrics, etc.). and bestie, you can pass those options multiple times. go off. πŸ’…

respath

the ndl test result path you wanna filter. that's it, that's the vibe. πŸ¦‹


✨ OPTIONS ndl filter ✨

  • -h β€” show this help message and dip. bye! πŸ‘‹
  • -q β€” be quiet. shhh. 🀫
  • -d β€” print debugging information. the tea β˜•, the receipts, all of it.
  • --exclude EXCLUDE β€” datapoints to exclude: nuke every datapoint that satisfies the expression EXCLUDE. here's an example expression, look at her:
(WakeLatency < 10000) | (PC6% < 1)

this filter expression will remove all datapoints with WakeLatency smaller than 10000 nanoseconds or package C6 residency smaller than 1%. iconic behaviour. 😌 the detailed expression syntax lives in the documentation for the eval() function of Python's pandas module β€” go read that, iykyk. you can use metrics in the expression, or the special word index for the row number (0-based index) of a datapoint in the results. for example, the expression index >= 10 will get rid of all datapoints except for the first 10 ones. so index is lowkey the main character here. πŸ‘‘

  • --include INCLUDE β€” datapoints to include: remove all datapoints except the ones satisfying the expression INCLUDE. in other words? this option is literally the inverse of --exclude. which means --include expr is the same as --exclude "not (expr)". math ate that fr fr. πŸ”₯
  • --exclude-metrics MEXCLUDE β€” the metrics to exclude. expects a comma-separated list of the metrics, or python style regular expressions matching the names. for example, the expression SilentTime,WarmupDelay,.*Cyc would remove metrics SilentTime, WarmupDelay and all metrics with Cyc in their name. sneaky little regex, we love her. 🧚 use --list-metrics to get the list of the available metrics.
  • --include-metrics MINCLUDE β€” the metrics to include: remove all metrics except for the ones specified by this option. the syntax is the same as for --exclude-metrics. twinning! πŸ’œ
  • --human-readable β€” by default the result filter command prints the result as a CSV file to the standard output. this option can be used to dump the result in a more human-readable form. so when raw CSV is giving robot, this is giving person. 🌈
  • -o OUTDIR, --outdir OUTDIR β€” by default the resulting CSV lines are printed to the standard output. but this option can be used to specify the output directly to store the result at. this will create a filtered version of the input test result. a whole new you, but make it data. πŸ¦‹βœ¨
  • --list-metrics β€” print the list of the available metrics and exit. window shopping for metrics, obsessed. πŸ›οΈ
  • --reportid REPORTID β€” report ID of the filtered version of the result (can only be used with --outdir). so don't try to be cute and use it alone, bestie β€” it needs its --outdir partner. πŸ™ˆ

🫢 friendly reminder: options may be specified multiple times, and --reportid is strictly a --outdir-only situation. stack responsibly. πŸ’…

NDL() β€” dated 2024-03-08 β€” that's the source, the version, the whole timestamp moment. mwah. πŸ’‹ periodt. 🌸

πŸ“¦ where this page comes from