Skip to course content

Writing High-Performance Python Code

Teach developers profiling and optimisation techniques to write memory- and compute-efficient Python code.

Get Course Info

Audience: Developers, data analysts, data scientists

Duration: ½ – 1 day

Format: Lectures and hands-on labs (50 % lecture, 50 % lab)

Overview

Learn good coding discipline, profiling, and optimization to avoid bottlenecks and write fast Python.

Objective

Teach developers profiling and optimisation techniques to write memory- and compute-efficient Python code.

What You Will Learn

  • Well-architected Python project structure
  • Python execution architecture & VM
  • Profilers (cProfile) & timing
  • Algorithmic complexity of collections
  • NumPy for fast numeric ops
  • Compiling to native code with Cython

Course Details

Audience: Developers, data analysts, data scientists

Duration: ½ – 1 day

Format: Lectures and hands-on labs (50 % lecture, 50 % lab)

Prerequisites:

Basic Python knowledge

Setup: Python dev environment (Anaconda recommended)

Detailed Outline

  • Modeling, running, testing
  • Timing, cProfile
  • VM, CPU/memory/cache
  • Lists vs arrays, dicts, sets, heaps
  • Converting numeric code
  • Python compilers, Cython

Ready to Get Started?

Contact us to learn more about this course and schedule your training.