[gclist] ref-counting performance cost
Richard Jones
R.E.Jones@ukc.ac.uk
Thu, 12 Oct 2000 13:16:06 +0100
>>>>>> "Andrew" == Andrew Shi-hwa Chen <chenandr@cse.msu.edu> writes:
>It's hard to tell without knowing anything about it, but you should
>not forget that although people seem to have given up on RC fairly
>quickly, RC and derivatives are used and not just in low-level
>languages like C++.
>I'm mostly thinking of distributed GC, where distributed cycles are
>still an area where improvements are needed.
Do you have hard evidence from real programs of the need for handling cycles
in distributed GC? To play devil's advocate for a moment, to what extent is
the following true?
1) today's distributed systems use a connect - do some work - disconnect
model. 2) Where there are cycles, many are stereotypical: e.g. A has a
reference to B
and B has a reference to A. When A disconnects, B knows that it should drop
its reference to A. We can handle these with patterns.
3) Faults can be handled with time-outs etc.
4) Programs should be written to expect faults and recover appropriately.
5) Thus, we don't need the expense of complete DGC algorithms. Reference
counting or reference listing suffices.
I'd like to hear some real counter-examples to this argument.
Richard Jones