Bug 2403 - Make the build profiling in pictures
Summary: Make the build profiling in pictures
Status: VERIFIED FIXED
Alias: None
Product: OE-Core
Classification: Build System, Metadata & Runtime
Component: core (show other bugs)
Version: 1.3
Hardware: x86 Multiple
: Low enhancement
Target Milestone: 1.3 M2
Assignee: Robert Yang
QA Contact:
URL:
Whiteboard: (QA testing completed) Done
Depends on:
Blocks:
 
Reported: 2012-05-03 08:08 UTC by Robert Yang
Modified: 2012-06-26 06:43 UTC (History)
8 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Robert Yang 2012-05-03 08:08:31 UTC
Add a script to poky/scripts/ which uses gnuplot to analyze the building time, we can figure out the build time from tmp/stamps/, then we can see clearly which pkg or task is the hot point, we may use this to reduce the build time.
Comment 1 Robert Yang 2012-05-12 09:23:43 UTC
Hi Richard,

I've heard from Randy that you had already done a similar work of this for yocto, is it? I will drop this one if it is.
Comment 2 Richard Purdie 2012-05-12 10:26:18 UTC
See https://wiki.yoctoproject.org/wiki/Build_Performance and in particular

https://lists.yoctoproject.org/pipermail/poky/2011-February/003740.html

It could use some improvement to autoscale the axies though (or generate multiple charts that tile)
Comment 3 Robert Yang 2012-05-12 11:10:24 UTC
(In reply to comment #2)
> See https://wiki.yoctoproject.org/wiki/Build_Performance and in particular
> 
> https://lists.yoctoproject.org/pipermail/poky/2011-February/003740.html
> 
> It could use some improvement to autoscale the axies though (or generate
> multiple charts that tile)

Thanks, Richard, I've read the emails, and took a look at the pybootchartgui, it is GPL v3, I think that we can't add it to poky/scripts/ since poky is GPL V2 and MIT, I'd like to add a shell script (Randy had showed me the proto of the script) to poky/scripts which can auto generate the similar charts like http://tim.rpsys.net/bootchart.png.

// Robert
Comment 4 Richard Purdie 2012-05-12 12:37:23 UTC
No, please do not reinvent the wheel.

I don't think adding a python script under GPLv3 to the system should be an issue. Its clearly always distributed with the source to it and the only implication it will likely have is the modifications to the script would also be GPLv3. The code to generate this is relatively complex, it already exists and I don't see the license as a good reason to reinvent it.

It is worth checking with the legal people but this shouldn't be a problem.
Comment 5 Robert Yang 2012-05-14 02:20:15 UTC
(In reply to comment #4)
> No, please do not reinvent the wheel.
> 
> I don't think adding a python script under GPLv3 to the system should be an
> issue. Its clearly always distributed with the source to it and the only
> implication it will likely have is the modifications to the script would
> also be GPLv3. The code to generate this is relatively complex, it already
> exists and I don't see the license as a good reason to reinvent it.
> 
> It is worth checking with the legal people but this shouldn't be a problem.

Thanks, I will add the pybootchartgui to poky/script/, I think here are the work that I should do:

1) Investigate pybootchartgui
2) Apply the patch that you had made for it
3) Try to make some improvements (autoscale the axies or generate multiple charts that tile)

I will ask you for more help when I know more about it.
Comment 7 liang li 2012-06-26 06:43:33 UTC
run "path_to_git/scripts/pybootchartgui/pybootchartgui.py" , such as below:
pybootchartgui.py  path_to_builddir/tmp/buildstats/core-image-sato-qemux86/201206251800/

pybootchartgui.py  path_to_builddirtmp/buildstats/core-image-minimal-qemux86/201206211644/


can get Bootchart popup window.

./pybootchartgui.py -s 4 -o /home/yocto/test_profiling/ path_to_builddir/tmp/buildstats/core-image-sato-qemux86/201206251800/
can get 4 svg files in dir "/home/yocto/test_profiling/".

git info:8ce8d25bcda0e2e0b62204d5ca5875dedcaacf7d
git branch:poky/master

test host: ubuntu 12.04 x86_64