Skip to main content

The distributed computing library on top of PyCOMPSs

Project description

The Distributed Computing Library

Distributed computing library implemented over PyCOMPSs programming model for HPC.

   Documentation Status Build Status Code Coverage PyPI version Python version

WebsiteDocumentationReleasesSlack

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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dislib-1.0.0.tar.gz (206.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dislib-1.0.0-py3-none-any.whl (230.0 kB view details)

Uploaded Python 3

File details

Details for the file dislib-1.0.0.tar.gz.

File metadata

  • Download URL: dislib-1.0.0.tar.gz
  • Upload date:
  • Size: 206.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for dislib-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a179baabd4ed09cae55dbdf924ace038712911ad729a2bd3db0a3a6280a77907
MD5 ec558135bed5f490ac26b698cf9f07c1
BLAKE2b-256 31d0ca6c693e5583cefb7ffed02ee54d0d3e453118ac6347c815f6731544983a

See more details on using hashes here.

File details

Details for the file dislib-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: dislib-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 230.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for dislib-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 35b9611978c85647eaf5963e3efda6b5e3ffcacb38db0c95cdfa11a9219afe3f
MD5 1baec1df28b2a471ff06e69f7a76de3c
BLAKE2b-256 34b6345b7065cadbf7e8252277665169c9b5d1dd959ca96aa8b1ffd2084c26a9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page