Skip to main content

Minimal task scheduling abstraction

Project description

Build Status Documentation Status

A minimal task scheduling abstraction.

See Dask documentation at http://dask.readthedocs.org

LICENSE

New BSD. See License File.

Install

dask is not yet on any package index. It is still experimental.

python setup.py install

Example

Consider the following simple program

def inc(i):
    return i + 1

def add(a, b):
    return a + b

x = 1
y = inc(x)
z = add(y, 10)

We encode this as a dictionary in the following way

d = {'x': 1,
     'y': (inc, 'x'),
     'z': (add, 'y', 10)}

While less aesthetically pleasing this dictionary may now be analyzed, optimized, and computed on by other Python code, not just the Python interpreter.

A simple dask dictionary

Dependencies

dask.core supports Python 2.6+ and Python 3.2+ with a common codebase. It is pure Python and requires no dependencies beyond the standard library.

It is, in short, a light weight dependency.

The threaded implementation depends on networkx. The Array dataset depends on numpy and the blaze family of projects.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page