[Vm-dev] how can I build a sista spur 64 vm?

David T. Lewis lewis at mail.msen.com
Tue Mar 24 22:25:13 UTC 2020


Hi Robert,

You do not need to build a VM to get Sista. Eliot put all of the
Sista support into the VM a long time ago, so if you are any VM
from the last year or two, it will have the necessary Sista support.

To activate Sista in your Squeak image, start with a Squeak 5.3 image,
set the update URL preference to point to http://source.squeak.org/trunk,
and update your image. The update will switch your image over to use
Sista.

Dave


On Tue, Mar 24, 2020 at 08:55:09PM +0000, Robert wrote:
> An update.
> 
> I fetched and merged the changes in opensmalltalk-vm.
> I go to the image directory.
> I run updatespur64SistaV1image.sh
> Then, as there is no vmmaker script for Sista, I launch # squeak trunk6-sista-64.image &
> Goto file list and select the file BuildSqueakSpurTrunkVMMakerImage.st and filein.
> An error occurs from MultiByteFileStream(PositionalStream)>>#skipStyleChunk with this error:
> 
> #primGetPosition: failed. I think it is in the middle of reading in the BuildSqueakSpurTrunkVMMakerImage.st, as in that is what the MultiByteFileStream is opened upon.
> 
> So what do I need to do Sista? Get a VMMaker image with Sista loaded, which is what I thought BuildSqueakSpurTrunkVMMakerImage.st does. But it fails.
> 
> k, m
> 
> On 3/24/20 2:46 PM, Robert wrote:
> 
> > Hi Dave,
> >
> > I thought I saw something about it. This is great! I'm git stupid, how can I force merge with git to pull the latest vm code, to overwrite my locally generated files? Which version of VMMaker is appropriate?
> >
> > quotar at ganymede:~/tribe/opensmalltalk-vm$ git pull
> > remote: Enumerating objects: 619, done.
> > remote: Counting objects: 100% (619/619), done.
> > remote: Compressing objects: 100% (61/61), done.
> > remote: Total 645 (delta 523), reused 617 (delta 521), pack-reused 26
> > Receiving objects: 100% (645/645), 8.11 MiB | 2.30 MiB/s, done.
> > Resolving deltas: 100% (526/526), completed with 117 local objects.
> > From https://github.com/OpenSmalltalk/opensmalltalk-vm
> >    1861db582..00de58438  Cog        -> origin/Cog
> >  * [new tag]             202003021730 -> 202003021730
> > Updating 1861db582..00de58438
> > error: Your local changes to the following files would be overwritten by merge:
> >
> > I'm excited!
> >
> > Kindly,
> > mumbles
> >
> > On 3/24/20 2:40 PM, David T. Lewis wrote:
> >
> >> Hi Cl??ment,
> >>
> >> Sista works fine on 64 bits :-)
> >>
> >> Eliot added the necessary image support to Squeak, based on your eariler
> >> Pharo implementation. We switched Squeak trunk over to Sista in trunk
> >> a few weeks ago, and have had no problems at all. All Squeak development
> >> is proceeding with Sista as the default bytecode, and most of us are
> >> on 64-bits.
> >>
> >> So thank you!
> >> Dave
> >>
> >> On Tue, Mar 24, 2020 at 06:58:37PM +0100, Cl??ment B??ra wrote:
> >>
> >>> Hi Robert,
> >>>
> >>> I worked on sista and I don't think I have ever tried it on 64 bits. I run
> >>> my experiments on x86. My expectation for 64 bits is that you have to write
> >>> build files inspired from the 32 bits
> >>> sista.spur and the 64 bits cog.spur files. Then you have to run it in the
> >>> VM simulator and fix the various few problems you see (likely a few
> >>> instructions are not implemented in the
> >>> x64 back-end). Then you can build a system. It's not so much work.
> >>>
> >>> There was a released alpha version of Sista [1], which I used to run the
> >>> benchmark of a research paper [2]. If you compile a VM with sources from
> >>> that time (recent sources have difference
> >>> that will break it), and follow the guidelines from the blog post [1], you
> >>> should be able to reproduce the benchmark results from the paper.
> >>>
> >>> As I remember it, most benchmarks run without crashes at 1.5x and the
> >>> development tools could be run for a while without crashes. Debugging and
> >>> on-the-fly code changes in sista are
> >>> only partially implemented (there's the potential to do it, but one has to
> >>> implement it). I would say it is currently in a similar state as the
> >>> strongtalk VM [3], while being compatible with
> >>> Squeak and other Cog clients.
> >>>
> >>> I don't know what you mean by operational. If you're looking to experiment
> >>> with it, tweak it to run some benchmarks, then you should be able to do it.
> >>> If you're looking to deploy an application
> >>> on a production VM, then significant work is left to do so (discuss
> >>> directly with Eliot if that is the case).
> >>>
> >>> Have fun with the project :-)
> >>>
> >>> [1]
> >>> https://clementbera.wordpress.com/2017/07/19/sista-open-alpha-release/
> >>> [2]
> >>> https://hal.inria.fr/hal-01596321/
> >>> [3]
> >>> http://strongtalk.org/
> >>> On Mon, Mar 23, 2020 at 3:43 PM Robert
> >>> [<robert.withers at pm.me>](mailto:robert.withers at pm.me)
> >>> wrote:
> >>>
> >>>> I understand that Sista is operational. I would like to try. How can I
> >>>> build a Sista vm? I went to linux64x64/squeak.sista.spur and there is a
> >>>> file there NotYetImplemented.
> >>>>
> >>>> I appreciate any guidance.
> >>>>
> >>>> --
> >>>> Kindly,
> >>>> Robert
> >>>
> >>> --
> >>> Cl??ment B??ra
> >>> https://clementbera.github.io/
> >>>
> >>> https://clementbera.wordpress.com/
> >
> > --
> > Kindly,
> > Robert
> 
> --
> Kindly,
> Robert


More information about the Vm-dev mailing list