[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