|
|
Line 26: |
Line 26: |
| ENABLE_BINARY_LOCALE_GENERATION = "1"<br> | | ENABLE_BINARY_LOCALE_GENERATION = "1"<br> |
| NO32LIBS = "1"<br> | | NO32LIBS = "1"<br> |
| <br>
| |
| '''Source code and commits:'''<br>
| |
| Green-3.3.1: http://autobuilder.yoctoproject.org/downloads/poky/poky-green-3.3.1.tar.bz2<br>
| |
| Yocto-0.9: http://autobuilder.yoctoproject.org/downloads/poky/poky-laverne-4.0.tar.bz2<br>
| |
| 01/07/2011 build: commit b22e345e05efcc3f66278af8f09fb083afe32b68<br>
| |
| 02/14/2011 build: commit 6cb8fd6def4912e4aa76330649ba42a9ed2694fd<br>
| |
| <br>
| |
| Other detail commit number for optimization will be annotated in the table note. See following.<br>
| |
| <br> | | <br> |
|
| |
|
| '''Performance results:'''<br>
| | {|border="1" |
| {| cellpadding="10" cellspacing="0" border="1" | | || '''''' || '''[[Yocto1.1-M2-RC3]]''' |
| |+Table 1: File Parsing Time Optmization Results | |
| |align="center"|File parsing speed | |
| |align="center"|BB files | |
| |align="center"|Parsing time (s)
| |
| |align="center"|Standardized BB files
| |
| |align="center"|Standardized time (s)
| |
| |align="center"|Performance compare
| |
| |- | | |- |
| |align="center"|Green-3.3.1 | | ||Ubuntu10.04 || real 109m53s |
| |align="center"|925
| | user 356m16s |
| |align="center"|16.5
| | sys 48m16s |
| |align="center"|770
| |
| |align="center"|13.7
| |
| |align="center"|100%
| |
| |-
| |
| |align="center"|Yocto-0.9
| |
| |align="center"|844
| |
| |align="center"|44.8
| |
| |align="center"|770
| |
| |align="center"|40.9
| |
| |align="center"|298%
| |
| |-
| |
| |align="center"|Optimization A (rm distro variables)
| |
| |align="center"|757
| |
| |align="center"|29.6
| |
| |align="center"|770
| |
| |align="center"|30.1
| |
| |align="center"|220%
| |
| |-
| |
| |align="center"|01/07/2011 build
| |
| |align="center"|770
| |
| |align="center"|16.6
| |
| |align="center"|770
| |
| |align="center"|16.6
| |
| |align="center"|121%
| |
| |-
| |
| |align="center"|Optimization B ("??=" re-implementation)
| |
| |align="center"|770
| |
| |align="center"|15.6
| |
| |align="center"|770
| |
| |align="center"|15.6
| |
| |align="center"|114%
| |
| |}
| |
| Note:<br>
| |
| Optimization A: commit: 53aff7d6775eb1c2c8f419f325b91c062d85eed5<br>
| |
| 01/07/2011 build: Latest master with parallel parsing mechanism<br>
| |
| Optimization B: "??=" re-implementation. (Pending for review)<br>
| |
| <br>
| |
| | |
| <br>
| |
| {| cellpadding="10" cellspacing="0" border="1"
| |
| |+Table 2: Build Time Optmization Results
| |
| |align="center"|Build time (poky-image-minimal)
| |
| |align="center"|Recipe number
| |
| |align="center"|Build time (s)
| |
| |align="center"|Standardized recipe number
| |
| |align="center"|Standardized time (s)
| |
| |align="center"|Performance compare
| |
| |-
| |
| |align="center"|Green-3.3.1
| |
| |align="center"|88
| |
| |align="center"|32m57s
| |
| |align="center"|147
| |
| |align="center"|53m54s
| |
| |align="center"|100%
| |
| |-
| |
| |align="center"|Yocto-0.9
| |
| |align="center"|147
| |
| |align="center"|88m50s
| |
| |align="center"|147 | |
| |align="center"|88m50s
| |
| |align="center"|165%
| |
| |-
| |
| |align="center"|Exec (before pseudo wrapper)
| |
| |align="center"|147
| |
| |align="center"|114m6s
| |
| |align="center"|147
| |
| |align="center"|114m6s
| |
| |align="center"|212%
| |
| |-
| |
| |align="center"|Fork (after pseudo wrapper)
| |
| |align="center"|147
| |
| |align="center"|99m52s
| |
| |align="center"|147
| |
| |align="center"|99m52s
| |
| |align="center"|185%
| |
| |-
| |
| |align="center"|01/07/2011 build
| |
| |align="center"|147
| |
| |align="center"|134m39s
| |
| |align="center"|147
| |
| |align="center"|134m39s
| |
| |align="center"|250%
| |
| |-
| |
| |align="center"|pipe buffer 1024 (before pipe buffer fix)
| |
| |align="center"|170
| |
| |align="center"|101m8s
| |
| |align="center"|147
| |
| |align="center"|87m27s
| |
| |align="center"|162%
| |
| |-
| |
| |align="center"|pipe buffer 102400 (after pipe buffer fix)
| |
| |align="center"|170
| |
| |align="center"|97m32s
| |
| |align="center"|147
| |
| |align="center"|84m20s
| |
| |align="center"|156%
| |
| |-
| |
| |align="center"|02/14/2011 build
| |
| |align="center"|227
| |
| |align="center"|75m10s
| |
| |align="center"|147
| |
| |align="center"|48m40s
| |
| |align="center"|90%
| |
| |} | | |} |
|
| |
| Note:<br>
| |
| Exec (before pseudo wrapper): commit 84263dbf43eba5cd99ce59062cef807a966e7312<br>
| |
| Fork (after pseudo wrapper): commit 995d4679d4bb6a28dd6fbdb1becc4231369311b7<br>
| |
| pipe buffer 1024 (before pipe buffer fix): commit 754047b6ec01df5f3159cce93b17b8493d0af5e1<br>
| |
| pipe buffer 102400 (after pipe buffer fix): commit 06c6db7929c75f576a395fb442abe447b833fc3b<br>
| |
| <br>
| |
| {| cellpadding="10" cellspacing="0" border="1"
| |
| |+Table 3: Disk Footprint Optmization Results (poky-image-minimal)
| |
| |align="center"|Disk space (poky-image-minimal)
| |
| |align="center"|Recipe number
| |
| |align="center"|Disk footprint (GB)
| |
| |align="center"|Standardized recipe number
| |
| |align="center"|Standardized disk footprint (GB)
| |
| |align="center"|Performance compare
| |
| |-
| |
| |align="center"|Green-3.3.1
| |
| |align="center"|88
| |
| |align="center"|7.6
| |
| |align="center"|147
| |
| |align="center"|12.7
| |
| |align="center"|100%
| |
| |-
| |
| |align="center"|Yocto-0.9
| |
| |align="center"|147
| |
| |align="center"|29
| |
| |align="center"|147
| |
| |align="center"|29
| |
| |align="center"|228%
| |
| |-
| |
| |align="center"|Optimization A (rm sstate-build-*)
| |
| |align="center"|147
| |
| |align="center"|24
| |
| |align="center"|147
| |
| |align="center"|24
| |
| |align="center"|189%
| |
| |-
| |
| |align="center"|01/07/2011 build
| |
| |align="center"|147
| |
| |align="center"|24
| |
| |align="center"|147
| |
| |align="center"|24
| |
| |align="center"|189%
| |
| |-
| |
| |align="center"|Optimization B (hard link files)
| |
| |align="center"|147
| |
| |align="center"|19
| |
| |align="center"|147
| |
| |align="center"|19
| |
| |align="center"|150%
| |
| |}
| |
| Note:<br>
| |
| Optimization A: commit: 7e7bb24b8512dd1452a11d8aeafc8dedcbc4d623).<br>
| |
| Optimization B: Using hardlink to replace copy between "package-->packages-split", "image-->sysroot-destdir", and "sysroot-destdir-->/tmp/sysroots" (Pending for review).<br>
| |
| <br>
| |
|
| |
| There are some other data we may add later.<br>
| |
| 1) Using socket data accessing approach to avoid data re-parsing when fork/exec new bitbake processes.
| |