[update 1.1] #11283

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[update 1.1] #11283

Marcus Denker-4
#11283
======

Hashed collection performance improvement, phase 3 of 4.

Changes identityHash to cover most of the positive SmallInteger range, and uses good prime table sizes. This makes large hashed collections much faster, and does not penalize the small ones.

Targeted at Pharo Core 1.1-11280

Load the slice for each phase in order. Allow maybe half an hour to load all four phases; the intermediate phases load very slowly due to existing hashed collections running in "slow but safe" mode while their hash function changes under them.

In phase 3:

* Identity hash values are changed.

* Set>>growSize, rendered obsolete by phase 2, is removed.

* A "Rehasher" class is added

* Rehasher class>>initialize rehashes all hashed collections.

Phase 3 takes several minutes to load, due to load and rehashing taking place in "slow but safe" mode.
--
Marcus Denker  -- http://www.marcusdenker.de
INRIA Lille -- Nord Europe. Team RMoD.


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project