All Projects → nipype → pydra

nipype / pydra

Licence: other
Pydra Dataflow Engine

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to pydra

brainlife
Free cloud platform for secure neuroscience data analysis.
Stars: ✭ 41 (-55.91%)
Mutual labels:  brainweb
T1ify
Applying style transfer to convert multi-modal MRI images to have a T1 like contrast.
Stars: ✭ 21 (-77.42%)
Mutual labels:  brainweb
prime-re.github.io
Open resource exchange platform for non-human primate neuroimaging
Stars: ✭ 13 (-86.02%)
Mutual labels:  brainweb
PyRhO
A virtual optogenetics laboratory
Stars: ✭ 30 (-67.74%)
Mutual labels:  brainweb
clinica
Software platform for clinical neuroimaging studies
Stars: ✭ 153 (+64.52%)
Mutual labels:  brainweb
coinstac
Collaborative Informatics and Neuroimaging Suite Toolkit for Anonymous Computation
Stars: ✭ 34 (-63.44%)
Mutual labels:  brainweb

GitHub Actions CI CircleCI codecov

pydra logo

Pydra: Dataflow Engine

A simple dataflow engine with scalable semantics.

Pydra is a rewrite of the Nipype engine with mapping and joining as first-class operations. It forms the core of the Nipype 2.0 ecosystem.

The goal of pydra is to provide a lightweight Python dataflow engine for DAG construction, manipulation, and distributed execution.

Feature list:

  1. Python 3.7+ using type annotation and attrs
  2. Composable dataflows with simple node semantics. A dataflow can be a node of another dataflow.
  3. splitter and combiner provides many ways of compressing complex loop semantics
  4. Cached execution with support for a global cache across dataflows and users
  5. Distributed execution, presently via ConcurrentFutures, SLURM, and Dask (this is an experimental implementation with limited testing)

API Documentation

Learn more about Pydra

Binder

Please note that mybinder times out after an hour.

Installation

pip install pydra

Note that installation fails with older versions of pip on Windows. Upgrade pip before installing:

pip install –upgrade pip
pip install pydra

Developer installation

Pydra requires Python 3.7+. To install in developer mode:

git clone [email protected]:nipype/pydra.git
cd pydra
pip install -e ".[dev]"

In order to run pydra's test locally:

pytest -vs pydra

If you want to test execution with Dask:

git clone [email protected]:nipype/pydra.git
cd pydra
pip install -e ".[dask]"

It is also useful to install pre-commit:

pip install pre-commit
pre-commit
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].