Commit 524acc8f authored by Theo Steininger's avatar Theo Steininger
Browse files

Update README

parent 23df6732
Pipeline #4682 skipped
D2O is a Python module for cluster-distributed multi-dimensional numerical
arrays. It can be regarded as a layer of abstraction between abstract algorithm
code and actual data distribution logic. The main goal is to achieve usability
without losing numerical performance and scalability. Therefore D2O's global
interface is similar to the one of a numpy.ndarray, whereas the cluster node's
local data is directly accessible, allowing usage in specialized numerical
high-performance modules. D2O is written in Python which makes it portable and
easy to use and modify, whereas expensive operations are carried out by
dedicated external libraries like numpy and mpi4py. Performance-wise in most of
the serial cases, D2O is comparable to numpy's ndarray but is superior when
moving to an MPI cluster.
D2O - Distributed Data Object
=============================
Summary
-------
We introduce D2O, a Python module for cluster-distributed multi-dimensional
numerical arrays. It acts as a layer of abstraction between the algorithm code
and the data-distribution logic. The main goal is to achieve usability without
losing numerical performance and scalability. D2O's global interface is similar
to the one of a `numpy.ndarray`, whereas the cluster node's local data is
directly accessible for use in customized high-performance modules. D2O is
written in pure Python which makes it portable and easy to use and modify.
Expensive operations are carried out by dedicated external libraries like
`numpy` and `mpi4py`. The performance of D2O is on a par to numpy for serial
applications and scales well when moving to an MPI cluster. D2O is open-source
software available under the GNU General Public License v3 (GPL-3).
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment