Skip to main content

A framework for high-performance data analytics and machine learning.

Project description


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

Project Status

Jenkins Jenkins Documentation Status codecov Code style: black 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 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.

Support Channels

We use StackOverflow as a forum for questions about Heat. If you do not find an answer to your question, then please ask a new question there and be sure to tag it with "pyheat".

Requirements

Heat requires Python 3.7 or newer. 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.

Citing Heat

If you find Heat helpful for your research, please mention it in your academic publications. You can cite:

  • Götz, M., Debus, C., Coquelin, D., Krajsek, K., Comito, C., Knechtges, P., Hagemeier, B., Tarnawa, M., Hanselmann, S., Siggel, S., Basermann, A. & Streit, A. (2020). HeAT - a Distributed and GPU-accelerated Tensor Framework for Data Analytics. In 2020 IEEE International Conference on Big Data (Big Data) (pp. 276-287). IEEE, DOI: 10.1109/BigData50022.2020.9378050.
@inproceedings{heat2020,
    title={{HeAT -- a Distributed and GPU-accelerated Tensor Framework for Data Analytics}},
    author={
      Markus Götz and
      Charlotte Debus and
      Daniel Coquelin and
      Kai Krajsek and
      Claudia Comito and
      Philipp Knechtges and
      Björn Hagemeier and
      Michael Tarnawa and
      Simon Hanselmann and
      Martin Siggel and
      Achim Basermann and
      Achim Streit
    },
    booktitle={2020 IEEE International Conference on Big Data (Big Data)},
    year={2020},
    pages={276-287},
    month={December},
    publisher={IEEE},
    doi={10.1109/BigData50022.2020.9378050}
}

Acknowledgements

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


Project details


Download files

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

Source Distribution

heat-1.1.0.tar.gz (222.4 kB view details)

Uploaded Source

Built Distribution

heat-1.1.0-py3-none-any.whl (250.6 kB view details)

Uploaded Python 3

File details

Details for the file heat-1.1.0.tar.gz.

File metadata

  • Download URL: heat-1.1.0.tar.gz
  • Upload date:
  • Size: 222.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.10

File hashes

Hashes for heat-1.1.0.tar.gz
Algorithm Hash digest
SHA256 a3a473ac82856b9136bc35fe399b7c90e4a3985e00a9cbc3d46e29290c5f047d
MD5 5b4982af4d0fac5d7edf281ef5a035a7
BLAKE2b-256 95175fd180adb89ce807281e19e9589c24b4d08986b819fd77e0e43ac784f2d3

See more details on using hashes here.

File details

Details for the file heat-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: heat-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 250.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.10

File hashes

Hashes for heat-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8d3a819a44c359207decb641c3935f170bf074675fc3b8076e18063b7c52bafe
MD5 d7dc3346a0cd9ab8c70fd8b7c941da6a
BLAKE2b-256 7d6866257597686f31aeb756bc80eafc867ace0f5cbc08e810db79156b4569d8

See more details on using hashes here.

Supported by

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