[Libreoffice] How can I speed up a build?

Mattias Johnsson m.t.johnsson at gmail.com
Mon Oct 25 06:22:38 PDT 2010


Thanks guys - I've got it all working pretty efficiently now. The
--with-max-jobs=4 option works a *lot* better than the --with-num-cpus
flag on my box (Core i5, four cores / eight threads). A clean build
takes a bit over an hour, but most changes now only require a couple
of minutes for the build, yay :-)

I'll check out icecream though; sounds good.

Thanks again!

On 25 October 2010 23:59, Michael Meeks <michael.meeks at novell.com> wrote:
> 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 at novell.com  <><, Pseudo Engineer, itinerant idiot
>
> _______________________________________________
> LibreOffice mailing list
> LibreOffice at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/libreoffice
>


More information about the LibreOffice mailing list