[squeak-dev] [4.2] - VM <-> image release coordination

David T. Lewis lewis at mail.msen.com
Tue Jan 4 16:27:52 UTC 2011


On Tue, Jan 04, 2011 at 08:45:12AM +0100, Levente Uzonyi wrote:
> On Mon, 3 Jan 2011, Eliot Miranda wrote:
> 
> >On Sun, Jan 2, 2011 at 11:38 PM, Levente Uzonyi <leves at elte.hu> wrote:
> >
> >>Quoting Chris Muller <asqueaker at gmail.com>:
> >>
> >> Levente wrote:
> >>>
> >>> I think we should wait for the new VMs, before releasing the new images.
> >>>>
> >>>
> >>>Hi Levente,
> >>>
> >>>I did agree, but now that Eliot is on a tear with a new code
> >>>generator, the first official release might still be some weeks away.
> >>>Someone please correct me if that is a misstatement.
> >>>
> >>>It seems unlikely 4.2 will be incompatible with whatever ends up being
> >>>the first official Cog release.  We should consider pushing it out the
> >>>door so we can re-open the trunk to new featurey.
> >>>
> >>
> >>That's right, Cog's recent improvements introduced some instability. So I
> >>think we should release Squeak 4.2 with SqueakVM only and postpone the
> >>multi-VM release. We can also make the release cycle of Squeak 4.3 shorter
> >>to catch up with the two release per year policy and deliver the VM
> >>improvements earlier. I'm also sure that a lot of improvements will be 
> >>done
> >>till April/May on both image and VM side.
> >>
> >
> >It would be my preference to release with the Cog VM using the naive
> >SimpleStackBasedCogit code generator.  After all that's worth at least 3x
> >over the standard VM whereas the unstable StackToregisterMappingCogit is
> >only ~ 8% faster than SimpleStackBasedCogit.  It's quite easy for me to
> >generate either; the two coexist in the same VMMaker.
> 
> Okay, then I guess we should make sure that the two VMs (SqueakVM and
> CogVM with SimpleStackBasedCogit) behave the same way in most cases. 
> Here's an incomplete list of VM differences:
> - CogVM does compile the FloatMathPlugin properly (no crash), but SqueakVM 
> doesn't or it does without optimizing the code. Wwe can apply some 
> optimization for most methods, see the makefiles of Cog.

This is already done, so no issue for the new VMs.

> - CogVM doesn't support the new finalization scheme
> - there's no SoundPlugin in CogVM on windows
> - the SocketPlugin of CogVM seems to be missing the new primitives
> - AllocationTest >> #testOneGigAllocation is still failing with CogVM

There are definitely differences, as the Cog and standard VMs are
currently built from separate code bases for both the support
code and the generated code (VMMaker).

> - I'm not sure if SqueakVM has all of the mirror primitives

It does not. I have been looked at this over the past week myself,
but I'm afraid it's a bit beyond my abilities to incorporate.
Possibly Eliot can coach me a bit to get it done, but for planning
purposes you should assume that the standard VM does not have
mirror primitive support.

Dave




More information about the Squeak-dev mailing list