Zhong, James;
Hort, Max;
Sarro, Federica;
(2022)
Py2Cy: A Genetic Improvement Tool To Speed Up Python.
In:
(Proceedings) The 11th International Workshop on Genetic Improvement @GECCO 2022.
Association for Computing Machinery: Boston, MA, USA.
(In press).
Preview |
Text
Zhong_2022_GI.pdf - Accepted Version Download (527kB) | Preview |
Abstract
Due to its ease of use and wide range of custom libraries, Python has quickly gained popularity and is used by a wide range of developers all over the world. While Python allows for fast writing of source code, the resulting programs are slow to execute when compared to programs written in other programming languages like C. One of the reasons for its slow execution time is the dynamic typing of variables. Cython is an extension to Python, which can achieve execution speed-ups by compiler optimization. One possibility for improvements is the use of static typing, which can be added to Python scripts by developers. To alleviate the need for manual effort, we create Py2Cy, a Genetic Improvement tool for automatically converting Python scripts to statically typed Cython scripts. To show the feasibility of improving runtime with Py2Cy, we optimize a Python script for generating Fibonacci numbers. The results show that Py2Cy is able to speed up the execution time by up to a factor of 18.
Type: | Proceedings paper |
---|---|
Title: | Py2Cy: A Genetic Improvement Tool To Speed Up Python |
Event: | The 11th International Workshop on Genetic Improvement @GECCO 2022 |
Open access status: | An open access version is available from UCL Discovery |
DOI: | 10.1145/3520304.3534037 |
Publisher version: | https://doi.org/10.1145/3520304.3534037 |
Language: | English |
Additional information: | This version is the author accepted manuscript. For information on re-use, please refer to the publisher’s terms and conditions. |
Keywords: | Genetic Improvement, Python, Performance, Execution Time |
UCL classification: | UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science UCL > Provost and Vice Provost Offices > UCL BEAMS UCL |
URI: | https://discovery.ucl.ac.uk/id/eprint/10149528 |




Archive Staff Only
![]() |
View Item |