|
|
(5 intermediate revisions by one other user not shown) |
Line 1: |
Line 1: |
| Performance is an essential point for measuring the quality of a build system.<br>
| | See https://wiki.yoctoproject.org/wiki/Profiling |
| We are continously improving poky/bitbake performance, including major parts of build time, disk footprint, and file parsing speed.<br>
| |
| Here are some performance measurement results:<br>
| |
| <br>
| |
| {| cellpadding="10" cellspacing="0" border="1"
| |
| |+Table 1: File Parsing Time Optmization Results
| |
| |File parsing time
| |
| |Green-3.3.1
| |
| |Yocto-0.9
| |
| |Optimization A
| |
| |Optimization B
| |
| |Current
| |
| |-
| |
| |BB file number
| |
| |925
| |
| |844
| |
| |757
| |
| |757
| |
| |769
| |
| |-
| |
| |time (s)
| |
| |17
| |
| |45
| |
| |29
| |
| |26
| |
| |16
| |
| |}
| |
| Note:<br>
| |
| Optimization A: Exclude variables in distro_tracking_fields.inc from normal parsing. (Already in master tree)<br>
| |
| Optimization B: "??=" re-implementation. (Pending for review)<br>
| |
| Current: Latest master with parallel parsing mechanism<br>
| |
| <br>
| |
| {| cellpadding="10" cellspacing="0" border="1"
| |
| |+Table 2: Build Time Optmization Results (poky-image-minimal)
| |
| |Build time
| |
| |Green-3.3.1
| |
| |Yocto-0.9
| |
| |Exec (before pseudo wrapper)
| |
| |Fork (after pseudo wrapper)
| |
| |Current
| |
| |-
| |
| |Recipe number
| |
| |88
| |
| |147
| |
| |147
| |
| |147
| |
| |147
| |
| |-
| |
| |time (s)
| |
| |32m57s
| |
| |88m50s
| |
| |114m6s
| |
| |99m52s
| |
| |134m39s
| |
| |}
| |
| Note:<br>
| |
| Using fork way in bitbake will gain about 10% build time for poky-image-minimal.<br>
| |
| The current build time is somewhat long, which we will look at.<br>
| |
| | |
| {| cellpadding="10" cellspacing="0" border="1"
| |
| |+Table 3: Disk Footprint Optmization Results (poky-image-minimal)
| |
| |Disk Space
| |
| |Green-3.3.1
| |
| |Yocto-0.9
| |
| |Optimization A
| |
| |Optimization B
| |
| |Current
| |
| |-
| |
| |Recipe number
| |
| |88
| |
| |147
| |
| |147
| |
| |147
| |
| |147
| |
| |-
| |
| |Disk size (GB)
| |
| |7.6
| |
| |29
| |
| |24
| |
| |19
| |
| |24
| |
| |}
| |
| Note:<br>
| |
| Optimization A: Remove the temp files in sstate-build-* (Already in master tree).<br>
| |
| Optimization B: Using hardlink to replace copy between "package-->packages-split", "image-->sysroot-destdir", and "sysroot-destdir-->/tmp/sysroots" (Pending for review).<br>
| |