Using multiple CPU cores with Python, multithreading & multiprocessing
Event Information
Description
This is a workshop for University of Sheffield research staff/students who are already using Python in their research to learn about some aspects of parallelisation. It will focus on:
- Speeding up linear algebra and Fourier transforms by using libraries that can automatically distribute work (e.g. matrix multiplication operations) between CPU cores (using multithreading)
- Running a set of independent tasks in parallel on multiple CPU cores using multiprocessing (rather than running those tasks sequentially on a single CPU core)
The workshop materials are Jupyter Notebooks that we will run on the University's ShARC high-performance computing cluster (using ShARC's JupyterHub service). During the session you can move through the material at your own pace and there will be people on hand to answer questions and discuss with you how you might use multithreading/multiprocessing in your own work.
Prerequisites:
- Some prior knowledge of the basics of Python and the numpy package.
- A University of Sheffield HPC account - https://www.sheffield.ac.uk/cics/research/hpc/register
- A laptop and web browser
Please register for this event using your University of Shefield email address.
The development of the JupyterHub service on ShARC has been funded by the OpenDreamKit Horizon 2020 European Research Infrastructure project.