# Speed Without The Pain: Accelerating Python With Numba (Lecture 2)

- Institution: CERN
- Speaker: Kiran Jonathan
- Year: 2026
- Language: English
- Subjects: Computer science
- Source: [CERN](https://videos.cern.ch/record/3023639)
- Licence: [CERN](https://copyright.web.cern)
- Who can watch: Tweens profiles and older (sources give no ratings; placed by Invisible Network from the source's own words)

## Relevance to iCSC Attendees:

In scientific computing, we often find ourselves at a crossroads when starting a new project: do you reach for a fast, compiled language and sacrifice some development time and readability for performance, or do you reach for good old easy-to-write Python, and prepare to make a few coffees while your simulation or analysis runs? Libraries like Numpy and Scipy do a great job of bridging this divide by providing highly performant compiled backends with simple-to-use Pythonic interfaces. But what do you do when your specific workflow doesn't conform neatly to one of their vectorised functions? When we find ourselves waiting on slow, Python-only for loops, is it time to brush off our C++ skills?

This is where Numba comes in! With a few simple-to-understand decorators, not only can you just-in-time compile your plain Python code to achieve near-compiled performance, but you can also easily implement parallelism into your code – in fact, so easily that it might feel a little suspicious! The best part is that it's able to do all of this without compromising the very things that make Python such an inviting choice in the first place: high readability, fast development, and flexibility.

In these sessions, participants will learn about the difference between compiled and interpreted languages and where that stereotypical Python slowness comes from. We'll go over common use cases to show when you should use something like Numpy, and when you might want Numba instead, whilst giving a practical and hands-on overview of how you can start writing Numba code to speed up your serial (and soon-to-be-parallel) Python code!

By the end, participants will no longer be at a crossroads: they'll be able to achieve speed without the pain!

## Session Details:

Python is ubiquitous in scientific computing due to its ease-of-use and its wide support for valuable data analysis, machine learning, and numerical libraries. However, as an interpreted language,…

## Lectures

1. [Speed Without The Pain: Accelerating Python With Numba (Lecture 2)](https://invisiblenetwork.ai/learn/cern/3023639/fa87bab8dd52), 55 min (CERN's player)
