Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/hrolive/python4hpc

Python from an HPC viewpoint, the most practical tools, and various indispensable libraries for HPC use cases.
https://github.com/hrolive/python4hpc

cudf cython dask developer-tools high-performance-computing mpi4py numpy pandas python

Last synced: 26 days ago
JSON representation

Python from an HPC viewpoint, the most practical tools, and various indispensable libraries for HPC use cases.

Awesome Lists containing this project

README

        

# Python4HPC

![Course](images/banner.png)

## Table of Contents
1. [Description](#description)
2. [Information](#information)
3. [Certificate](#certificate)


## Description

During the past ten years, Python has seen a meteoric rise in both popularity and demand not only in general-purpose programming but especially data science contributed to this trend. Despite Python's architectural shortcomings, even the field of High-Performance Computing (HPC), with its highly specific demands, profited from recent developments with various libraries and optimizations.

This course introduces the interested participant to Python from an HPC viewpoint, the most practical tools, and various indispensable libraries for HPC use cases. After completion of this two-day course, participants are prepared to effectively develop their own Python libraries or integrate Python into existing projects.

The overall topics of this course were the following:
> - Advanced Python (Collections, OOP, FP) and Compiled Python (Cython, Numba);
> - NumPy, Pandas, Matplotlib, SciPy;
> - Dask, cuDF, MPI4Py;
> - Tooling (Testing, Debugging, Documentation, Logging);
> - Performance (Timing, Profiling)
> - Bindings (CFFI, Boost.Python, f2py);
> - Development (Environment, Packages, IDEs, Containers).

This course is organized in cooperation with Opens external link in new [EuroCC Austria](https://eurocc-austria.at/).


## Information

All necessary information, links and lesson slides for the course can be found on the [course website](https://vsc.ac.at/training/2022/Python4HPC).

The notebooks and exercises can be found in this repository and are organized in their respective folders, one for each day of the course:
- [Day 1 - Advanced and Compiled Python, Tooling, Performance, Development;](https://github.com/HROlive/Python4HPC/tree/main/Day%201%20-%20Advanced%20and%20Compiled%20Python%2C%20Tooling%2C%20Performance%2C%20Development)
- [Day 2 - Dask, cuDF, MPI4Py, NumPy, Pandas, SciPy;](https://github.com/HROlive/Python4HPC/tree/main/Day%202%20-%20Dask%2C%20cuDF%2C%20MPI4Py%2C%20NumPy%2C%20Pandas%2C%20SciPy)


## Certificate

The certificate for the workshop can be found below:

["Python4HPC" - EuroCC Austria and VSC Research Center](https://github.com/HROlive/Python4HPC/blob/main/images/Python4HPC-2022-Aug_Certificate_Oliveira.pdf) (Issued On: September 2022)