perf-kmem - Man Page

Tool to trace/measure kernel memory properties

Synopsis

perf kmem [<options>] {record|stat}

Description

There are two variants of perf kmem:

'perf kmem [<options>] record [<perf-record-options>] <command>' to
record the kmem events of an arbitrary workload​. Additional 'perf
record' options may be specified after record, such as '-o' to
change the output file name​.
'perf kmem [<options>] stat' to report kernel memory statistics​.

Options

-i <file>, --input=<file>

For stat, select the input file (default: perf​.data unless stdin is a fifo)

-f,  --force

Don’t do ownership validation

-v,  --verbose

Be more verbose​. (show symbol address, etc)

--caller

Show per-callsite statistics

--alloc

Show per-allocation statistics

-s <key[,key2​...]>, --sort=<key[,key2​...]>

Sort the output (default: frag,hit,bytes for slab and bytes,hit for page)​. Available sort keys are ptr, callsite, bytes, hit, pingpong, frag for slab and page, callsite, bytes, hit, order, migtype, gfp for page​. This option should be preceded by one of the mode selection options - i​.e​. --slab, --page, --alloc and/or --caller​.

-l <num>, --line=<num>

Print n lines only

--raw-ip

Print raw ip instead of symbol

--slab

Analyze SLAB allocator events​.

--page

Analyze page allocator events

--live

Show live page stat​. The perf kmem shows total allocation stat by default, but this option shows live (currently allocated) pages instead​. (This option works with --page option only)

--time=<start>,<stop>

Only analyze samples within given time window: <start>,<stop>​. Times have the format seconds​.microseconds​. If start is not given (i​.e​., time string is ,x​.y) then analysis starts at the beginning of the file​. If stop time is not given (i​.e, time string is x​.y,) then analysis goes to end of file​.

See Also

perf-record(1)

Referenced By

perf(1).

09/07/2026 perf Manual