https://github.com/callaghanmt-training/swd6_hpp

Training materials for SWD6: High Performance Python

https://github.com/callaghanmt-training/swd6_hpp

Science Score: 23.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.6%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Training materials for SWD6: High Performance Python

Basic Info
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Fork of ARCTraining/swd6_hpp
Created about 4 years ago · Last pushed about 2 years ago

https://github.com/callaghanmt-training/swd6_hpp/blob/master/

# SWD6: High Performance Python

[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.6417586.svg)](https://doi.org/10.5281/zenodo.6417586)

Booking for this course is through the IT Training Unit.  

Click [here](https://uolr3.leeds.ac.uk/temcatsearch(bD1lbiZjPTUwMA==)/courses.htm?sap-params=Z2Rfa2V5d29yZHM9U1dEJTIwNiUzYSUyMEhpZ2glMjBQZXJmb3JtYW5jZSZnZF9zdHlwZT0mZ2RfdHV0b3I9TGFzdCUyMG5hbWUmZGF0ZTE9ZGQlMmZtbSUyZnl5eXkmZGF0ZTI9ZGQlMmZtbSUyZnl5eXkmZGF0ZTE9MDAuMDAuMDAwMCZkYXRlMj0wMC4wMC4wMDAwJnByb3ZpZGVybGlzdD0wJmFuZG9yPUFORCZzb3J0PUJFR0RBJmdkX2NhbGxpZD1JTklUSUFMJnN0eWxlPQ%3d%3d) to book.  

## Content

Over the past few years, Python and the wider Python ecosystem have become invaluable tools in scientific computing and data analytics. As Python is (for the most part) an interpreted language there are complaints that Python code can be quite slow to execute. In this hands-on workshop you will have the opportunity discover and use a set of tools and techniques that can be used to improve the execution speed of your Python code. The workshop will introduce a number of ways to both measure the efficiency of your code and improve its speed of execution by introducing strategies for fast and scalable computation with Python.

## Objectives

At the end of this workshop, learners will be able to:

1. [ ] Understand how to profile Python code and identify bottlenecks
2. [ ] Understand how to choose the most appropriate data structure, algorithm, and libraries for a problem
3. [ ] Improve the execution time of Python code using:  
    - [ ] Vectorisation (with [NumPy](https://numpy.org/doc/stable/reference/ufuncs.html))  
    - [ ] Compilers (with [Numba](http://numba.pydata.org/))  
    - [ ] Parallelisation (with [Dask](https://docs.dask.org/en/latest/) and [Ray](https://www.ray.io/))  
    - [ ] GPUs (with [JAX](https://jax.readthedocs.io/en/latest/index.html), [CUDA/Numba](https://developer.nvidia.com/how-to-cuda-python), and [RAPIDS](https://developer.nvidia.com/rapids))  
4. [ ] Understand when to use each technique

## Prerequisites

We recommend that attendees have a working knowledge of the Unix shell (although this is not essential) and are proficient Python programmers. If you need to learn how to program in Python, please attend [SWD1a: Introduction to Python programming](https://arc.leeds.ac.uk/training/courses/swd1a/). It is strongly recommended that you bring your own laptop to this workshop with some specific software installed. Further information will be provided when you are accepted onto the course.

## Duration

1 day

## Frequency

This workshop usually runs once each academic year.  
If you would like a bespoke version of this course run in your department, then please [contact us](https://bit.ly/arc-help).  

## Suitability

Research postgraduate students and above; teaching and lecturing staff.

Owner

  • Name: callaghanmt-training
  • Login: callaghanmt-training
  • Kind: organization

GitHub Events

Total
Last Year