Making Python Fast: Using Hardware-Software Co-design to Address Inefficiencies in Dynamic Language Runtimes
- đ¤ Speaker: Berkin Ilbeyi, Cornell
- đ Date & Time: Wednesday 20 June 2018, 11:00 - 12:00
- đ Venue: SW01, Computer Laboratory
Abstract
Dynamic programming languages such as Python and JavaScript are becoming increasingly popular, and this motivates the need for just-in-time (JIT) compilation to close the productivity/performance gap. Unfortunately, developing custom JIT -optimizing virtual machines (VMs) requires significant effort. Recent work has shown the promise of meta-JIT frameworks, which abstract the language definition from the VM internals. PyPy, a JIT -optimizing VM for the Python language, and its meta-tracing JIT compiler is a good example for this. Meta-JITs can enable automatic generation of high-performance JIT -optimizing VMs from high-level language specifications.
While meta-JIT approaches can narrow the performance gap between dynamic and static languages, dynamic language performance is still typically an order of magnitude slower. In this talk, I will be giving an introduction to PyPy and the meta-tracing JIT technique, and discuss sources of inefficiencies in PyPy’s execution. I will also present some of our ongoing work on using specialized hardware to discover data patterns in PyPy’s JIT -compiled code, produce more speculative JIT -compiled code using these patterns, and offload some of the run-time checks (guards) to hardware.
Bio: Berkin Ilbeyi is a final-year PhD student at Cornell University. He is advised by Christopher Batten at the Computer Systems Laboratory, part of the Electrical and Computer Engineering Department. His research interests lie in the intersection of computer architecture and just-in-time-compiling virtual machines for dynamic languages.
Series This talk is part of the Computer Laboratory Computer Architecture Group Meeting series.
Included in Lists
- All Talks (aka the CURE list)
- bld31
- Cambridge talks
- Computer Laboratory Computer Architecture Group Meeting
- Department of Computer Science and Technology talks and seminars
- Interested Talks
- School of Technology
- SW01, Computer Laboratory
- Trust & Technology Initiative - interesting events
- yk449
Note: Ex-directory lists are not shown.
![[Talks.cam]](/static/images/talkslogosmall.gif)

Berkin Ilbeyi, Cornell
Wednesday 20 June 2018, 11:00-12:00