CPython, Grumpy, PyPy- When, How, Why?

By Itay Weiss

Elevator Pitch

I will talk about the differences between the three implementations. Focusing on use cases in which each of them should be used and a drill-down to how each environment tackles performance (GIL, just-in-time and Goroutines). I will also evaluate performance impact in real life scenario.

Description

  • Introducing myself.
  • Making a distinction between Cpython and Python.
  • Cpyhton (history, movement to GitHub).
  • GIL -What is it and how it affects us?
  • MultiThreading vs MultiProcessing.
  • Twisted/async.io(3.6)
  • Drill down to PyPy and the JIT.
  • A bit about STM and how PyPy are trying to get rid of the GIL.
  • Example of when to use PyPy (and how)
  • Drill down to Grumpy
  • Grumpy performance demo
  • Example of when to use Grumpy and how.
  • Cpython vs grumpy vs pypy (super high level)

This takes exactly 40 minutes and leaves 5 minutes for Q&A.

Notes

I have already given this talk during PyCon Israel https://youtu.be/_y00S29mK1A