Am 19.12.17 um 12:06 schrieb Mariano Martinez Peck: > On Tue, Dec 19, 2017 at 7:40 AM, Andreas Brodbeck <da...@mindclue.ch> wrote: > > Hi Andreas, > > Reading the thread nothing obvious comes to my mind. Sorry. My guy feeling > is that some of the primitives used by FLLargeIdentityDicitonary become > slower in latest VMs. > I guess the main one to check is #fuelPointsTo: (primitive 132) (see the > senders). Maybe you can do a quick test (isolated from your app) and > compare agains old pharo ? > > Another thing would be comparing your scenario using a identity set. Just > save your image before doing this: > > | set dict | > set := FLLargeIdentitySet. > dict := FLLargeIdentityDictionary. > Smalltalk at: #FLLargeIdentitySet put: IdentitySet. > Smalltalk at: #FLLargeIdentityDictionary put: IdentityDictionary. > > And re-run the serialization.
I tried this interchange of FLLarge* with standard dictionaries, like suggested above by Mariano. The results are astonishing: ************************** 240 seconds with FLLarge* classes 111 seconds with standard Pharo classes ************************** Thats a time reduction by more than 50%! Does this mean that FLLarge* classes are obsolete and can be substituted by standard classes? (At least in the newer Pharos versions) Cheers, Andreas -- Andreas Brodbeck www.mindclue.ch