An asyncio API that mimics concurrent.futures, with support for task-graph executors
Project description
parallels
Parallels is a literary powered library. It provides an async API that mimics concurrent.futures, with support for task-graph executors.
These notebooks can be viewed using nbviewer until the documentation generator is complete.
What?
In Python there are several standard APIs for interacting with executors
. AsyncIO has the run_in_executor
API, concurrent.futures
has the Executor
API, and other
libraries like Dask and Ray have equivalent approaches. concurrent.futures
is often available within other libraries, but its reduced features-set prevents the underlying
library from implementing useful optimisations like Dask's deferred computation or task graph building.
Parallels implements a standard Executor
interface which defines a synchronous submit
method, and an asynchronous retrieve
method.
These methods operate upon value-less asyncio.Future
handles which yield True
upon task success, and raise an Exception
otherwise.
The Dask and Ray implementations accept these handles as arguments to future submit()
calls, which can be used to build task graphs
and avoid copying data to the local machine.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file parallels-0.1.0.tar.gz
.
File metadata
- Download URL: parallels-0.1.0.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9297d22e28d6d1c3219d76a05525424a50b941e024bb9713c29a8252df483f33 |
|
MD5 | 93c0e0c9b9143c2c89b24b25e6b72694 |
|
BLAKE2b-256 | 7e1e40e4073826463fba89511fedacf02725db676d20560da953ea00f3a71515 |
File details
Details for the file parallels-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: parallels-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | eddd8c0b0bb032b85ba17bebedd84dcf299de391a2dd893e37c93b3c9384895a |
|
MD5 | 84e4f3cedbbc347186a238d975a37ac9 |
|
BLAKE2b-256 | 6b98f0370aecb82ac479bd0b9026620091ec583e1ef612532fd4c7c640c3fd07 |