Serializing possibly resource-intensive tasks such as meinproc
Lubos Lunak
l.lunak at suse.cz
Thu Jan 7 16:20:39 CET 2010
Hello,
I would like to commit the attached kdelibs/icecream patches, in order to
avoid running into pathetic OOM situations on Linux.
In short, run (or rather don't) 'make -j30' e.g. in kdebase/runtime/doc. As
we have a nice icecream build farm here, I normally do such parallel builds,
and this can quite easily happen by mistake (even when running full kdebase
build and cmake decides to run many jobs in doc/). Meinproc can take quite
some memory and 30 of them is certainly more than even 2 GiB RAM machine can
handle.
Worse, what usually follows after that is kernel's absolutely pathetic OOM
handling resulting in having to watch a dead machine for up to several hours,
after which at least crucial KDE processes are dead, so one may as well
simply hit the reset button. I must be quite known in the SUSE Labs kernel
team for moaning about OOM, but they run WindowMaker and compile small .c
kernel files, so I guess they care about as much as about famine in Uganda.
The buildsystem fix uses the fact that icecream serializes even non-compiling
tasks, so it makes meinproc4 to be run using icecc as well (actually it
serializes way too much, even on dual-core CPUs, but I can live with that).
The icecream fix is needed for icecc to handle correctly commands with full
path, such as "icecc /<path_in_kdelibs>/meinproc4.shell <args>". In order to
detect icecream that can handle this properly a new version release would be
needed (I'm willing to do there whatever is needed).
--
Lubos Lunak
openSUSE Boosters team, KDE developer
l.lunak at suse.cz , l.lunak at kde.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kdelibs.patch
Type: text/x-diff
Size: 3706 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kde-buildsystem/attachments/20100107/c551dbb0/attachment.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: icecream.patch
Type: text/x-diff
Size: 679 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kde-buildsystem/attachments/20100107/c551dbb0/attachment-0001.bin
More information about the Kde-buildsystem
mailing list