On 04/06/12 17:19, Bjoern Michaelsen wrote:
On Mon, Jun 04, 2012 at 03:56:41PM +0200, Lubos Lunak wrote:
On Friday 01 of June 2012, Michael Meeks wrote:
IMHO we could - without significant loss of functionality reduce all
those deps to a single stamp file (which we prolly install anyway) in
the solver. Should be ~trivial to elide in our dep-re-writing anyway,
save > 300Mb of space etc.
Should just be a few lines in solenv/bin/concat-deps.c
But concat-deps is _after_ the creation dep files of the objects (which will
then still be huge).
who cares how big the files are (disk is cheap), the relevant metric is:
how many seconds does make need to parse them?
My question would be: do we want to continue to make 'over precise
deps' at this large computational, space and build performance cost
possible ?
I think there are several ways of reducing the size of .d files that are
safer:
- a significant part of .d content is the LO build directory - defining that
one and some other common paths (solver, workdir) and sed /path/define/
should save quite some space (50% or possibly even more)
We even did that once IIRC using $(OUTDIR)/$(WORKDIR) vars which are known to
gbuild already.
yes, but keep in mind that variables in the dep files will need to be
expanded by make, which will likely result in memory allocations, so
it's an open question whether that will actually improve performance or
slow it down.
- a significant part of .d content is the depend-on-nothing deps created
by -MP , if those would be merged into one dedicated .d file that'd save a
lot of space as well; not sure if this is easily doable though
Arent we doing that already when merging the .d files for one library?
to some extent yes, but of course the same headers are included in many
libraries, so there is still some amount of duplication there; however i
don't know to improve this without breaking separate building of
modules, which requires the LinkTarget .d files to be self-contained.
So right now, I consider the topic premature optimization until proven otherwise.
(*) which you wont unless you gzip them (which is doable and shouldnt have too
big of an performance impact)
sadly AFAIK make cannot include compressed files...
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.