[m-dev.] where the .NET compiler is slow
Peter Ross
pro at missioncriticalit.com
Thu Feb 27 01:20:19 AEDT 2003
On Wed, Feb 26, 2003 at 09:49:43PM +1100, Fergus Henderson wrote:
> On 26-Feb-2003, Peter Ross <pro at missioncriticalit.com> wrote:
> > I just did a simple analysis of the compile time of hello.m when using
> > the compiler built in the il grade.
> >
> > Here are the 3 sections which consume the most time
> > - Checking typeclass instances (53%)
> > - Conversion of parse tree to HLDS (18%)
> > - RTTI initialization (12%)
> >
> > I have no idea why the typechecking is so slow.
>
> It is probably related to --intermodule-optimization.
> We're probably reading in a lot of typeclass instance declarations
> from `.opt' files. There's a similar effect for the C back-end:
> checking typeclass instances is responsible for more than 20% of the
> compilation time for `mmc --intermodule-optimization -C hello.m'.
>
Actually I have been searching some more and I have tracked it down.
The significantly slow area is dead predicate elimination (phase 02b).
In particular the deletion of all the pred_infos from the
predicate_table. I am currently about to test a change where rather
than deleting everything from the table we build a new table from
scratch.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to: mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions: mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------
More information about the developers
mailing list