A computation graph library with support for parallelism , numerical and string computations.
Project description
bzCompute
bzCompute is a computation graph library with built-in support for domain-decomposition and prallel computation. The library can be used for expressing and executing large number of mathematical and text-processing operations using Data-Flow graphs, (Educational version of tensorflow), written in pure python code with numpy support.
Examples :
The educational project supports limited number of text-processing and mathematical operations that are normally used frequently. Look at examples folder for various examples
Parallel Computation :
The librabry supports both sequential and parallel computation on graphs. Domain Decomposition is the computation technique used to provide task-level parallelism by creating replicas of computation graphs . The library creates a Master-worker setup, where the MasterSession creates specified number of worker sessions, each worker-session is a thread. These threads can be pre-forked to memory or can be created on demand. Each worker is automatically assigned a name. The results are collected. Domain decomposition is manily used for running multiple replicas of data-flow graphs on different inputs, check out examples.
Supported Sessions :
The library supports three types of sessions as of now :
- SequentialSession : SequentialSession executes computation graph in a sequential order, leaving parallelism to OS and Hardware.
- MasterSession : Creates a master session for parallel computation, can be used for domain-decomposition, by specifying number of worker threads.
- StringSession : It is a variant of SequentialSession for executing a computation graph composed of strign operations.
Supported Operations :
bzCompute supports many operations as of now, the library also provides support for defining custom operations as per the requirements.
Numerical Operations :
Look at pyCompute/KernelOperations.py to obtain list of all supported operations
Text-Processing Operations :
Look at pyCompute/text_processing/StringOperations.py for all supported string operations.
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 pycompute-1.0.tar.gz
.
File metadata
- Download URL: pycompute-1.0.tar.gz
- Upload date:
- Size: 8.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67e31b3ede34f467e33b4dbf22be80432f723a466583bff663f2f9e8f7dfd9ee |
|
MD5 | 783a63cbbbd720a198290399764039ec |
|
BLAKE2b-256 | 6d7606ccaa52ae649f04c2bcde10163139a95ca01bb13fa8710700e8f521606d |
File details
Details for the file pycompute-1.0-py3-none-any.whl
.
File metadata
- Download URL: pycompute-1.0-py3-none-any.whl
- Upload date:
- Size: 12.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 68c4667c580a3d93d15c6b9ca34a476bf96364f763f47f7e47d5ac7a250dc281 |
|
MD5 | 9e4fca65f5004b40d1f2e2ab349ae76b |
|
BLAKE2b-256 | 91058e927423ec7bd9419e87f72fdf1fb12accd37d6e1035caefb4727962a489 |