Giter Site home page Giter Site logo

riedelmax / heat Goto Github PK

View Code? Open in Web Editor NEW

This project forked from helmholtz-analytics/heat

0.0 1.0 0.0 7.32 MB

Distributed tensors and Machine Learning framework with GPU and MPI acceleration in Python

Home Page: https://heat.readthedocs.io/

License: MIT License

Python 97.81% Dockerfile 0.03% Jupyter Notebook 2.16%

heat's Introduction


HeAT is a distributed tensor framework for high performance data analytics.

Project Status

Build Status Documentation Status codecov license: MIT Downloads Mattermost Chat

Goals

HeAT is a flexible and seamless open-source software for high performance data analytics and machine learning. It provides highly optimized algorithms and data structures for tensor computations using CPUs, GPUs and distributed cluster systems on top of MPI. The goal of HeAT is to fill the gap between data analytics and machine learning libraries with a strong focus on on single-node performance, and traditional high-performance computing (HPC). HeAT's generic Python-first programming interface integrates seamlessly with the existing data science ecosystem and makes it as effortless as using numpy to write scalable scientific and data science applications.

HeAT allows you to tackle your actual Big Data challenges that go beyond the computational and memory needs of your laptop and desktop.

Features

  • High-performance n-dimensional tensors
  • CPU, GPU and distributed computation using MPI
  • Powerful data analytics and machine learning methods
  • Abstracted communication via split tensors
  • Python API

Getting Started

Check out our Jupyter Notebook tutorial right here on Github or in the /scripts directory.

The complete documentation of the latest version is always deployed on Read the Docs.

Requirements

HeAT is based on PyTorch. Specifially, we are exploiting PyTorch's support for GPUs and MPI parallelism. For MPI support we utilize mpi4py. Both packages can be installed via pip or automatically using the setup.py.

Installation

Tagged releases are made available on the Python Package Index (PyPI). You can typically install the latest version with

$ pip install heat[hdf5,netcdf]

where the part in brackets is a list of optional dependencies. You can omit it, if you do not need HDF5 or NetCDF support.

Hacking

If you want to work with the development version, you can check out the sources using

$ git clone https://github.com/helmholtz-analytics/heat.git

The installation can then be done from the checked-out sources with

$ pip install .[hdf5,netcdf,dev]

We welcome contributions from the community, please check out our Contribution Guidelines before getting started!

License

HeAT is distributed under the MIT license, see our LICENSE file.

Acknowledgements

This work is supported by the Helmholtz Association Initiative and Networking Fund under project number ZT-I-0003.

This work is supported by the Helmholtz Association Initiative and Networking Fund under the Helmholtz AI platform grant.


heat's People

Contributors

claudiacomito avatar markus-goetz avatar coquelin77 avatar mtar avatar cdebus avatar theslimvreal avatar lenablind avatar bhagemeier avatar krajsek avatar inzlinger avatar simon-schmitz avatar rainman110 avatar lucaspataro avatar pglock avatar melven avatar d1saster avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.