another wash compile problem

Simon Marlow simonmar at microsoft.com
Wed Aug 10 05:47:18 EDT 2005


On 10 August 2005 09:04, Frederik Eaton wrote:

>>> Compiling a module which imports the 14 smaller modules takes much
>>> less time than compiling the monolithic module - it's almost 5 times
>>> faster (see below).
>> 
>> We've found the cause of this, and committed a fix.  The full
>> HTMLMonda98.hs now compiles in 27 seconds for me, without
>> optimisation (with 6.4 it is several minutes).  Let's hope the same
>> issue is affecting other compilations too :-)
> 
> Wow! That's great.
> 
> Have you looked at how compile time varies with module size in the
> fixed version?

Not in any detail; but I expect it to be worse than linear but not as
bad as quadratic.  There are several reasons it might be worse than
linear: GC is linear in the residency, for one.  And the compiler makes
a lot of use of FiniteMap, which will add a (log n) factor to a
traversal of the tree.  We try to fix instances of quadratic behaviour
as we find them.

Cheers,
	Simon


More information about the Libraries mailing list