self compile time

Top Pagina
Bijlagen:
Bericht als e-mail
+ (text/plain)
Delete this message
Reply to this message
Auteur: Stephen Weeks
Datum:  
Aan: MLton
Onderwerp: self compile time

Here are some interesting numbers from the latest native G1 building a native
G2 on a 733 MhZ.

total compile time: 948
parse & elab time: 62
closure conv time: 53
allocate reg time: 84
x86 code gen time: 555

        time in GC: 473


   bytes allocated: 30,557,292,572
      bytes copied: 15,490,170,048
    max bytes live:    155,876,440


I'm going to look into the three biggest bottlenecks in the front and middle
end, listed above. I'm pretty sure I can speed up allocate registers. The
other two I don't know why they're so slow.

The biggest bottleneck is the x86 code generator. I recall that with the C code
generator, the total allocation was about 7G and the max live was about 100M.
So it looks like the x86 code generator is doing quite a bit of allocation.

Matthew, I was wondering where you were with respect to a version of the code
generator that you're happy with feature-wise, and if you are ready to switch
focus to improving compile times? I'm already happy enough with where we are to
do a release in January, but it would be great to cut self compile time in half,
which I believe is possible.