diff options
author | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2014-02-23 16:04:32 +0100 |
---|---|---|
committer | Peter Korsgaard <peter@korsgaard.com> | 2014-02-23 22:01:45 +0100 |
commit | 43f25ee0554fcb799b79aeb55a0403774c1e4ed8 (patch) | |
tree | 395c7894d57bdc054de16f3b2b7d982a6d01d1f9 /docs/manual | |
parent | e78cc3af5187ed662de2e66939f64248d0c85e14 (diff) | |
download | buildroot-43f25ee0554fcb799b79aeb55a0403774c1e4ed8.tar.gz buildroot-43f25ee0554fcb799b79aeb55a0403774c1e4ed8.zip |
docs/manual: add section about build time graphing
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Diffstat (limited to 'docs/manual')
-rw-r--r-- | docs/manual/common-usage.txt | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/docs/manual/common-usage.txt b/docs/manual/common-usage.txt index bef42c6ddf..76e4023b95 100644 --- a/docs/manual/common-usage.txt +++ b/docs/manual/common-usage.txt @@ -201,3 +201,50 @@ supported. -------------------------------- GRAPH_OUT=svg make graph-depends -------------------------------- + +Graphing the build duration +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +[[graph-duration]] + +When the build of a system takes a long time, it is sometimes useful +to be able to understand which packages are the longest to build, to +see if anything can be done to speed up the build. In order to help +such build time analysis, Buildroot collects the build time of each +step of each package, and allows to generate graphs from these data. + +To generate the build time graph after a build, run: + +---------------- +make graph-build +---------------- + +This will generate a set of files in +output/graphs+ : + +* +build.hist-build.pdf+, an histogram of the build time for each + package, ordered in the build order. + +* +build.hist-duration.pdf+, an histogram of the build time for each + package, ordered by duration (longest first) + +* +build.hist-name.pdf+, an histogram of the build time for each + package, order by package name. + +* +build.pie-packages.pdf+, a pie chart of the build time per package + +* +build.pie-steps.pdf+, a pie chart of the global time spent in each + step of the packages build process. + +This +graph-build+ target requires the Python Matplotlib and Numpy +libraries to be installed (+python-matplotlib+ and +python-numpy+ on +most distributions), and also the +argparse+ module if you're using a +Python version older than 2.7 (+python-argparse+ on most +distributions). + +By default, the output format for the graph is PDF, but a different +format can be selected using the +GRAPH_OUT+ environment variable. The +only other format supported is PNG: + +---------------- +GRAPH_OUT=png make graph-build +---------------- |