• Namhyung Kim's avatar
    perf record: Add cgroup support for off-cpu profiling · 685439a7
    Namhyung Kim authored
    This covers two different use cases.  The first one is cgroup
    filtering given by -G/--cgroup option which controls the off-cpu
    profiling for tasks in the given cgroups only.
    
    The other use case is cgroup sampling which is enabled by
    --all-cgroups option and it adds PERF_SAMPLE_CGROUP to the sample_type
    to set the cgroup id of the task in the sample data.
    
    Example output.
    
      $ sudo perf record -a --off-cpu --all-cgroups sleep 1
    
      $ sudo perf report --stdio -s comm,cgroup --call-graph=no
      ...
      # Samples: 144  of event 'offcpu-time'
      # Event count (approx.): 48452045427
      #
      # Children      Self  Command          Cgroup
      # ........  ........  ...............  ..........................................
      #
          61.57%     5.60%  Chrome_ChildIOT  /user.slice/user-657345.slice/user@657345.service/app.slice/...
          29.51%     7.38%  Web Content      /user.slice/user-657345.slice/user@657345.service/app.slice/...
          17.48%     1.59%  Chrome_IOThread  /user.slice/user-657345.slice/user@657345.service/app.slice/...
          16.48%     4.12%  pipewire-pulse   /user.slice/user-657345.slice/user@657345.service/session.slice/...
          14.48%     2.07%  perf             /user.slice/user-657345.slice/user@657345.service/app.slice/...
          14.30%     7.15%  CompositorTileW  /user.slice/user-657345.slice/user@657345.service/app.slice/...
          13.33%     6.67%  Timer            /user.slice/user-657345.slice/user@657345.service/app.slice/...
      ...
    Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
    Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    Acked-by: default avatarIan Rogers <irogers@google.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Blake Jones <blakejones@google.com>
    Cc: Hao Luo <haoluo@google.com>
    Cc: Ingo Molnar <mingo@kernel.org>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Milian Wolff <milian.wolff@kdab.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Song Liu <songliubraving@fb.com>
    Cc: bpf@vger.kernel.org
    Link: https://lore.kernel.org/r/20220518224725.742882-6-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    685439a7
builtin-record.c 106 KB