Skip to main content

Simple parallel, distributed and cluster computing

Project description



Raisin: To perform cluster work easily!

Project Philosophy

The main aim of projectraisin is to share physical resources of your laptop with a community.
In counterpart, you can benefit from the community resources.
There are 2 sides in this project:

1. Resources usage

The raisin API wants to be as close as possible to the ‘threading’ and ‘multiprocessing’ python APIs.
The advantage in using raisin rather than ‘threading’ or ‘multiprocessing’ is that the computing power is greatly increased (depending on the number of connected resources).
Though raisin is based on ‘multiprocessing’ module - that splits tasks among the resources of a single computer - it also shares the load over the different machines in the network. Everything is automatically and intelligently orchestrated.

raisin wants to be as simple as possible. That’s why the code analysis and the resources management are automated. It also uses a bunch of classes and functions default parameters that are suitable for most usages.

However, you can tune raisin behavior as you want since all these parameters are fully customizable.
raisin is a multi-OS module 100% written in python in order to keep installation reliable and simple.

In a future version, raisin will be able to perform automatic parallelization, a little like ‘pydron’.

2. Resources sharing

To be able to use community resources, you must give in return!
That’s why, when raisin is installed as a python package, you have to install the ‘application’ part.
The minimum to do is to start a grape server that will be listening to execute the tasks requested by itself or by other users on the network. To do this, run the following command: python -m raisin server

Installation

To install the module, you have to go through pypi: pip install raisin.
Once the module is installed, execute python -m raisin install to create the configuration file.
For the uninstallation, it is enough to execute python -m raisin uninstall && pip uninstall raisin.

Basic example

>>> import raisin
>>> f = lambda x: x**2 # a costly function
>>> list(raisin.imap_unordered(f, range(3), context=True))
[Result(0), Result(1), Result(4)]
>>>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

raisin-3.0.5.tar.gz (59.8 kB view details)

Uploaded Source

Built Distribution

raisin-3.0.5-py3-none-any.whl (73.5 kB view details)

Uploaded Python 3

File details

Details for the file raisin-3.0.5.tar.gz.

File metadata

  • Download URL: raisin-3.0.5.tar.gz
  • Upload date:
  • Size: 59.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/26.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.49.0 importlib-metadata/4.0.1 keyring/23.5.0 rfc3986/1.4.0 colorama/0.4.3 CPython/3.8.10

File hashes

Hashes for raisin-3.0.5.tar.gz
Algorithm Hash digest
SHA256 1bd274604c446c2d06fc382a7c464dd55248d9881451439372037f48ee93a005
MD5 d47375e2f782cec59283218a3235d1de
BLAKE2b-256 f11513ff70b76dabad156bbf8d8f7f35a319981d00396adfe31959f58a994d7d

See more details on using hashes here.

File details

Details for the file raisin-3.0.5-py3-none-any.whl.

File metadata

  • Download URL: raisin-3.0.5-py3-none-any.whl
  • Upload date:
  • Size: 73.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/26.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.49.0 importlib-metadata/4.0.1 keyring/23.5.0 rfc3986/1.4.0 colorama/0.4.3 CPython/3.8.10

File hashes

Hashes for raisin-3.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 542136027b869296b8b8ca2d96923894bce0bcf64fb41d86d9b6e45235dc9003
MD5 80833c35cdca3fbf58775a01cecc12f0
BLAKE2b-256 4bcc8143b35ae32369dbb822a48bebb3abf9c06f5ed4d17f4f00111f3a5f53cf

See more details on using hashes here.

Supported by

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