New Cog VMs available

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

New Cog VMs available

Eliot Miranda-2

CogVM binaries as per VMMaker.oscog-eem.1370/r3386

Add the ARMv5/ARMv6 Cog Spur JIT VM!

Add explicit read barriers to primitives which access an argument as the
receiver (i.e. the mirror primitives).  Don't check if the actual receiver is
used.  Simplify failure where appropriate cuz the primitives will be retried.

Add -fwrapv to all linux gcc builds (to insist on 2's complement arithmetic)
and add makeallclean, making makeall do the dirty build.

Provide a -exitonwarn command line switch for the Mac and Unix VMs to allow for
CI testing of asserts.

Unix: restore the SCCS revision after the version number in -version output.

Spur:
Remember to count shrink requests

Cogit:
Fix bug in rewriting compiler primitives on module unload, etc.  The old code
didn't change the assignment to the primitiveFunctionPointer, which is needed
for correct management of failing primitive calls on Spur.  Simplify the post
compile hook to eliminate the label parameter; this is local to the Cogit.

ARM Cogit:
Use out-of-line literals for compactness.
--
best,
Eliot
Reply | Threaded
Open this post in threaded view
|

Re: New Cog VMs available

Stephan Eggermont-3
On 21-06-15 03:26, Eliot Miranda wrote:
> ... at http://www.mirandabanda.org/files/Cog/VM/VM.r3386
>
> CogVM binaries as per VMMaker.oscog-eem.1370/r3386
>
> Add the ARMv5/ARMv6 Cog Spur JIT VM!

Oh, that's great news! Thanks to all who made this possible.

Stephan



Reply | Threaded
Open this post in threaded view
|

Re: New Cog VMs available

Attila Magyar
In reply to this post by Eliot Miranda-2
Eliot Miranda-2 wrote
... at http://www.mirandabanda.org/files/Cog/VM/VM.r3386

CogVM binaries as per VMMaker.oscog-eem.1370/r3386

Add the ARMv5/ARMv6 Cog Spur JIT VM!
Thanks. This is a huge improvement compared to the stack vm. I've just tried it on my Raspberry pi, with this image http://files.pharo.org/image/50/latest-spur32.zip.

arm cog on raspberry pi 2 model b:
  1 tinyBenchmarks.  ->  '110726643 bytecodes/sec; 7349080 sends/sec'

stackvm on raspberry pi 2 model b:
  1 tinyBenchmarks.  ->  '15108593 bytecodes/sec; 865704 sends/sec'

My app also runs noticeably faster.