glibc build process slowness
Paul Smith
psmith@gnu.org
Mon Feb 26 10:55:00 GMT 2007
On Wed, 2007-02-21 at 20:15 +0000, Mark Seaborn wrote:
> I profiled make. It's spending around 60% of the time in
> new_pattern_rule(), which does a linear search through the list of
> pattern rules to check for duplicate rules. glibc generates ~2500
> rules (in sysd-rules).
Holy moly! How in the world do you get that many pattern rules?!?! The
point of pattern rules is that they represent an entire class of
targets, which means you typically would have orders of magnitude fewer
pattern rules than you have targets.
I don't have anything against making this more efficient, I'm just...
surprised.
> I was considering refactoring this properly, but the current
> new_pattern_rule() doesn't look quite right. The comment says it
> looks for an identical rule. The actual test is
>
> the old rule has 1 target (or multiple identical targets)
> and
> there exists a target in the new rule the same as the old rule's target
I agree that this doesn't seem correct.
I got your set of patches, and I'll take a look. Thanks!
--
-------------------------------------------------------------------------------
Paul D. Smith <psmith@gnu.org> Find some GNU make tips at:
http://www.gnu.org http://make.paulandlesley.org
"Please remain calm...I may be mad, but I am a professional." --Mad Scientist
More information about the Libc-alpha
mailing list