[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gc-by-area and host uptimes



This escalation of discussion is only my fault. I had a side discussion
with DLA, which he allowed me to post on e-mail, but I stupidly left out
some crucial points. Here is my attempt to fix it, first by including
the original conversation:


    Date: Thu, 9 Feb 89 11:55 EST
    From: David L. Andre <DLA@JASPER.SCRC.Symbolics.COM>

	Date: Thu, 9 Feb 89 11:19 EST
	From: Paul Pangaro <pan@Athena.Pangaro.Dialnet.Symbolics.Com>

	    Date: Thu, 9 Feb 89 09:38 EST
	    From: DLA@JASPER.SCRC.Symbolics.COM (David L. Andre)

		Date: Thu, 9 Feb 89 10:46:31 +0200
		From: luria%sel.technion.ac.il@RELAY.CS.NET (Marc Luria)

	[...]

		what is this slow gc, and how slow is it?

	    SLOW-GC is a Symbolics-internal tool that was used in the development of
	    the Ivory GC and "operating system".  It is not a product, and it is
	    probably not what anyone suspects it is by looking at its name.

	Fine, but could you at least tell us what SLOW-GC 1does0 do? This leaves
	it hanging a bit, and treats us (though I dont think you intended it) as
	if as users our ignorance of things is OK, or we wouldnt understand if
	you told us what it does do.

    SLOW-GC was a mark-sweep GC which we wrote for early versions of Ivory
    whose GC and virtual-memory hardware was broken.  We had to write it to
    fit as much software as possible into the physical memory available (4MW).
    It is currently broken for Genera of all versions.  With the advent of
    :Start GC :Immediately By-Area, there's no pressing need for it either.

    By the way, it was actually pretty fast for the early Ivories, since there
    were no "real concerns" of working set, etc.  But it's attrociously slow
    on a full system, taking two to twelve hours (without-interrupts) for a
    typical dynamic GC.

    I was explicitly vague about all of this on the public list because I
    really didn't want to commit to shipping or supporting anything like this
    in the forseeable future.  There's an awful lot of work involved in making
    this into something that's near the quality of the system GC.

****************

Rest of most recent conversation, with minor comments:

    Date: Fri, 10 Feb 89 11:47 EST
    From: Qobi@ZERMATT.LCS.MIT.EDU (Jeffrey Mark Siskind)

	    It is currently broken for Genera of all versions.

    Thats a shame. I really hope that Symbolics changes their mind and chooses
    to fix and support. Please read on.

	    With the advent of
	    :Start GC :Immediately By-Area, there's no pressing need for it either.

    I disagree. As my previous mail relates, my experience is that using gc-by-area
    requires a significant amount of hand-holding to do several iterations of GC.
    This takes a lot of time, and also puts a burden on the user to make a lot
    of decisions along the way. Even then there is no guarantee that there aren't
    so many references that cross areas to make gc'ing a small subset of them at
    a time of any use.

I dont recall the reason why you were so reluctant to cold-boot --- I
guess it is much more than merely avoiding re-initing the state of the
machine. It seems you are trying to drive the beast beyond its practical
limits, and the existence of :Start GC :Immediately By-Area is your
saviour. Asking for more is reasonable, but thats all you can do, for
such an unusual need (which, dont you admit, is the case?)

	    By the way, it was actually pretty fast for the early Ivories, since there
	    were no "real concerns" of working set, etc.  But it's attrociously slow
	    on a full system, taking two to twelve hours (without-interrupts) for a
	    typical dynamic GC.

    That doesn't bother me. Several gc-by-areas takes me also twelve hours. During
    that time I am dead affraid to touch my machine for fear that I might cons
    and destroy the saftey predictions of the GC mechanism. I'd rather be able to do
    that unattendend over night or during the weekend. For all I care a GC that
    took 72 hours that I ran once every two or three months wouldn't be that bad
    at all.

Sure, I agree with this of course. Do you know how you would implement
what you are asking for? What time would it take? Do you have the time,
if Symbolics does not?

	    I was explicitly vague about all of this on the public list because I
	    really didn't want to commit to shipping or supporting anything like this
	    in the forseeable future.  There's an awful lot of work involved in making
	    this into something that's near the quality of the system GC.

	Thanks for the info. I dont think a mere mention of a hack implies the
	future requirement for shipping or supporting; a disclaimer that it does
	not work, is dangerous, etc., is not intended for users, should quiet
	most folks from even asking for it.

    Not me, I am still asking for it, based on the fact that I beleive that it
    is a good idea irrespective of its implementation status.

Asking is fine, and I know you realize the burden placed on the
development staff for 1all0 their demands.

	Then, your comment that :Start GC
	:Immediately By-Area superceding its use or need can also be your final
	comment on the matter.

    I hope that it is not the final comment on the matter.

Well, I suggest that it is for the moment, given all the other things
teh developers are working on, with much larger impact and wider demand
across the product range. 

	I was just lobbying for letting folks know
	things, otherwise rumors get around and become stupid. You might end up
	finding that you are being accused of hoarding an important tool that
	solves all virtual memory problems ever considered, when in fact it
	never even did what they thought it did...

With apologies to DLA who was trying to avoid the very cat's nest I
caused....

Best,
PANgaro