[pypy-dev] minimum system requirements, build configuration
Liam Staskawicz
lstask at gmail.com
Tue Apr 5 17:08:57 CEST 2011
Hi David, thanks for the quick response.
On Tuesday, April 5, 2011 at 7:18 AM, David Schneider wrote:
> Hi Liam,
>
> On Tue, Apr 5, 2011 at 07:25, Liam Staskawicz <lstask at gmail.com> wrote:
> > Hi - I've been looking at pypy as a possible application runtime in an ARM9
> > Linux based system. I understand that the in-progress ARM jit backend
> > targets only ARMv7, but I'm still interested in characterizing a translated
> > pypy-c interpreter on this system with regard to CPU and memory usage. Of
> > course I look forward to possible ARMv5 support for the jit in the future,
> > but if I've understood correctly, fully interpreted mode should be supported
> > - please let me know if this is not correct!
>
> This is correct, the non-jitted version can be cross-translated to
> ARM. Although it still only supports the Boehm GC so running PyPy
> without the JIT will be slower than CPython. The JIT currently targets
> the ARMv7 architecture, we have not tested on an ARMv5 processor yet,
> but it would be interesting to see what is missing for compatibility
> with ARMv5.
I see - non-jitted is perhaps not such an interesting option at the moment then, I suppose. Are the other GC options not available because they rely on the jit, or is it another dependency?
I'll try to find some time to look into what's required for ARMv5 support. If you have any thoughts on particularly ARMv7-centric functionality in the current port that would need to be addressed, that would be interesting to know.
>
> > To that end, are there minimum recommended system requirements for pypy,
> > specifically in terms of memory? As a reference, something like the Mono
> > 'Small Footprint' wiki page applied to pypy would be what I'm looking
> > for: http://www.mono-project.com/Small_footprint
> At this point in time we have no official minimum requirements to run
> pypy on ARM, but (quoting Armin) probably anything starting from 64MB
> should be fine, depending on the application. The BeagleBoard which is
> used to develop the ARM backend has 512 MB and pypy works fine on it
> so far.
OK, good to know - thanks!
>
> > On a related note, most of the build config info I've come across seems to
> > revolve around a scratchbox2 build environment targeting maemo - indeed it
> > seems to be the main other 'platform' option in the pypy build script, other
> > than 'host'. Is there any particularly tight coupling between maemo and
> > pypy, or should I hope to be able to set up a generic sbox2 environment for
> > my target and come away with a working build? Are there any other docs or
> > config snippets that detail how to set up a generic cross compile
> > environment for pypy?
>
> We used the scratchbox2 because it allows to create an environment
> which can cross-compile programs, but also run small programs in a
> context similar to the target environment. This is used to gather
> information about the target, required for the translation.
> For the ARM backend we are using an Ubuntu rootfs with the build-tools
> installed and the gcc-arm cross compiler installed on the host. The
> translation toolchain only needs to now the name of the sb2
> environment in which to compile and execute the programs. One thing to
> note is that the Python interpreter on the host must match the target
> system in the sense of 32/64 bit. Besides these points any sb2
> environment could be used to try the translation for a given target.
Sounds good - I'll give it a shot. Thanks again.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/pypy-dev/attachments/20110405/145e16f7/attachment.html>
More information about the Pypy-dev
mailing list