* 64-bit aware hashing functions as the current ones are 32-bit centric.
This issue might not be the most urgent because the 32 bit hash
functions should be sufficient to deal with at least moderately sized 64
bit images. But how much stuff would you have to allocate before seeing
a problem?
Suppose object headers are 16 bytes and your hash functions are
producing 28 bits' worth of data. Clearly hashing 2^28 objects with
zero instance variables and zero byte data is kind of silly, so we put
in at least one instance variable making those objects at least 24
bytes. Then you also need a hashed collection with a single table large
enough to hold all those objects (ignoring e.g. hash buckets), the load
factor of which will be kept at 80%. So...
24 * 2^28 * 4 // 5 + (2^28 * 8) => about 7gb
So, the current hash functions should be fine for images up to 7gb in
size, and probably much larger than that because 7gb is the rock bottom
low estimate. Probably one might hash strings or other objects with
more data than 8 bytes. In that case, the low bound in that case will
be higher.
Andres.