• David Ahern's avatar
    perf sched timehist: Add support for filtering on CPU · c30d630d
    David Ahern authored
    Allow user to limit output to one or more CPUs. Really helpful on
    systems with a large number of cpus.
    
    Committer testing:
    
      # perf sched record -a sleep 1
      [ perf record: Woken up 1 times to write data ]
      [ perf record: Captured and wrote 1.765 MB perf.data (1412 samples) ]
      [root@quaco ~]# perf sched timehist | head
      Samples do not have callchains.
                 time    cpu  task name                       wait time  sch delay   run time
                              [tid/pid]                          (msec)     (msec)     (msec)
      --------------- ------  ------------------------------  ---------  ---------  ---------
         66307.802686 [0000]  perf[13086]                         0.000      0.000      0.000
         66307.802700 [0000]  migration/0[12]                     0.000      0.001      0.014
         66307.802766 [0001]  perf[13086]                         0.000      0.000      0.000
         66307.802774 [0001]  migration/1[15]                     0.000      0.001      0.007
         66307.802841 [0002]  perf[13086]                         0.000      0.000      0.000
         66307.802849 [0002]  migration/2[20]                     0.000      0.001      0.008
         66307.802913 [0003]  perf[13086]                         0.000      0.000      0.000
      #
      # perf sched timehist --cpu 2 | head
      Samples do not have callchains.
                 time    cpu  task name                       wait time  sch delay   run time
                              [tid/pid]                          (msec)     (msec)     (msec)
      --------------- ------  ------------------------------  ---------  ---------  ---------
         66307.802841 [0002]  perf[13086]                         0.000      0.000      0.000
         66307.802849 [0002]  migration/2[20]                     0.000      0.001      0.008
         66307.964485 [0002]  <idle>                              0.000      0.000    161.635
         66307.964811 [0002]  CPU 0/KVM[3589/3561]                0.000      0.056      0.325
         66307.965477 [0002]  <idle>                              0.325      0.000      0.666
         66307.965553 [0002]  CPU 0/KVM[3589/3561]                0.666      0.024      0.076
         66307.966456 [0002]  <idle>                              0.076      0.000      0.903
      #
    Signed-off-by: default avatarDavid Ahern <dsahern@gmail.com>
    Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Link: http://lore.kernel.org/lkml/20191204173925.66976-1-dsahern@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    c30d630d
builtin-sched.c 87.9 KB