[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):


	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.


-- 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