Skip to main content
pyDive
======

Distributed Interactive Visualization and Exploration of large datasets.

## What is pyDive?

Use pyDive to work with homogeneous, n-dimensional arrays that are too big to fit into your local machine's memory.
pyDive provides containers whose elements are distributed across a cluster or stored in
a large hdf5/adios-file if the cluster is still too small. All computation and data-access is then done in parallel by the cluster nodes in the background.
If you feel like working with [numpy](http://www.numpy.org) arrays pyDive has reached the goal!

pyDive is developed and maintained by the **[Junior Group Computational Radiation Physics](http://www.hzdr.de/db/Cms?pNid=132&pOid=30354)**
at the [Institute for Radiation Physics](http://www.hzdr.de/db/Cms?pNid=132)
at [HZDR](http://www.hzdr.de/).

**Features:**
- Since all cluster management is given to [IPython.parallel](http://ipython.org/ipython-doc/dev/parallel/) you can take your
existing profiles for pyDive. No further cluster configuration needed.
- Save bandwidth by slicing an array in parallel on disk first before loading it into main memory!
- GPU-cluster array available thanks to [pycuda](http://mathema.tician.de/software/pycuda/) with additional support for non-contiguous memory.
- As all of pyDive's distributed array types are auto-generated from local arrays like numpy, hdf5, pycuda, etc...
you can easily make your own local array classes distributed too.

## Dive in!

```python
import pyDive
pyDive.init(profile='mpi')

h5field = pyDive.h5.open("myData.h5", "myDataset", distaxes=(0,1))
ones = pyDive.ones_like(h5field)

# Distribute file i/o and computation across the cluster
h5field[::10,:] = h5field[::10,:].load() + 5.0 * ones[::10,:]
```

## Documentation

In our [Online Documentation](http://ComputationalRadiationPhysics.github.io/pyDive/), [pdf](http://ComputationalRadiationPhysics.github.io/pyDive/pyDive.pdf) you can find
detailed information on all interfaces as well as some [Tutorials](http://computationalradiationphysics.github.io/pyDive/tutorial.html)
and a [Quickstart](http://computationalradiationphysics.github.io/pyDive/start.html).

## Software License

pyDive is licensed under the **GPLv3+ and LGPLv3+** (it is *dual licensed*).
Licences can be found in [GPL](COPYING) or [LGPL](COPYING.LESSER), respectively.

Release files for pyDive 1.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyDive 1.2.2
File Size Uploaded
pyDive-1.2.2.tar.gz 3.0 MB Details

Release files / pyDive-1.2.2.tar.gz

Download URL pyDive-1.2.2.tar.gz
Size 3.0 MB
Tags Source
SHA-256 checksum
How to use checksums
7a30afe2e86e2ffa3e147a86ec251256920c11ba98ba14b167f3811536ec588b
BLAKE2b-256 checksum
How to use checksums
56704706cf1e019118cae3c5a544ea88fc4cdba855de538f01feda878325c860
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.2.2 This release

1 release file

1.2.1

1 release file

1.2

1 release file

1.1

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page