[m-dev.] Bringing accurate GC back to life
Ralph Becket
rafe at cs.mu.OZ.AU
Fri Apr 15 13:14:19 AEST 2005
About eighteen months ago Fergus posted the following regarding using
the compiler built to use accurate GC (the .agc grades):
[http://www.cs.mu.oz.au/research/mercury/mailing-lists/mercury-developers/mercury-developers.0310/0012.html]
I can just about bootstrap in grade asm_fast.agc now, provided
the heap size is set large enough. I got as far as the end of
the stage 3 library, anyway; probably there are still a fair few
bugs left.
I did some speed comparisons of the compiler built in
asm_fast.agc with -O2, and it gets about a 25% improvement
compared to the asm_fast.gc -O2 version, and a 20% improvement
compared to the hlc.gc -O5 version that is installed on ceres
(all using gcc 2.95.4).
That is a substantial increase, so once the heap resizing issue
and any other bugs are sorted out, I think it may be a good idea
for us to switch to using asm_fast.agc as the default grade in
which to build the compiler.
I agree with Fergus. A 25% speedup is serious. I can't think of
anything on the cards in the next year or two that could reap that kind
of improvement in one go. I therefore propose we revive the .agc
grades. The code base has moved on since then and some work will be
needed to make .agc grades compile and the library work properly.
Zoltan has pointed out that substantial effort would be required to make
the debugger and AGC work together; I'm not personally convinced that
this is necessary. The debugger doesn't work with the .hl* grades
either and we don't seem to suffer.
Opinions?
-- Ralph
--------------------------------------------------------------------------
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