Martin et al, Here is a series of checkpointed changesets that mutate the latest RC Pharo image. Load the changesets in strict alphabetical order. I made a few small changes compared to Martin's changes, hopefully I didn't miss anything. Note that the changesets S1 through S3 modify SystemDictionary to be a hash based collection. For the SystemDictionary sizes I have in my image, this makes things slower. However, I'd expect that, as the system dictionary grows, using #hash will become faster than using #scaledIdentityHash. If you want to load these changes later, make sure to load changeset A, then S1 through S3, and finally Z (I am hoping B's hacks, which are undone by W, are not needed). Enjoy!... I hope :). Let me know what you think. Andres. Martin McClure wrote:
Stéphane Ducasse wrote:
Ok I see. I would be curious to see if SystemDictionary does not degrade once we load Moose, Mondrian, Glamour....
SystemDictionary is a subclass of IdentityDictionary, which does have some performance problems right around 2K elements, and more severe performance problems at sizes around 4K elements, but it's not nearly as bad as Set and Dictionary.
But the hashed collection hash-spreading and prime table size code I sent yesterday gets rid of those bumps, so it's fast from very small sizes up through sizes > 10000, with very gradual degradation after that.
Regards,
-Martin
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project