# [gclist] Re: gclist-digest V2 #96

**Michael Spertus**
mps@geodesic.com

*Mon, 15 Dec 1997 11:40:12 -0600*

At 10:40 PM 12/10/97 -0500, P. T. Withington wrote:
>*At 13:09 -0800 12/10/97, Giuliano Carlini wrote:
*>>*Mike exagerates a bit here, bit just a bit. Theoretically
*>>*it is not precise, but practically speaking it is.
*>>*
*>>*There is a very small chance that a random integer will
*>>*correspond to a block. Consider a 2^N heap all of whose
*>>*data are uniformly distributed integers. The chance of any
*>>*1 integer corresponding to some block is 2^(N-64). The chance
*>>*that some integer corresponds to some block is 2^(2N-64). For
*>>*a 16M heap purely of integers the chance that some block will
*>>*be falsely retained is therefore 1/64K.
*>>*
*>>*The usual facts and techniques make it much less likely than
*>>*that.
*>*
*>*Ah, cute.
*>*
*>*But won't this effect only last as long as we are only porting 32-bit
*>*applications to 64-bit machines? 2^64 is a very big number, but 2^18 was
*>*considered so in its day, too. I've run Lisp images with 500M heaps,
*>*which, if I did my math right puts the odds at ~ 1/1000...
*>*
*You did your math right. However, the situation is much better than that.
If this kind of calculation was a good barometer, conservative collection
would be essentially useless on 32-bit machines. However, data values are
not equidistributed, collectors blacklist, and large opaque objects can
usually be labeled if necessary. All of these difference *benefit*
conservative collectors. Even on large 32-bit programs, conservative
collection works quite well, and it will be many decades, if ever, before
conservatism is a problem with 64-bit collectors.
Michael Spertus mps@geodesic.com
Geodesic Systems (312) 832-1221
414 N Orleans, Suite 410 http://www.geodesic.com
Chicago, IL 60610