Re: Compiling with Continuations/Andrew Appel

boehm@parc.xerox.com (Hans Boehm)
Wed, 29 Jan 1992 10:08:32 PST

          From comp.compilers

Related articles
Compiling with Continuations/Andrew Appel nick@dcs.edinburgh.ac.uk (1992-01-23)
Re: Compiling with Continuations/Andrew Appel eifrig@blaze.cs.jhu.edu (1992-01-27)
Re: Compiling with Continuations/Andrew Appel norman@parc.xerox.com (1992-01-27)
Re: Compiling with Continuations/Andrew Appel carlton@husc10.harvard.edu (1992-01-27)
Re: Compiling with Continuations/Andrew Appel delacour@parc.xerox.com (Vincent Delacour) (1992-01-28)
Re: Compiling with Continuations/Andrew Appel bimbart@cs.kuleuven.ac.be (1992-01-29)
Re: Compiling with Continuations/Andrew Appel boehm@parc.xerox.com (1992-01-29)
Re: Compiling with Continuations/Andrew Appel oz@ursa.sis.yorku.ca (1992-01-29)
Re: Compiling with Continuations/Andrew Appel ulrich@mips.complang.tuwien.ac.at (1992-01-30)
| List of all articles for this month |

Newsgroups: comp.compilers
From: boehm@parc.xerox.com (Hans Boehm)
Keywords: storage, optimize, ML, books
Organization: Xerox PARC
References: 92-01-101 92-01-115
Date: Wed, 29 Jan 1992 10:08:32 PST

delacour@parc.xerox.com (Vincent Delacour) writes:
> ... However, unless you work on a cray or a pc, the real cost of
>operations in memory can not be measured in instructions! The huge amount
>of memory used by sml-nj puts an enormous burden on the virtual memory
>system of the machine it runs on. Appel recommands a ratio H/A of about 7
>(15 without the generational version of the GC). Now consider you run a
>program asking for, say 20 Mbytes for a certain amount of time. With
>SML-NJ, you are really asking for 140 Mbytes of virtual memory.


There are also other complications. Even pc's often have caches these
days, and stack allocation tends to be much more cache friendly. This can
make a huge difference in execution time. On some architectures, there
are similar problems related to a shortage of memory mapping resources,
even if the machine has enough physical memory.


It's also worth remembering that just paging in 100 Mbytes once takes on
the order of 15 minutes on a typical workstation. There is essentially no
such thing as a 140 Mbyte application with good VM behavior.


As was pointed out by previous messages, this doesn't mean the techniques
are inapplicable; you just have to be careful how and where you apply
them.


Hans-J. Boehm (boehm@parc.xerox.com)
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.