Porting code from Matlab to Python
Sandra Diaz
(Kurs-Nr. 1712022 im Trainingsprogramm 2022 des Forschungszentrums Jülich)
Python is becoming a popular language for scientific applications and is increasingly used for high performance computing. In this course we want to introduce Matlab programmers to the usage of Python. Matlab and Python have a comparable language philosophy, but Python can offer better performance using its optimizations and parallelization interfaces. Python also increases the portability and flexibility (interaction with other open source and proprietary software packages) of solutions, and can be run on supercomputing resources without high licensing costs.
The training course will be divided into three stages: First, attendants will learn how to do a direct translation of language concepts from Matlab to Python. Then, optimization of scripts using more Pythonic data structures and functions will be shown. Finally, code will be taken to the supercomputers where basic parallel programming (MPI) will be used to exploit parallelism in the computation.
The course will focus on numerical and statistical analysis as well as on image processing applications.
This course involves theoretical and hands on sessions which will be guided by experts in Python, Matlab and High Performance Computing. Attendants are highly encouraged to bring their own Matlab scripts.
Prerequisites
Kenntnisse in Matlab. Grundkenntnisse in Python empfohlen. Vorkenntnisse in MPI oder Nutzung von Supercomputern sind nicht nötig.
Target audience
Wissenschaftler:innen, die die Performance ihrer Matlab-Scripts verbessern wollen.
Language
Der Kurs wird auf Englisch gehalten.