ku_latency: use candlesticks plots

The default plot type is not really useful for this benchmark.

Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Mel Gorman <mgorman@suse.de>
R support: preparation for R-based textual comparison

Add compare-mmtests-R.sh that will be used instead of compare-mmtests.pl.
Add lib/R/stats.R where R utility functions for statistics reside.

Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Mel Gorman <mgorman@suse.de>
R support: enable textual results comparison using R

Add --R parameter to compare-kernels.sh which will attempt to use
compare-mmtests-R.sh (with fallback to compare-mmtests.pl).
Currently, support is limited to the WalltimeOutliers datatype (used in
ku_latency benchmark).

Add --R-summary to compare-mmtests.pl and associated extractSummaryR()
method to Extract.pm, for printing the table of results processed by R.

Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Mel Gorman <mgorman@suse.de>
R support: preparation for R-based graphs

Add bin/plot-R to be used instead of bin/plot
Add lib/R/plot.R for library functions for plotting.
Currently supported plots are boxplot and run-sequence plots.

Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Mel Gorman <mgorman@suse.de>
R support: enable R-based graphs

In compare-kernels.sh, reuse the --R parameter (introduced for comparisons)
also for plots. Also manage R_TMPDIR on the top level to allow reusing of
preprocessed results in multiple plots.

In graph-mmtests.sh, introduce --R parameter and also process -b parameter
so that it can be passed to R plotting. Also introduce --plottype parameter
to allow overriding extracted plottype.

The --R parameter is used to defer plotting to plot-R, with a fallback to the
classical plot script, for plot types not yet implemented in R. Currently
supported in R are boxplot and run-sequence plots.

Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Introduce detailed benchmark plots (R-only)

Introduce --plot-details parameter to compare-kernel.sh intended for producing
extra detailed plots for exploratory data analysis, in addition to summary
plots just as boxplots. This is useful to explain variability in some
benchmarks such as ku-latency.

The implementation is limited to being used together with --R parameter and
produces additional run-sequence plots of raw results for each kernel
separately (internally handled by --separate-tests parameter).

Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Mel Gorman <mgorman@suse.de>
MonitorFtracereclaimcompact: distinguish direct and kswapd compacting time

Prior to this patch, all compacting time is reported as direct compacting
and kswapd time is always 0. This patch distinguishes the kswapd PIDs.

Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Mel Gorman <mgorman@suse.de>
MonitorFtracereclaimcompact: deal with module names in shrink_slab tracepoints

mm_shrink_slab_(start|end) tracepoints may contain module name such as [nfs].
Adjust the regexp so that it works on such lines.

Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Mel Gorman <mgorman@suse.de>