Update on build time performance - not good

Richard Purdie

We've merged a number of things which should have helped performance
recently. Changes in my test included:

* Splitting out the locale generation [not merged yet]
* Not building tar-replacement-native when we don't need it
* Cleaned up dependencies for native/nativesdk
* Cleaned up dependencies for all-arch packages
* Reduced dbus-native dependencies

The time for the benchmark timing test against master with the locale
split patch applied was:

real 105m5.813s
user 386m39.170s
sys 59m40.250s

so not that much different from where we have been :(.

I did observe things through the build process:

* The first part of the build was *fast* getting through the first 2000
of 4295 tasks in about 10 minutes.
* The CPU usage was pretty much full for that time
* The next 5 minutes covered the next 150 tasks
* gettext-native didn't seem to get built until surprisingly late in
the process
* There was a highly serialised chain of gettext-native, libelf-native,
binutils-native, binutils-cross etc.
* Once eglibc/libgcc completed, processor usage was high again for the
rest of the build

I'm hoping my BB_NUMBER_THREADS (12 on a quad core machine) was too high
causing too much context switching and as the build process might now be
more efficient, lowering it might help. I am a bit disappointed in those
numbers though.



Join yocto@lists.yoctoproject.org to automatically receive all group messages.