Skip to content
This repository was archived by the owner on Feb 2, 2024. It is now read-only.

Commit c659208

Browse files
author
Ehsan Totoni
committed
docs overview
1 parent 8a838c4 commit c659208

3 files changed

Lines changed: 42 additions & 9 deletions

File tree

docs/index.rst

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,12 @@
33
You can adapt this file completely to your liking, but it should at least
44
contain the root `toctree` directive.
55
6-
Welcome to HPAT's documentation!
6+
HPAT documentation
77
================================
88

99
.. toctree::
1010
:maxdepth: 2
1111
:caption: Contents:
1212

13-
14-
15-
Indices and tables
16-
==================
17-
18-
* :ref:`genindex`
19-
* :ref:`modindex`
20-
* :ref:`search`
13+
source/overview
14+
source/supported

docs/source/overview.rst

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
2+
Overview
3+
========
4+
5+
High Performance Analytics Toolkit (HPAT) is a big data analytics and machine
6+
learning framework that provides Python's ease of use but is extremly fast.
7+
8+
HPAT scales analytics programs in python to cluster/cloud environments
9+
automatically, requiring only minimal code changes. Here is a logistic
10+
regression program using HPAT::
11+
12+
@hpat.jit
13+
def logistic_regression(iterations):
14+
f = h5py.File("lr.hdf5", "r")
15+
X = f['points'][:]
16+
Y = f['responses'][:]
17+
D = X.shape[1]
18+
w = np.random.ranf(D)
19+
t1 = time.time()
20+
for i in range(iterations):
21+
z = ((1.0 / (1.0 + np.exp(-Y * np.dot(X, w))) - 1.0) * Y)
22+
w -= np.dot(z, X)
23+
return w
24+
25+
This code runs on cluster and cloud environments using a simple command like
26+
`mpirun -n 1024 python logistic_regression.py`.
27+
28+
HPAT compiles a :ref:`subset of Python <supported>` to efficient native parallel code
29+
(with `MPI <https://en.wikipedia.org/wiki/Message_Passing_Interface>`_).
30+
This is in contrast to other frameworks such as Apache Spark which are
31+
master-executor libraries. Hence, HPAT is typically 100x or more faster.
32+
HPAT is built on top of `Numba <https://github.com/numba/numba>`_
33+
and `LLVM <https://llvm.org/>`_ compilers.

docs/source/supported.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
.. _supported:
2+
3+
Supported Python Programs
4+
=========================
5+
6+
The `@hpat.jit` decorator...

0 commit comments

Comments
 (0)