I remember there was a discussion about that somewhere but I can't find it. I cc vm-dev they may have a clue.

When copying a pointer object in 64 bits instead of 32 bits, you need to copy twice many data, so it is going to be slower in any case. 2.63 times slower seems to be too much however.

The latest Pharo 64 bits image can be found here:��https://ci.inria.fr/pharo/job/Pharo-6.0-Update-Step-3.1-64bits/

The latest Pharo 64 bits VM can be found here:��https://bintray.com/opensmalltalk/vm/cog

Best,

On Sun, Feb 5, 2017 at 1:27 PM, Ciprian Teodorov <ciprian.teodorov@gmail.com> wrote:
Hi all,

I'm very happy to see that the 64 bit Pharo vm is progressing.
I've even managed to get a ~6.85 GB heap allocated (see��http://bit.ly/2lbp8n6).
This is great!

There seems however to be a small problem with the #shallowCopy message, which is 2.63 times slower on the 64bit VM (image/vm details bellow).

The bench that I used is a simple random graph analysis tool that is intended to do a lot of random memory accesses on big heaps, which is accessible at��http://www.smalltalkhub.com/#!/~CipT/PlugMC
In this case I expect the execution time to be dominated by the Set implementation (which is the case with pharo 5 -- see��http://bit.ly/2lbzJhd), and not by the array copy (see http://bit.ly/2kvbqvy).

Is this a 64bit limitation, or only a feature "not yet available" ?
Where can I access the latests versions of 64 bit pharo image and vm ?

Image
-----
/Users/ciprian/Downloads/Pharo64/60371-64/Pharo64-60371.image
Pharo6.0
Latest update: #60371
Unnamed

Virtual Machine
---------------
/Users/ciprian/Downloads/Pharo64/Pharo 4.app/Contents/MacOS/Pharo
CoInterpreter * VMMaker.oscog-eem.2111 uuid: 7c02b557-bdcc-4a91-92b1-7fc15f1e8605 Jan 27 2017
StackToRegisterMappingCogit * VMMaker.oscog-eem.2111 uuid: 7c02b557-bdcc-4a91-92b1-7fc15f1e8605 Jan 27 2017
VM: 201701271449��https://github.com/pharo-project/pharo-vm.git��$ Date: Fri Jan 27 15:49:20 2017 +0100 $ Plugins: 201701271449��https://github.com/pharo-project/pharo-vm.git��$

Mac OS X built on Jan 27 2017 15:28:14 UTC Compiler: 4.2.1 Compatible Apple LLVM 7.3.0 (clang-703.0.31)
VMMaker versionString VM: 201701271449��https://github.com/pharo-project/pharo-vm.git��$ Date: Fri Jan 27 15:49:20 2017 +0100 $ Plugins: 201701271449��https://github.com/pharo-project/pharo-vm.git��$
CoInterpreter * VMMaker.oscog-eem.2111 uuid: 7c02b557-bdcc-4a91-92b1-7fc15f1e8605 Jan 27 2017
StackToRegisterMappingCogit * VMMaker.oscog-eem.2111 uuid: 7c02b557-bdcc-4a91-92b1-7fc15f1e8605 Jan 27 2017


Cheers,
--
Dr. Ciprian TEODOROV
Enseignant-chercheur
ENSTA Bretagne

t��l : 06 08 54 73 48

mail :��ciprian.teodorov@gmail.com
www.teodorov.ro