On Fri, Dec 22, 2017 at 9:40 AM, Andreas Brodbeck <dassi@mindclue.ch> wrote:
Am 19.12.17 um 11:40 schrieb Andreas Brodbeck:
> Am 18.12.17 um 20:45 schrieb Henrik-Nergaard:
>
> So: It's not the storage! It's something inside Fuel. I keep
> investigating and will update here.

... so here are my latest findings:

I took both images onto the same machine, a Mac. And these are the
differences of the same Fuel serialization:

*********************
Fuel 2.1.10 Pharo 6.1 (#60520) 64bit: 90 seconds
Fuel 2.1.10 Pharo 6.1 (#60527) 32bit: 245 seconds
*********************

For the record, here the versions of the two (equal) VMs:

VM 32bit: 5.0 5.0.201707201942 Mac OS X built on Jul 20 2017 21:45:23
UTC Compiler: 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)
[Production Spur VM]

VM 64bit: 5.0 5.0.201707201942 Mac OS X built on Jul 20 2017 21:08:05
UTC Compiler: 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)
[Production Spur 64-bit VM]



I didn't expect the 64bit version to be a faster VM generally. What
could be the reason here?


We have a special cluster for numbers that when they fit there, the serialization is faster (see #clusterClassForSmallInteger:). If bigger than the allowed range then it follows the slower kind of variable/indexed object.��
Another possibility could be Floats.
Can you check in your debug if you have a cluster (FLSmallIntegerCluster subclass ) with MANY numbers?
Else, check with many floats..

I think it should be somehow related to that...

Cheers,


��

Cheers, Andreas

--
Andreas Brodbeck
www.mindclue.ch





--