HashBits, a lazy way

John M McIntosh johnmci at mac.com
Fri Jul 11 07:40:06 UTC 2003


> From:  "Lex Spoon" <lex at c...>
>  Date:  Fri Jul 11, 2003  1:24 am
>  Subject: 
>
>  John, to solve the issue of transitioning to new VM's, it seems like
>  you could extend your idea about watching a demarcation line in  
> memory.
>  How about making the demarcation line be the young-space/old-space  
> that
>  is already used by the garbage collector? The full invariant would be:
>
>  If an object is in old space, or if it has a non-0 identity hash, then
>  that
>  identity hash is permanent. Otherwise, a permanent hash has not yet
>  been assigned.

No I don't think this is workable due to combinations of  
deferred-hash/hash VM & images. What I
had suggested before is tagging the image using one of the free words  
in the header, then use
a prim call at startup to decided if the image sets need to be  
rehashed, because the image is
contaminated with identitityhash = 0.

Also at start of a 3.6?/7? image to compile if the VM does not  support  
deferred-hash. In this case
performance will degrade, and on a save, then restart with a  
deferred-hash VM, we'll ask to rehash.


--
======================================================================== 
===
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
======================================================================== 
===


More information about the Squeak-dev mailing list