Skip to main content

The Distributed Computing Library

Distributed computing library implemented over PyCOMPSs programming model for HPC.

   Documentation Status Build Status Code Coverage PyPI version Python version

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)

Source distribution for dislib 1.0.0
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)

Table of built distributions (wheels) for dislib 1.0.0
File Interpreter ABI Platform Actions
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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page