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