[plt-scheme] Make multiple attempts to open DrScheme join running process?

From: Eli Barzilay (eli at barzilay.org)
Date: Sun Feb 25 22:26:18 EST 2007

On Feb 25, Todd O'Bryan wrote:
> On Sun, 2007-02-25 at 19:04 -0500, Eli Barzilay wrote:
> 
> > Which totals about twice the memory you actually have...  If you don't
> > want thrashing, you should use a limit that corresponds to what you
> > have.  A bit more might work when your users are not doing much, but
> > twice the memory you have sounds unrealistic.
> > 
> > 
> > > but Gnome, Firefox, and DrScheme wouldn't work with that. [...]
> > 
> > Whoa -- you want 30 people to run Gnome, Firefox & DrScheme -- all on
> > a single machine?  (I'd say that unrealistic is an understatement.)
> > 
> Actually, the server is fairly beefy according to the LTSP people.
> 
> http://k12ltsp.org/mediawiki/index.php/Server_Sizing
> 
> They suggest about 256MB + 50MB/client is sufficient to run Gnome,
> Firefox, and OpenOffice, all at once. For my lab, that's about 1750MB
> and I have 4GB.

You should consider the behavior of these applications.  In a standard
application like OpenOffice, the biggest overhead is for the
application itself -- then there is a small delta that actually
contains volatile data, and unless you have students that edit big
files with lots of images, you don't need much.  (My guess is that
this makes OpenOffice be more well behaved for your needs than
Eclipse.)

But DrScheme (MzScheme, actually) does not behave well in that
department.  The core application is relatively small, and the rest is
the heap which is unique to each client.  Worse -- the standard mode
of operation means that there is no good locality: memory is accessed
all over the place, and this means that when some of the heap is
swapped out you get a bad case of thrashing.  (This is the same as the
classic disadvantage of using big hash tables.)

The 3m variant of DrScheme (the one that is the default in the current
pre-builds) is behaving better in that area.  Perhaps you should try
that for a session?


> I'm saying all this because it seems like you're telling me that
> what I'm asking for is completely unreasonable, and I assure you, it
> isn't.  It works, it really does. But something about my setup and
> its interaction with DrScheme is not working well. I'm just putting
> it out there.

I'm not -- I'm saying that some applications will put a huge load on
the actual ram that is used, not just the shared part.  Using many
applications that require their own space is unreasonable.  DrScheme
is particularity bad in that department, but you said you have other
problems too...

-- 
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!


Posted on the users mailing list.