HPC
Python Task Views: High Performance Computing
Python Packages that help support HPC.
Context
Python is considered a slow compared to lower level / compiled languages. A common approach to make full use of existing CPU is to extend the language via bindings to a faster language.
Functionality | (PyPI Link) | Description / Remarks | Other |
---|---|---|---|
Bindings to C/C++ | Cython, pybind11 | ||
Bindings to other languages (Java, Rust) | py4j , pyO3 | ||
Multi-threading | Built-in (thread) | ||
Multi-core | multiprocessing | ||
Spark interface | pySpark | ||
GPU Computing | pyCUDA | Offered also built-in in some packages (e.g pytorch, tensorflow) | |
Distributed Data | dask |