pidpersec shows how many new processes were created each second. There can be performance issues caused by many short-lived processes, which may not be visible in sampling tools like top(1). pidpersec provides one way to investigate this behavior.
This works by tracing the tracepoint:sched:sched_process_fork tracepoint.
Since this uses BPF, only the root user can use this tool.
CONFIG_BPF and bpftrace.
- Count new processes, printing per-second summaries until Ctrl-C is hit:
Count of processes (after "@")
This traces kernel forks, and maintains an in-kernel count which is read asynchronously from user-space. As the rate of this is generally expected to be low (<< 1000/s), the overhead is also expected to be negligible.
This is from bpftrace.
Also look in the bpftrace distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool.
This is a bpftrace version of the bcc tool of the same name. The bcc tool may provide more options and customizations.
Unstable - in development.