[soc2008-general] Bytecode optimization proposal

Nadav Rotem nadav256 at gmail.com
Sun Mar 9 20:13:39 CET 2008


Hello,


My name is Nadav Rotem and I am a graduate student at Haifa University. 
My research is focused on compiler optimizations. I am interested in 
participating in this year's GSoC with the Python Software Foundation.


In the past year, I have researched Python-Bytecode level optimizations. 
The goal of my research is to provide a library with decorators for use 
in Python programs. Like Psycho, my goal is to create a library that the 
user can import without changing the structure of the program or the 
compiler. The decorators load the code-object from a Python method and 
optimize it.  In my research, I have finished implementing optimizations 
such as Inlining, Unrolling, DCE, CSE, etc. I am able to show up to 30% 
speedups on some benchmarks.


Here is a partial list of benchmarks:


Name            Before(Sec)  After   Gain
Pystone         2.551       2.090   0.2202
Pypy MD5        3.247       2.616   0.2411
RSA MD5         8.730       6.957   0.2548
Pypy SHA        25.020      20.836  0.2008
Crypto.Rijndael 144.443     109.943 0.3137


At the moment I have several decorators implemented.  Some perform safe 
optimizations such as "Method Inlining" and others provide unsafe 
optimizations such as optimizations which are specific to numeric code. 
In the GSoC project, I intend to provide a fully open source library for 
use by Python users who would like to accelerate the execution of their 
Python programs.

 

If anyone is interested in being my mentor for this project, please 
contact me.



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/soc2008-general/attachments/20080309/6fc59bb2/attachment.htm 


More information about the soc2008-general mailing list