Em Fri, Oct 02, 2015 at 06:56:24PM +0200, Jiri Olsa escreveu:
> On Fri, Oct 02, 2015 at 05:04:34AM -0400, kan.li...@intel.com wrote:
> > From: Kan Liang <kan.li...@intel.com>
> > 
> 
> SNIP
> 
> > diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
> > index a96fb5c..5ef88f7 100644
> > --- a/tools/perf/builtin-stat.c
> > +++ b/tools/perf/builtin-stat.c
> > @@ -1179,7 +1179,7 @@ int cmd_stat(int argc, const char **argv, const char 
> > *prefix __maybe_unused)
> >     OPT_STRING(0, "post", &post_cmd, "command",
> >                     "command to run after to the measured command"),
> >     OPT_UINTEGER('I', "interval-print", &stat_config.interval,
> > -               "print counts at regular interval in ms (>= 100)"),
> > +               "print counts at regular interval in ms (>= 10)"),
> >     OPT_SET_UINT(0, "per-socket", &stat_config.aggr_mode,
> >                  "aggregate counts per processor socket", AGGR_SOCKET),
> >     OPT_SET_UINT(0, "per-core", &stat_config.aggr_mode,
> > @@ -1332,9 +1332,14 @@ int cmd_stat(int argc, const char **argv, const char 
> > *prefix __maybe_unused)
> >             thread_map__read_comms(evsel_list->threads);
> >  
> >     if (interval && interval < 100) {
> > -           pr_err("print interval must be >= 100ms\n");
> > -           parse_options_usage(stat_usage, options, "I", 1);
> > -           goto out;
> > +           if (interval < 10) {
> > +                   pr_err("print interval must be >= 10ms\n");
> > +                   parse_options_usage(stat_usage, options, "I", 1);
> > +                   goto out;
> > +           } else
> > +                   pr_warning("print interval < 100ms. "
> > +                              "The overhead percentage could be high in 
> > some cases. "
> > +                              "Please proceed with caution.\n");
> 
> with '-I' 10 this warning flies away quite fast ;-)
> 
> I guess it's better than nothing, and I'm not sure
> about putting some sleep after that warning..
> 
> Acked-by: Jiri Olsa <jo...@kernel.org>

Right, this should appear in the man page as well, I added the patch
below, we could also print that warning when the workload ends.

- Arnaldo

diff --git a/tools/perf/Documentation/perf-stat.txt 
b/tools/perf/Documentation/perf-stat.txt
index 7586fe08ac9a..641caf66ff26 100644
--- a/tools/perf/Documentation/perf-stat.txt
+++ b/tools/perf/Documentation/perf-stat.txt
@@ -130,6 +130,8 @@ perf stat --repeat 10 --null --sync --pre 'make -s 
O=defconfig-build/clean' -- m
 --interval-print msecs::
        Print count deltas every N milliseconds (minimum: 10ms)
        example: perf stat -I 1000 -e cycles -a sleep 5
+       The overhead percentage could be high in some cases, for instance
+       with small, sub 100ms intervals.  Use with caution.
 
 --per-socket::
 Aggregate counts per processor socket for system-wide mode measurements.  This
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to