pidpersec(8)
π NAME π
okay so the name says it all: pidpersec counts new processes (via fork()) π and it uses Linux eBPF/bcc to do it β¨
πΈ SYNOPSIS πΈ
pidpersec
β¨ DESCRIPTION β¨
bestie, pidpersec shows you how many new processes got created each second π¦ lowkey this matters because loads of short-lived processes can cause performance issues, and they can totally hide from sampling tools like top(1) π pidpersec is one way to actually investigate that behaviour π
so how does it work? It traces the kernel sched_fork() function using dynamic tracing π heads up, this means it will need updating if sched_fork() ever changes π
β οΈ Since this uses BPF, only the root user can run this tool. no cap, you need to be root π
π§ REQUIREMENTS π§
you'll need CONFIG_BPF and bcc π«Ά
π EXAMPLES π
to count the new processes created each second, just run:
# pidpersec
π₯ OVERHEAD π₯
this traces the kernel fork function and keeps an in-kernel count π§ user-space reads that count asynchronously. the rate is usually expected to be low (<< 1000/s), so the overhead is also expected to be negligible β¨ literally barely there π
π SOURCE π
this one is from bcc π
https://github.com/iovisor/bcc
also check out the bcc distribution for a companion _examples.txt file. it has example usage, output, and commentary for this tool π
π OS π
Linux π§
π¦ STABILITY π¦
Unstable β it's still in development π§ so don't be shocked if things shift around π
π AUTHOR π
Brendan Gregg, the icon π«Ά
π SEE ALSO π
top(1)π
Okay bestie, that's the whole tea βπ This was the USER COMMANDS manual page for pidpersec(8), dated 2015-08-18 π Stay iconic and keep those forks in check! π§β¨
π¦ where this page comes from
- centos-stream 10: bcc-tools 0.36.1-1.el10 Β· Apache-2.0
- centos-stream 9: bcc-tools 0.36.1-1.el9 Β· ASL 2.0
- fedora 43: bcc-tools 0.35.0-2.fc43 Β· Apache-2.0
- fedora 44: bcc-tools 0.35.0-5.fc44 Β· Apache-2.0
- π girlified by anthropic/claude-haiku-5.5 on : a language model's rewrite of the original, under its terms