This repository includes a list of frameworks for HPC Python development.
Below is an incomplete list of framework for developing HPC applications in Python and brief descriptions.
- Arkouda - A NumPy/Pandas inspired Python library backed by Chapel
- Charm4py - Charm++ programming model in Python
- CuPy - NumPy/SciPy-compatible Array Library for GPU-accelerated Computing with Python
- cuPyNumeric - Write NumPy, run automatically on clusters of CPUs and GPUs
- CUTLASS - CUDA Templates and Python DSLs for High-Performance Linear Algebra
- Dask - Easy parallel Python that does what you need
- DaCe - Data Centric Parallel Programming
- FlexFlow - Drop-in PyTorch, Keras, ONNX interface
- JAX - Composable transformations of Python+NumPy programs
- lbmpy - Run fast fluid simulations based on the lattice Boltzmann method in Python on CPUs and GPUs
- loopy - A code generator for array-based code in the OpenCL/CUDA execution model
- mpi4py - MPI for Python
- Numba - JIT compiler that translates a subset of Python and NumPy code into fast machine code
- Pallas - An extension to JAX that enables writing custom kernels for GPU and TPU
- Parla - A task-parallel programming library for Python
- Parsl - Productive parallel programming in Python
- PyCOMPS - Workflow orchestration in Python
- PyCUDA - Pythonic access to Nvidia's CUDA parallel computation API
- Pygion - A task-based framework for Python based on the Legion programming system
- PyKokkos - Framework for writing performance portable HPC kernels in Python
- PyOMP - OpenMP for Python in Numba for CPU/GPU parallel programming
- PyOpenCL - Lets you access GPUs and other massively parallel compute devices from Python
- pystencils - Run blazingly fast stencil codes on NumPy arrays
- PyTorch - An open-source machine learning library based on the Torch library
- Ray - AI Compute Engine
- Taichi Lang - Imperative, parallel programming language for high-performance numerical computation
- Triton - Language and compiler for writing high-performance custom kernels that run on GPUs
If you would like to make any addition, feel free to create a PR with suggested changes or email Milos Gligoric gligoric@utexas.edu.