perf diff: Add diff.order config option
In many cases, I need to look at differences between two data so I often used the -o option to sort the result base on the difference first. It'd be nice to have a config option to set it by default. The diff.order config option is to set the default value of -o/--order option. Signed-off-by: Namhyung Kim <namhyung@kernel.org> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Taeung Song <treeze.taeung@gmail.com> Link: http://lkml.kernel.org/r/20170210073614.24584-3-namhyung@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
a1668c25a8
commit
d49dd15d69
|
@ -498,6 +498,13 @@ record.*::
|
|||
But if this option is 'no-cache', it will not update the build-id cache.
|
||||
'skip' skips post-processing and does not update the cache.
|
||||
|
||||
diff.*::
|
||||
diff.order::
|
||||
This option sets the number of columns to sort the result.
|
||||
The default is 0, which means sorting by baseline.
|
||||
Setting it to 1 will sort the result by delta (or other
|
||||
compute method selected).
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkperf:perf[1]
|
||||
|
|
|
@ -99,7 +99,11 @@ OPTIONS
|
|||
|
||||
-o::
|
||||
--order::
|
||||
Specify compute sorting column number.
|
||||
Specify compute sorting column number. 0 means sorting by baseline
|
||||
overhead (default) and 1 means sorting by computed value of column 1
|
||||
(data from the first file other base baseline). Values more than 1
|
||||
can be used only if enough data files are provided.
|
||||
The default value can be set using the diff.order config option.
|
||||
|
||||
--percentage::
|
||||
Determine how to display the overhead percentage of filtered entries.
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
#include "util/symbol.h"
|
||||
#include "util/util.h"
|
||||
#include "util/data.h"
|
||||
#include "util/config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <math.h>
|
||||
|
@ -1291,6 +1292,17 @@ static int data_init(int argc, const char **argv)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int diff__config(const char *var, const char *value,
|
||||
void *cb __maybe_unused)
|
||||
{
|
||||
if (!strcmp(var, "diff.order")) {
|
||||
sort_compute = perf_config_int(var, value);
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int cmd_diff(int argc, const char **argv, const char *prefix __maybe_unused)
|
||||
{
|
||||
int ret = hists__init();
|
||||
|
@ -1298,6 +1310,8 @@ int cmd_diff(int argc, const char **argv, const char *prefix __maybe_unused)
|
|||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
perf_config(diff__config, NULL);
|
||||
|
||||
argc = parse_options(argc, argv, options, diff_usage, 0);
|
||||
|
||||
if (symbol__init(NULL) < 0)
|
||||
|
|
Loading…
Reference in New Issue