Path: utzoo!attcan!uunet!wuarchive!cs.utexas.edu!rice!uw-beaver!ubc-cs!alberta!calgary!cpsc!gintera From: gintera@cpsc.ucalgary.ca (Andrew Ginter) Newsgroups: comp.lang.lisp Subject: Re: LISP compiler? (really future of MACL) Summary: realtime GC costs Message-ID: <2159@cs-spool.calgary.UUCP> Date: 23 Nov 89 21:28:16 GMT References: <5130@internal.Apple.COM> <5149@internal.Apple.COM> <616@pyuxf.UUCP> Sender: news@calgary.UUCP Lines: 19 In article <616@pyuxf.UUCP>, asg@pyuxf.UUCP (alan geller) writes: > 1) Would it be possible to use an incremental garbage collector, rather than > the current stop-and-copy? Given that MACL 2.0 will usually be > running under System 7.0, we'll have lots of virtual address space > for from-space and to-space, maybe even multiple generations. A real time (parallel or incremental) garbage collector is roughly twice as costly as a comparable stop-and-collect collector. The real time version has to collect more frequently than stop-and-copy because the real time version has to start it's collection well before memory is exhausted. A real time "two space copying" collector is even more expensive because of the cost of checking for a forwarding pointer on every reference to GC managed memory. Real time collectors penalize real performance while improving some aspects of perceived performance. So if you're going to add a real time collector, make it an option. Andrew Ginter, 403-282-2984, gintera@CPSC.UCALGARY.CA, Ginter@UNCAMULT.BITNET