Overview
Explore options for maximizing Python performance in this EuroPython 2017 conference talk. Discover techniques like C extensions, Cython, CFFI, and PyPy to significantly speed up critical Python code. Learn about trade-offs between execution speed and code maintainability, as well as the maturity and ease of use of each method. Examine a real-world programming problem coded and benchmarked using various optimization techniques. Gain insights to make informed decisions on how to achieve up to 100x faster code execution. Access all code examples used in the presentation on GitHub and understand the evaluation criteria for selecting the most suitable performance-boosting approach for your Python projects.
Syllabus
Intro
SECTIONS OF THIS TALK
WHAT THIS IS NOT
WHY DO WE HAVE TO DO THIS?
THE NEED FOR SPEED?
A LOT OF CHOICE..
PERFECTION AT LAST
TECHNOLOGY TAXONOMY
NO CODE CHANGE - IXTO 8X
SHEDSKIN
PYSTON
CYTHON - OPTIMISED 62x
PARAKEET
C EXTENSIONS - THE JOY
C EXTENSIONS - THE AGONY
DEBUGGING C EXTENSIONS IN XCODE
CODE INTERFACES
WHO YOU ARE
OBSTACLES TO BENCHMARKING
BENCHMARK PITFALLS
COMBINING BENCHMARK RESULTS
RANGE OF BENCHMARKS
EVALUATION CRITERIA
NON-TECHNICAL CRITERIA
FUTURE PROOF?
SUMMARY
OTHER OPINIONS
QUESTIONS?
Taught by
EuroPython Conference