Demystifying Parallel Programming in Python: from CPU to quantum processors, including GPU and TPU

Gaël Pegliasco

PyData & Scientific Libraries Stack
Python Skill Intermediate
Domain Expertise Novice

Demystifying Parallel Programming in Python

Understanding the Hardware Basics

  • A gentle introduction to modern processors: What are CPUs, GPUs, TPUs, and quantum processors?
  • Essential terminology explained: cores, hyper-threading, cache memory, multithreading, multiprocessing, multitasking, SIMD, NUMA, and more—no prior knowledge required!

Parallel Programming Techniques for Beginners

A practical overview of Python’s parallel programming tools, organized by approach:

  • Just-In-Time (JIT) compilation: Speed up your code without changing your workflow
  • Multithreading: Do more at once, and removing the GIL with Python 3.13+
  • Multiprocessing: Use all your CPU cores
  • Distributed computing: Scale your code across multiple machines
  • Quantum programming: A first look at the future of computing

Hands-On Examples

  • JIT compilation made easy: PyPy, Numba, and JAX
  • The GIL and Python 3.13: What’s changing and why it matters
  • Distributed computing for everyone: Celery and Dask on HPC clusters
  • GPU computing for beginners: CuPy, cuDF, and Numba
  • Your first quantum “Hello World”: A taste of the quantum revolution

Conclusion

By the end of this talk, you’ll have a clear map of Python’s parallel programming landscape. No experience needed—just bring your curiosity and let’s explore together!

Gaël Pegliasco

Python Developer & Trainer Specializing in Machine Learning and Parallel Computing with NumPy, Pandas, Scikit-Learn, TensorFlow, PyTorch, MPI, Dask, and more.