Date: prev next · Thread: first prev next last
2010 Archives by date, by thread · List index


Hi Mattias,

On Sat, 2010-10-23 at 13:15 +1100, Mattias Johnsson wrote:
it seems that everything is rebuilt which takes hours, even if only a
few files have changed.

        As Norbert says - this may be down to low-level header changes, which
have a big trickle-down effect on build-times (sorry).

Second, although I'm using autogen.sh with the --with-num-cpus=5
option, it appears that only one cpu is being utilized. Or possibly
two at most - when I look at the output of "top" during the build, at
most I only ever see one "cc1plus" process and one "dmake" process,

        Oh - that is indeed odd. Of course, it really depends on which piece
you build here; some of the 'external' components eg. berkelydb may not
parallelise at all (though hopefully we get build-level parallelism,
building some other module in parallel - if indeed there is anything we
can do that for).

and dmake is never using more that 1% of a cpu. Any thoughts?

        Personally, I recommend using:

        http://people.gnome.org/~michael/blog/icecream.html

        And then:

/autogen.sh --with-git --with-gcc-speedup=icecream --with-num-cpus=16 --with-max-jobs=4 

        Icecream stops the huge number of CPUs burning a hole in your CPU - by
throttling them internally, so the parallelism then is just exposed to
the icecream daemon. And you can boot up any old machines you have lying
around on your LAN to help out; I use several old laptops variously, and
build 7 wide or so [ I tend to tweak the icecream config on each build
slave to use <cpus>+1 to use the network latency nicely ].

        If you are lucky (ie. work in the czech labs: I do not) - you can do
the central pre-processing on an 8 CPU beast, then dispatch the source
to a huge build farm, such that you get a ~20 minute build from
clean ;-) - for me it takes a couple of hours.

        HTH,

                Michael.

-- 
 michael.meeks@novell.com  <><, Pseudo Engineer, itinerant idiot


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.