Brett Cannon wrote:
On Tue, Feb 10, 2009 at 18:45, Benjamin Schwartz <bmschwar@fas.harvard.edu>wrote:
...
According to ARM [4]:
"""Jazelle RCT can be used to significantly reduce the code bloat associated with AOT and JIT compilation, making AOT technology viable on mass-market devices. It can also be used to support execution environments beyond Java, such as Microsoft .NET Compact Framework, Python and others."""
"""Jazelle RCT provides an excellent target for any run-time compilation technology, including JIT and AOT for .NET MSIL, Python and Perl as well as Java. ARM is working with leading software providers to enable solutions ready for market with Jazelle RCT.""" ... Question: ARM is specifically claiming that these instructions can be used to accelerate Python interpretation.
Wow, really? One of the links below mention that?
Yes. The quotes above from [4], as well as the white paper [6]. No specific data, just these broad claims.
What would the process be to incorporate the use of ThumbEE instructions into CPython?
Well, this all depends on how you try to integrate the instructions. If you hide it behind the macro or in a clean way that does not penalize skipping the instructions then you write a patch. But if this can't be done it would be better to maintain an external set of patches against trunk for this.
Interesting. Sugar Labs will probably not attempt this if we would have to maintain a patched interpreter forever. However, I hope it will be possible to integrate into CPython in a manner that does not uglify the code or affect other architectures. Anyone else interested in ARM? ThumbEE support would benefit anyone running Python on recent ARM chips. Maybe we need to create a working group/project team/whatever.
[4] http://www.arm.com/products/multimedia/java/jazelle_architecture.html [6] http://www.arm.com/pdfs/JazelleRCTWhitePaper_final1-0_.pdf