[poky] [PATCH 3/3] bb-perf: plot histograms base on buildstats data
Leonardo Sandoval
leonardo.sandoval.gonzalez at linux.intel.com
Wed Nov 16 14:44:47 PST 2016
On 11/16/2016 04:25 AM, Markus Lehtonen wrote:
> On Tue, 2016-11-15 at 15:19 -0600,
> leonardo.sandoval.gonzalez at linux.intel.com wrote:
>> From: Leonardo Sandoval <leonardo.sandoval.gonzalez at linux.intel.com>
>>
>> Scripts that produces script data to be consumed by gnuplot.
>> There are two possible plots depending if either the
>> -S parameter is present or not:
>>
>> * without -S: Produces a histogram listing top N recipes/tasks versus
>> stats. The first stat defined in the -s parameter is the one taken
>> into account for ranking
>> * -S: Produces a histogram listing tasks versus stats. In this case,
>> the value of each stat is the sum for that particular stat in all
>> recipes found.
>> Stats values are in descending order defined by the first stat
>> defined on -s
>>
>> EXAMPLES
>>
>> 1. Top recipes' tasks taking into account utime
>>
>> $ buildstats-plot.sh -s utime | gnuplot -p
>>
>> 2. Tasks versus utime:stime
>>
>> $ buildstats-plot.sh -s utime:stime -S | gnuplot -p
>>
>> 3. Tasks versus IO write_bytes:IO read_bytes
>>
>> $ buildstats-plot.sh -s 'IO write_bytes:IO read_bytes' -S | gnuplot
>> -p
> One problem (or problematic restriction) I see is that the script relies on
> the new buildstats format introduced by PATCH 2/3 in this patchset, making
> the script incompatible with older buildstats and not being able to render
> them.
The proposed buildstats.sh script has the same behavior as the old one
if -s 'Elapsed time' is included as argument. The new feature introduced
is that we can parse other stats besides Elapsed Time, so with
buildstats-plot.sh can make use of it. The main reason of the 2/2 change
is that Elapsed time does not give us much info because this is wall
time, not CPU time.
> Another problem for me is the dependency on datamash which I wasn't able to
> find for my distro (openSUSE Leap 42.1). How hard would it be to ditch the
> dependency on datamash?
datamash is pretty good for doing basic stat and this case we are just
summing columns by 'groups'. The same thing can be with awk of course.
Looking at the https://www.gnu.org/software/datamash/download/, there is
no package ready for opensuse so the only option here is to get the
tarball and 'make' it.
> Thanks,
> Markus
>
>
More information about the poky
mailing list