Overview
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore trace-based optimizations for enhancing CPython's performance in this 55-minute EuroPython 2011 conference talk. Delve into the CPython VM, understand the concept of tracing, and learn how to modify CPython for tracing purposes. Examine the process of optimizing traces and address the challenges associated with tracing bytecode. Discover lower-level bytecodes, SPAM instructions, and their equivalents. Investigate the main trace-based optimizations, including the optimizer chain, guards, trace initiation, and specialization techniques. Gain insights into the D.O.C. (Dynamic Optimizing Compiler) and the compilation process. Acquire valuable knowledge on making CPython faster through innovative trace-based optimization strategies.
Syllabus
Introduzione
CPython VM
What is Tracing?
Modifying CPython for Tracing
Optimising Traces
Problems with Tracing Bytecode
Lower-Level Bytecodes
SPAM instructions
Tracing with SPAM
SPAM equivalents
SPAM functions (2)
The Main Trace-Based Optimisations
Optimiser Chain
Guards
Starting Trace
Specialisation (1)
Specialiser Output
D.O.C. (3)
Compilation
Thank You For Listening
Making CPython Fast With Trace-Based Optimisations
Taught by
EuroPython Conference