Python has become one of the most popular programming languages in scientific computing. It is high level enough that learning it is easy, and coding with it is significantly faster than other programming languages. However, the performance of pure Python programs is often sub-optimal, and might hinder your research. In this course, we will show you some ways to identify performance bottlenecks, improve slow blocks of code, and extend Python with compiled code. You'll learn about various ways to optimise and parallelise Python programs, particularly in the context of scientific and high performance computing.
Prerequisite knowledge: know what classes and functions are; familiarity with Jupyter Notebook; basic console use; and comfortable with Python software carpentry material.
Live online classes will take place on Wed. Oct. 25, Mon. Oct. 30, Wed. Nov. 1, and Mon. Nov. 6 from 1pm to 2pm Eastern Time. Recordings of live sessions will be available afterwards for self-paced learning.
- Teacher: Nastaran Shahparian
- Teacher: Collin Wilson