Skip to content

uftrace v0.20

Latest

Choose a tag to compare

@namhyung namhyung released this 30 Aug 01:19

uftrace v0.20

A new version of uftrace is out with a lot of new features and bug fixes.

New features

Now uftrace replay supports 'callsite' trigger action to display source location of the caller of the current function. This can be
useful when there are many calls to the same function in a single function.

$ uftrace -T getpid@callsite  tests/t-abc
# DURATION     TID      FUNCTION
   0.558 us [  19501] | __monstartup();
   0.281 us [  19501] | __cxa_atexit();
            [  19501] | main() {
            [  19501] |   a() {
            [  19501] |     b() {
            [  19501] |       c() {
   0.596 us [  19501] |         getpid(); /* from tests/s-abc.c:23 */
   1.083 us [  19501] |       } /* c */
   1.279 us [  19501] |     } /* b */
   1.403 us [  19501] |   } /* a */
   1.583 us [  19501] | } /* main */

And there are new output fields for uftrace report. They will help to find important information about the execution.

  • total-max-ts: Timestamp of function entry with maximum total time
  • total-min-ts: Timestamp of function entry with minimum total time
  • self-max-ts: Timestamp of function entry with maximum self time
  • self-min-ts: Timestamp of function entry with minimum self time
  • cpu-count: Number of CPUs that function ran on
  • cpu-list: List of CPUs that function ran on
  • cpu-mask: Bitmask of CPUs that function ran on

Also uftrace dump adds --format option to specify output instead of the dedicated options like --chrome or --flame-graph. These options was deprecated and will be removed in later version. So please use uftrace dump --format=chrome instead.

  • available formats: chrome, flame-graph, graphviz, mermaid

In addition, a couple of new scripts were added to generate data in other formats like:

  • new script: dump-perfetto.py, dump-firefox.py

Other notable changes are improved dynamic tracing on RISC-V, Rust v0 demangler support, uftrace info --system option, Fedora minidebug format support and command-aware help message.

What's Changed

New Contributors

Full Changelog: v0.19...v0.20