• yuzhoujian's avatar
    perf stat: Add support to print counts after a period of time · f1f8ad52
    yuzhoujian authored
    Introduce a new option to print counts after N milliseconds and update
    'perf stat' documentation accordingly.
    
    Show below is the output of the new option for perf stat.
    
      $ perf stat --time 2000 -e cycles -a
      Performance counter stats for 'system wide':
    
            157,260,423      cycles
    
            2.003060766 seconds time elapsed
    
    We can print the count deltas after N milliseconds with this new
    introduced option. This option is not supported with "-I" option.
    
    In addition, according to Kangliang's patch(19afd104), the
    monitoring overhead for system-wide core event could be very high if the
    interval-print parameter was below 100ms, and the limitation value is
    10ms.
    
    So the same warning will be displayed when the time is set between 10ms
    to 100ms, and the minimal time is limited to 10ms. Users can make a
    decision according to their spcific cases.
    
    Committer notes:
    
    This actually stops the workload after the specified time, then prints
    the counts.
    
    So I renamed the option to --timeout and updated the documentation to
    state that it will not just print the counts after the specified time,
    but will really stop the 'perf stat' session and print the counts.
    
    The rename from 'time' to 'timeout' also fixes the build in systems
    where 'time' is used by glibc and can't be used as a name of a variable,
    such as centos:5 and centos:6.
    
    Changes since v3:
    - none.
    
    Changes since v2:
    - modify the time check in __run_perf_stat func to keep some consistency
      with the workload case.
    - add the warning when the time is set between 10ms to 100ms.
    - add the pr_err when the time is set below 10ms.
    
    Changes since v1:
    - none.
    Signed-off-by: default avataryuzhoujian <yuzhoujian@didichuxing.com>
    Acked-by: default avatarJiri Olsa <jolsa@kernel.org>
    Cc: Adrian Hunter <adrian.hunter@intel.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: David Ahern <dsahern@gmail.com>
    Cc: Kan Liang <kan.liang@intel.com>
    Cc: Milian Wolff <milian.wolff@kdab.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Wang Nan <wangnan0@huawei.com>
    Link: http://lkml.kernel.org/r/1517217923-8302-3-git-send-email-ufo19890607@gmail.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    f1f8ad52
builtin-stat.c 73.2 KB