Let me know if I can help in any way.. on this..

On 3/8/12, Nick Ager <[email protected]> wrote:
> Here's hoping that in a similar way to Yanni and the ePUB proposal and
> someone will jump in and say that they are already working on this.
>
> Quoting Eliot:
>
> It's not overambitious for someone good.  And I'd love to see it happen.
>>  But finding time to be a mentor has proven difficult for me in the past.
>>  I'd happily be part-mentor, but I need someone to at least help in the
>> GSoC process...
>
>
>
> so if there is anyone out there that can help Eliot and Igor with mentoring
> or the GSoC process, jump in and offer support.
>
> The proposal:
>
> -----
>
> Name: ARM jitter for Squeak VM
> Level: Advanced
> Possible mentor: Eliot Miranda
> Possible second mentor:  Igor Stasenko
>
> Description
> The Squeak VM is the dynamic virtual machine used for many open-source
> software projects such as Scratch [1], eToys [2], Pharo [3], the Newspeak
> language [4], the innovative web framework Seaside [5] and many others.
> CogVM [6] is a development of the Squeak VM which adds a powerful Intel x86
> JITer [7]. The CogVM JIT has significantly improved the performance of the
> open-source Smalltalk projects which have adapted to use it.
> Increasingly low cost highly capable ARM hardware such as the Raspberry Pi
> [8] and the Beagle Board [9] have become widely available. In addition the
> new version of the one-laptop-per-child is based on the ARM platform [10].
> The Squeak VM compiles for ARM platforms, but currently there is no JIT on
> ARM platforms, significantly decreasing the performance of popular software
> on ARM. The goal of this project is to add simple ARM JITTing capability to
> the CogVM.
>
> [1] http://scratch.mit.edu/
> [2] http://www.squeakland.org/about/intro/
> [3] http://www.pharo-project.org
> [4] http://newspeaklanguage.org/
> [5] http://seaside.st/
> [6] http://gitorious.org/cogvm
> [7] http://en.wikipedia.org/wiki/Just-in-time_compilation
> [8] http://www.raspberrypi.org/
> [9] http://beagleboard.org/bone
> [10] http://one.laptop.org/about/xo-3
>
> Technical Details
> The work would require a interest in virtual machine optimisation, some
> knowledge of Intel x86 and ARM assembler and knowledge of C and dynamic
> languages.
> The Squeak and Cog VM are written in a simplified subset of Smalltalk known
> as slang [11] - which then generates C output and forms the basis of the VM.
> As the Squeak VM is a Smalltalk program, it is developed in Smalltalk, and
> the Cog JIT is no exception.  The VM, including the JIT, is written in
> Smalltalk and run in the context of the Smalltalk IDE, but the JIT still
> generates machine-code that must be evaluated within the Smalltalk
> environment.  On x86 is done by interfacing to an x86 simulator library
> derived from the Bochs x86/x86-64 PC simulator, written in C++.
>  Implementing the ARM port should be no different.  The first task will be
> to choose and interface to a suitable ARM simualtor/emulator.  Once this is
> working, the ARM code generator can be incrementally developed within
> Smalltalk.  Finally once the simulator is fully functional one can get down
> and dirty with an actual physical ARM machine - such as the Raspberry Pi or
> Beagle Board.
> [11] http://wiki.squeak.org/squeak/2267
>
>
> Benefits to the Student
> The student will gain an in-depth knowledge of virtual machine
> optimisation, working in a productive innovative environment - it's
> great fun to be able to implement a JIT in a safe high-level dynamic
> language, instead of the traditional route of developing in C/C++ and
> debugging in GDB.
> The student will have the satisfaction of seeing performance gains for a
> range of high-profile projects which use the Squeak VM on ARM.
>
> Benefits to the Community
> The Smalltalk community will gain an initial implementation of an ARM
> Jitter which can then be further developed along-side the x86 dynamic
> translation work. An ARM Jitter for the CogVM will improve the performance
> of many notable open-source projects on low-cost ARM hardware, bringing
> innovative software and development environments to wider community.
>
> ----
>
> Cheers
>
> Nick
>

Reply via email to