perf stat: Add -n/--null option to run without counters
authorIngo Molnar <mingo@elte.hu>
Sat, 27 Jun 2009 04:10:30 +0000 (06:10 +0200)
committerIngo Molnar <mingo@elte.hu>
Sat, 27 Jun 2009 04:11:24 +0000 (06:11 +0200)
Allow a no-counters run. This can be useful to measure just
elapsed wall-clock time - or to assess the raw overhead of perf
stat itself, without running any counters.

Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
tools/perf/builtin-stat.c

index 8420ec589506fc60d4517bed35bf16292912cb34..cdcd058fac08b67ab3591bee3017df8ee2675ee2 100644 (file)
@@ -70,6 +70,7 @@ static int                    run_count                       =  1;
 static int                     inherit                         =  1;
 static int                     scale                           =  1;
 static int                     target_pid                      = -1;
+static int                     null_run                        =  0;
 
 static int                     fd[MAX_NR_CPUS][MAX_COUNTERS];
 
@@ -461,6 +462,8 @@ static const struct option options[] = {
                    "be more verbose (show counter open errors, etc)"),
        OPT_INTEGER('r', "repeat", &run_count,
                    "repeat command and print average + stddev (max: 100)"),
+       OPT_BOOLEAN('n', "null", &null_run,
+                   "null run - dont start any counters"),
        OPT_END()
 };
 
@@ -476,7 +479,7 @@ int cmd_stat(int argc, const char **argv, const char *prefix)
        if (run_count <= 0 || run_count > MAX_RUN)
                usage_with_options(stat_usage, options);
 
-       if (!nr_counters)
+       if (!null_run && !nr_counters)
                nr_counters = 8;
 
        nr_cpus = sysconf(_SC_NPROCESSORS_ONLN);