Issue 50997 - build time accleration ...
Summary: build time accleration ...
Status: REOPENED
Alias: None
Product: Build Tools
Classification: Code
Component: solenv (show other issues)
Version: 680m109
Hardware: All All
: P3 Trivial (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-06-20 15:23 UTC by mmeeks
Modified: 2013-02-07 21:55 UTC (History)
2 users (show)

See Also:
Issue Type: ENHANCEMENT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description mmeeks 2005-06-20 15:23:47 UTC
So - I had a very quick look at the rules for .dpcc generation, and - well,
perhaps it'd be easier for someone more familiar with them to fix this;
Either way - 'makedepend' takes a very substantial time; particularly on Win32
(where it helpfully prints 'makedepend' serially so you notice ;-), but also on
Unix.

tools/ compile:
nodep=1			with dep generation:
real    1m21.889s	real    1m33.037s
user    1m10.542s	user    1m16.921s
sys     0m8.237s	sys     0m12.956s

ie. 11 seconds slower over 95seconds ~= 12% speedup.

Of course - for the common 1st time build case, where there is no compiled
object file & => no question as to whether we have to build it or not, it makes
good time/space sense not to bother building & then checking large dependency files.
Comment 1 hjs 2005-06-21 11:15:36 UTC
since

- there already is an option "nodep"
- i wouldn't change the default to somethomg i connot recomend
- the speed gain is quite low compared to the risk of an inconsistent build

this results in a INVALID for me.
Comment 2 mmeeks 2005-06-21 12:20:08 UTC
So - interesting; when you say:

> - i wouldn't change the default to somethomg i connot recomend
> - the speed gain is quite low compared to the risk of an inconsistent build

What is the risk ? - my very limited understanding of these dependency files (of
which I have 7000 (.dpcc), consuming ~250Mb of space) is that they describe
which files are depended on by which other files & hence when a re-build should
be triggered for that file.

ie. they help answer the question "should I re-build this file"

All I am suggesting is that, for the 1st time build; when there is no object
output for this file anyway we could answer that question a little more
efficiently and speedily ;-)

Of course - if you don't have dependencies (eg. after a nodep=1 build) - they
will be generated at the next build anyway; this seems to work quite nicely -
so, I'm not 100% certain of the problem with recommending this etc. ?