2017-10-20 18:44:29 +01:00
|
|
|
# perf
|
|
|
|
|
2021-08-15 18:59:09 +01:00
|
|
|
> Framework for Linux performance counter measurements.
|
2021-10-26 12:19:43 +01:00
|
|
|
> More information: <https://perf.wiki.kernel.org>.
|
2017-10-20 18:44:29 +01:00
|
|
|
|
2017-10-21 14:05:17 +01:00
|
|
|
- Display basic performance counter stats for a command:
|
2017-10-20 18:44:29 +01:00
|
|
|
|
2017-10-21 14:05:17 +01:00
|
|
|
`perf stat {{gcc hello.c}}`
|
2017-10-20 18:44:29 +01:00
|
|
|
|
2021-08-15 18:59:09 +01:00
|
|
|
- Display system-wide real-time performance counter profile:
|
2017-10-20 18:44:29 +01:00
|
|
|
|
|
|
|
`sudo perf top`
|
|
|
|
|
2021-01-31 17:05:18 +00:00
|
|
|
- Run a command and record its profile into `perf.data`:
|
2017-10-20 18:44:29 +01:00
|
|
|
|
|
|
|
`sudo perf record {{command}}`
|
|
|
|
|
2021-10-26 12:19:43 +01:00
|
|
|
- Record the profile of an existing process into `perf.data`:
|
|
|
|
|
|
|
|
`sudo perf record -p {{pid}}`
|
|
|
|
|
2021-01-31 17:05:18 +00:00
|
|
|
- Read `perf.data` (created by `perf record`) and display the profile:
|
2017-10-20 18:44:29 +01:00
|
|
|
|
|
|
|
`sudo perf report`
|