Distributed Interactive Visualization and Exploration of large datasets
Project description
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.
======
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.
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
pyDive-1.2.2.tar.gz
(3.0 MB
view details)
File details
Details for the file pyDive-1.2.2.tar.gz
.
File metadata
- Download URL: pyDive-1.2.2.tar.gz
- Upload date:
- Size: 3.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a30afe2e86e2ffa3e147a86ec251256920c11ba98ba14b167f3811536ec588b |
|
MD5 | a5b6ad88e0ef60707655467a16542d3c |
|
BLAKE2b-256 | 56704706cf1e019118cae3c5a544ea88fc4cdba855de538f01feda878325c860 |