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


Reply via email to