[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