|Date:||29.01.2018 9:00 - 31.01.2018 16:00|
|Location details:||The event is organised at the CSC Training Facilities located in the premises of CSC at Keilaranta 14, Espoo, Finland. The best way to reach us is by public transportation; more detailed travel tips are available.|
|Lecturers:|| Jussi Enkovaara (CSC) Martti Louhivuori (CSC) |
|The course materials, lunches as well as morning and afternoon coffees are free of charge.|
THE COURSE IS FULLY BOOKED!
If you have registered to the course and you are not able to attend, please CANCEL your registration in advance by sending an email to patc at csc.fi. For a limited waiting list requests, please contact patc at csc.fi. Spaces that become available are on a first-come-first-serve basis.
Python programming language has become popular in scientific computing due to many benefits it offers for fast code development. Unfortunately, the performance of pure Python programs is often sub-optimal, but fortunately this can be easily remedied. In this course we teach various ways to optimise and parallelise Python programs. Among the topics are performance analysis, efficient use of NumPy arrays, extending Python with more efficient languages (Cython), and parallel computing with task based (multiprocessing) and message passing (mpi4py) approaches.
After the course participants are able to analyse performance of Python programs, and are familiar with various ways to optimise and parallelise them.
PrerequisitesSome experience in Python programming.
Day 1, Monday 29.1
Efficient use of NumPy
Day 2, Tuesday 30.1
Optimisation with Cython
Parallel computing with multiprocessing
Day 3, Wednesday 31.1
Parallel computing with mpi4py