Skip to main content

A framework for high performance data analytics and machine learning.

Project description

HeAT - Helmholtz Analytics Toolkit

HeAT Logo

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

Project Status

Build Status Documentation Status codecov

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 checkout 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]

The extra dev dependency pulls in additional tools to support the enforcement of coding conventions (Black) and to support a pre-commit hook to do the same. In order to fully use this framework, please also install the pre-commit hook with

$ pre-commit install

In order to check compliance of your changes before even trying to commit anything, you can run

$ pre-commit run --all-files

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.

Project details


Download files

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

Files for heat, version 0.2.2
Filename, size File type Python version Upload date Hashes
Filename, size heat-0.2.2.tar.gz (115.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page