LWN.net Logo

Unladen swallow: accelerating Python

Unladen swallow: accelerating Python

Posted May 7, 2009 9:20 UTC (Thu) by niner (subscriber, #26151)
Parent article: Unladen swallow: accelerating Python

I wonder why the Unladen swallow developers start fresh with an LLVM
backend, when with Parrot, there's already an effort on it's way to do a
register-based VM Python implementation. Seems like duplicated effort for
no obvious gain to me.


(Log in to post comments)

Unladen swallow: accelerating Python

Posted May 7, 2009 9:26 UTC (Thu) by brouhaha (subscriber, #1698) [Link]

Does Parrot compile to native code? (I haven't looked at it in that much detail.) LLVM generally does. LLVM also has a large number of optional optimization passes that can be applied.

On the other hand, the semantic level of LLVM is somewhat lower than that of Parrot.

Unladen swallow: accelerating Python

Posted May 11, 2009 19:45 UTC (Mon) by chromatic (guest, #26207) [Link]

Parrot has a nascent JIT, but it doesn't currently compile to native code. Parrot's intent right now is to provide excellent compiler tools so that multiple languages can interoperate at a calling conventions level. Optimization is a secondary priority. (It's still a priority, but it's not the primary priority at the moment.)

Unladen swallow: accelerating Python

Posted May 7, 2009 10:55 UTC (Thu) by Frej (subscriber, #4165) [Link]

I don't think that using LLVM is starting from fresh.
It has been used by Apple in their graphics pipeline from OS X 10.5
It's the future of some linux drivers as well, known as gallium3D. I think it has already been merged....

Or from the horses mouth... http://llvm.org/Users.html

I'm not saying it's the best or wisest choice. I'm not qualified to do that ;) - just that it's far from starting on a fresh.

Unladen swallow: accelerating Python

Posted May 7, 2009 11:00 UTC (Thu) by niner (subscriber, #26151) [Link]

I didn't mean starting a register based VM from fresh but a Python
implementation based on one.

Unladen swallow: accelerating Python

Posted May 7, 2009 14:12 UTC (Thu) by michaeljt (subscriber, #39183) [Link]

And according to that page, PyPy has LLVM as a target too.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds