Webinar: Optimizing Python Code for Better Performance
This course is addressed to life scientists, bioinformaticians and researchers who are familiar with writing Python code and core Python elements and would like to write more efficient code in order to crunch more data faster.
Registration deadline: 09 May 2024
General information
- Time: 17 May 2024
- Registration deadline: 09 May 2024
- Location: Online
- Fees:
- Academic: 100 CHF
- For-profit: 500 CHF
- Materials: https://github.com/sib-swiss/intermediate-python-training
Description
Python is an open-source and general-purpose scripting language which runs on all major operating systems. It was designed to be easily read and written with comparatively simple syntax. Over the recent years Python has become a programming language of choice for bioinformatics and data analysis, and in particular for applications that make use of machine learning or deep learning. However, the flexibility of the python language can come at the cost of lower performance when compared to compiled languages such as C++. This 1-day course will introduce modules and recipes to monitor python code, detect computational bottlenecks and substantially speedup python code.
Topics that will be covered in this course include:
- Monitoring CPU and RAM usage of python code
- Speed-up of python code using numpy, cython, or numba
- Additional speed-up using simple parallelization recipes
Learning outcomes
At the end of this course, participants are expected to:
- Monitor and identify computational bottlenecks in their python code
- Summarize and perform quality control on their data
- Re-implement specific functions using cython or numba
- Test and evaluate the impact of their optimization strategy
Prerequisites
The course is targeted to life scientists, bioinformaticians, and researchers who are already familiar with the Python programming language. A few days before the course, registered participants will receive a small “warm-up” jupyter notebook to go through. This will be in order to help them get a quick refresher on their python know-how and check that all libraries are working properly.
You are required to use your own laptop, with a recent Python 3 version. Please make sure you have install Anaconda, Jupyter notebook and the needed Python librairies on your personal laptop before the start of the course.