forked from luck/tmp_suning_uos_patched
perf diff: Add diff.compute config option
The diff.compute config variable is to set the default compute method of perf diff command (-c option). Possible values 'delta' (default), 'delta-abs', 'ratio' and 'wdiff'. 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-4-namhyung@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
d49dd15d69
commit
4b35994abe
@ -505,6 +505,11 @@ diff.*::
|
|||||||
Setting it to 1 will sort the result by delta (or other
|
Setting it to 1 will sort the result by delta (or other
|
||||||
compute method selected).
|
compute method selected).
|
||||||
|
|
||||||
|
diff.compute::
|
||||||
|
This options sets the method for computing the diff result.
|
||||||
|
Possible values are 'delta', 'delta-abs', 'ratio' and
|
||||||
|
'wdiff'. Default is 'delta'.
|
||||||
|
|
||||||
SEE ALSO
|
SEE ALSO
|
||||||
--------
|
--------
|
||||||
linkperf:perf[1]
|
linkperf:perf[1]
|
||||||
|
@ -86,8 +86,9 @@ OPTIONS
|
|||||||
|
|
||||||
-c::
|
-c::
|
||||||
--compute::
|
--compute::
|
||||||
Differential computation selection - delta,ratio,wdiff,delta-abs (default is delta).
|
Differential computation selection - delta, ratio, wdiff, delta-abs
|
||||||
See COMPARISON METHODS section for more info.
|
(default is delta). Default can be changed using diff.compute
|
||||||
|
config option. See COMPARISON METHODS section for more info.
|
||||||
|
|
||||||
-p::
|
-p::
|
||||||
--period::
|
--period::
|
||||||
|
@ -86,7 +86,7 @@ const char *compute_names[COMPUTE_MAX] = {
|
|||||||
[COMPUTE_WEIGHTED_DIFF] = "wdiff",
|
[COMPUTE_WEIGHTED_DIFF] = "wdiff",
|
||||||
};
|
};
|
||||||
|
|
||||||
static int compute;
|
static int compute = COMPUTE_DELTA;
|
||||||
|
|
||||||
static int compute_2_hpp[COMPUTE_MAX] = {
|
static int compute_2_hpp[COMPUTE_MAX] = {
|
||||||
[COMPUTE_DELTA] = PERF_HPP_DIFF__DELTA,
|
[COMPUTE_DELTA] = PERF_HPP_DIFF__DELTA,
|
||||||
@ -1299,6 +1299,20 @@ static int diff__config(const char *var, const char *value,
|
|||||||
sort_compute = perf_config_int(var, value);
|
sort_compute = perf_config_int(var, value);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
if (!strcmp(var, "diff.compute")) {
|
||||||
|
if (!strcmp(value, "delta")) {
|
||||||
|
compute = COMPUTE_DELTA;
|
||||||
|
} else if (!strcmp(value, "delta-abs")) {
|
||||||
|
compute = COMPUTE_DELTA_ABS;
|
||||||
|
} else if (!strcmp(value, "ratio")) {
|
||||||
|
compute = COMPUTE_RATIO;
|
||||||
|
} else if (!strcmp(value, "wdiff")) {
|
||||||
|
compute = COMPUTE_WEIGHTED_DIFF;
|
||||||
|
} else {
|
||||||
|
pr_err("Invalid compute method: %s\n", value);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user