[poky] Performance regression in bitbake and exec() vs fork()

Richard Purdie rpurdie at linux.intel.com
Thu Dec 9 04:56:26 PST 2010


I'd like to update people on where this is at. Just to be clear this has
largely been done by the Pseudo maintainer and Mark Hatle, I just agreed
to summarise things.

A branch of pseudo with the needed updates to be able to enable/disable
upon fork/exec/clone is available in poky-contrib on branch
mhatle/pseudo_git. To build this you need to do something like:

./configure --prefix=<poky dir>/pseudo --bits=64
make
make install
(make test)
go to the poky dir
PSEUDO_DISABLED=1 ./pseudo/bin/pseudo
. ./poky-init-env .....
run bitbake commands as normal

Mark's version of a patch I quickly hacked together to change bitbake to
use fork() again rather than exec is:

http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=mhatle/pseudo_fork&id=aa64a80540ea236d8c1e8439dd236badc068749c

The changes in lib/bb/siggen.py are known to be a hack to work around
certain problems and this patch is a work in progress.

Also, I'd like to make it clear, some of the pseudo changes have not yet
been reviewed/accepted by the pseudo maintainer so everything is subject
to change. This email is just to summarise where we're at with this and
bring everyone up to speed and invite others to look at the changes.

The good news is that it appears to roughly work and we get a suitable
speedup back.

Cheers,

Richard




More information about the poky mailing list