SWD6: High performance Python
Booking for this course is through the IT Training Unit. Click here to book
Workshop content
Over the past few years, Python and the wider Python ecosystem have become invaluable tools in scientific computing and data analytics. As Python is (for the most part) an interpreted language there are complaints that Python code can be quite slow to execute. In this hands-on workshop you will have the opportunity discover and use a set of tools and techniques that can be used to improve the execution speed of your Python code. The workshop will introduce a number of ways to both measure the efficiency of your code and improve it’s speed of execution by introducing strategies for fast and scalable computation with Python.
At the end of the workshop, attendees will be able to:
Profiling code with cProfile and line_profiler
Using numpy
Compiling to C: using Cython and Numba
Compiling to C: using PyPy
Parallel programming in Python with multiprocessing and ParallelPython
Tips for using less RAM
Case studies and discussion
Prerequisites
We recommend that attendees have a working knowledge of the Unix shell (although this is not essential) and are proficient Python programmers. If you need to learn how to program in Python, please attend SWD1a: Introduction to Python programming. It is strongly recommended that you bring your own laptop to this workshop with some specific software installed. Further information will be provided when you are accepted onto the course.
Duration
1 day
Frequency
This workshop usually runs once each academic year.
If you would like a bespoke version of this course run in your department then please contact us.
Suitability
Research postgraduate students and above; teaching and lecturing staff.