Distributed computing library implemented over PyCOMPSs programming model for HPC.
Website • Documentation • Releases • Slack
Introduction
The Distributed Computing Library (dislib) provides distributed algorithms ready to use as a library. So far, dislib is highly focused on machine learning algorithms, and it is greatly inspired by scikit-learn and, more recently, by PyTorch. However, other types of numerical algorithms might be added in the future. The library has been implemented on top of PyCOMPSs programming model, and it is being developed by the Workflows and Distributed Computing group of the Barcelona Supercomputing Center. dislib allows easy local development through docker. Once the code is finished, it can be run directly on any distributed platform without any further changes. This includes clusters, supercomputers, clouds, and containerized platforms.
Contents
Quickstart
Get started with dislib following our quickstart guide.
Availability
Currently, the following supercomputers already have PyCOMPSs installed and ready to use. If you need help configuring your own cluster or supercomputer, drop us an email and we will be pleased to help.
- MareNostrum 5 - Barcelona Supercomputing Center (BSC)
- MareNostrum Ona - Barcelona Supercomputing Center (BSC)
- Nord4 - Barcelona Supercomputing Center (BSC)
- JURECA - Jülich Supercomputing Centre (JSC)
- JUSUF - Jülich Supercomputing Centre (JSC)
- JUWELS - Jülich Supercomputing Centre (JSC)
- Barbora - IT4Innovations National Supercomputing Center (IT4I)
- Karolina - IT4Innovations National Supercomputing Center (IT4I)
- Galileo100 - CINECA (CINECA)
- Leonardo - CINECA (CINECA)
- Dardel - PDC Center for High-Performance Computing, KTH (PDC)
- Fugaku - RIKEN Center for Computational Science (R-CCS)
- Hawk - High-Performance Computing Center Stuttgart (HLRS)
- Irene - CEA/TGCC (TGCC)
- Levante - German Climate Computing Centre (DKRZ)
- Mahti - CSC - IT Center for Science (CSC)
- NextGenIO Prototype - EPCC, University of Edinburgh (EPCC)
- Shaheen - King Abdullah University of Science and Technology (KAUST)
- Snellius - SURF (SURF)
- Tirant - University of Valencia (UV)
- Frontier - Oak Ridge National Laboratory (ORNL)
- Jean Zay - IDRIS, CNRS (IDRIS)
- Qmio - Galicia Supercomputing Center (CESGA)
Supported architectures:
Contributing
Contributions are welcome and very much appreciated. We are also open to starting research collaborations or mentoring if you are interested in or need assistance implementing new algorithms. Please refer to our Contribution Guide for more details.
Citing dislib
If you use dislib in a scientific publication, we would appreciate you citing the following paper:
J. Álvarez Cid-Fuentes, S. Solà, P. Álvarez, A. Castro-Ginard, and R. M. Badia, "dislib: Large Scale High Performance Machine Learning in Python," in Proceedings of the 15th International Conference on eScience, 2019, pp. 96-105
Bibtex
@inproceedings{dislib,
title = {{dislib: Large Scale High Performance Machine Learning in Python}},
author = {Javier Álvarez Cid-Fuentes and Salvi Solà and Pol Álvarez and Alfred Castro-Ginard and Rosa M. Badia},
booktitle = {Proceedings of the 15th International Conference on eScience},
pages = {96-105},
year = {2019},
}
Acknowledgements
This work has received funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska-Curie grant agreement H2020-MSCA-COFUND-2016-754433.
This work has also received funding from the collaboration project between the Barcelona Supercomputing Center (BSC) and Fujitsu Ltd.
In addition, the development of this software has also been supported by the following institutions:
-
Spanish Government under contracts SEV2015-0493, TIN2015-65316 and PID2019-107255G.
-
Generalitat de Catalunya under contract 2017-SGR-01414 and the CECH project, co-funded with 50% by the European Regional Development Fund under the framework of the ERDF Operative Programme for Catalunya 2014-2020.
-
European Commission's through the following R&D projects:
- H2020 I-BiDaaS project (Contract 780787)
- H2020 BioExcel Center of Excellence (Contracts 823830, and 675728)
- H2020 EuroHPC Joint Undertaking MEEP Project (Contract 946002)
- H2020 EuroHPC Joint Undertaking eFlows4HPC Project (Contract 955558)
- H2020 AI-Sprint project (Contract 101016577)
- H2020 PerMedCoE Center of Excellence (Contract 951773)
- Horizon Europe CAELESTIS project (Contract 101056886)
- Horizon Europe DT-Geo project (Contract 101058129)
License
Apache License Version 2.0, see LICENSE
Metadata
Release files for dislib 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| dislib-1.0.0.tar.gz | 206.7 kB | Without provenance | Details for dislib-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| dislib-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for dislib-1.0.0-py3-none-any.whl |
Total release size: 436.6 kB
Release files / dislib-1.0.0.tar.gz
| Download URL | dislib-1.0.0.tar.gz |
|---|---|
| Size | 206.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a179baabd4ed09cae55dbdf924ace038712911ad729a2bd3db0a3a6280a77907
|
|
BLAKE2b-256 checksum How to use checksums |
31d0ca6c693e5583cefb7ffed02ee54d0d3e453118ac6347c815f6731544983a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.12
|
Release files / dislib-1.0.0-py3-none-any.whl
| Download URL | dislib-1.0.0-py3-none-any.whl |
|---|---|
| Size | 230.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
35b9611978c85647eaf5963e3efda6b5e3ffcacb38db0c95cdfa11a9219afe3f
|
|
BLAKE2b-256 checksum How to use checksums |
34b6345b7065cadbf7e8252277665169c9b5d1dd959ca96aa8b1ffd2084c26a9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.12
|
Security for dislib 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.