Jost Migenda
Jost is a Senior Research Software Engineer at King’s College London, where they work on software projects ranging from astrophysics to Trusted Research Environments for analysing medical data. They are a certified Carpentries instructor and regularly develop and deliver training courses, with a focus on Python and high-performance computing for researchers.
Jost received a PhD in astroparticle physics from the University of Sheffield and is a maintainer of several widely used supernova neutrino codes, including SNEWPY and sntools.
they/them
King’s College London
Senior Research Software Engineer
Session
Does your code feel too slow? Do you want to speed it up, but don’t know where to start?
This tutorial introduces attendees to the fundamentals of profiling in Python—why, what, when and how to profile. We start by using Python’s built-in cProfile module to figure out which parts of the code take up most of the runtime, then introduce a third-party module to visualise profiling results and get an overview over the function call hierarchy. In the second half, we use a line-level profiler to precisely pinpoint even a less obvious performance issue, before closing with an outlook on new profiling features coming in Python 3.15 this autumn.
Throughout the tutorial, we include interactive exercises that build on each other. Attendees will get hands-on experience using these tools to systematically investigate performance issues in a Python code base.