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

Robert robert.withers at pm.me
Tue Mar 24 23:01:56 UTC 2020


Awesome, I guess I am running Sista now. That's what the bytecode set 
is. Thanks for making this such a breeze!

K, m

On 3/24/20 6:25 PM, David T. Lewis wrote:
> 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

-- 
Kindly,
Robert




More information about the Vm-dev mailing list