Öppna kurser

This hands-on course examines techniques and tools for speeding up your Python apps.

Utbildningsmål

  • Identify bottlenecks in your apps.
  • Use concurrent execution to make better use of your computer's resources.
  • Speed up numerical apps using NumPy.
  • Gain performance improvements using JIT compilation.

Målgrupp

This course is for experienced Python programmers looking to expand their Python experience.

Förkunskaper

This is an advanced course that assumes familiarity with Python programming. However, it applies to all Python communities (e.g., web development, data science, automation).

Innehåll

Module 1: Profiling

  • Measuring execution time
  • cProfile
  • py-spy

Module 2: Concurrency

  • Concurrency in Python
  • threading
  • asyncio
  • multiprocessing

Module 3: Improving performance

  • Basic optimisations
  • NumPy
  • Numba
  • JAX
  • PyPy
  • Cython