Run parallel jobs and save results to json.gz files
Project description
Run parallel jobs and save results to json.gz files.
Install
Stable:
pip install ultrachronic
Latest:
pip install git+https://github.com/yoavram/ultrachronic.git
Supports Python 3.4 and 3.5.
Test
Requirements:
pip install nose click
Run:
nosetests tests
Example
Code in do_something.py:
from ultrachronic import jsonify_result, repeat
import click
@jsonify_result
def do_something(arg1, arg2):
a = 1
b = 2
# must return a dict!
return dict(a=a, b=b)
@click.command()
@click.option('--arg1', default=1, type=int, help='Argument 1')
@click.option('--arg2', default='a', type=str, help='Argument 2')
@click.option('--reps', default=1, type=click.IntRange(1, None), help='Number of repetitions')
@click.option('--cpus', default=1, type=int, help='Number of CPUs to use (<1 for all available)')
def main(arg1, arg2, reps, cpus):
repeat(do_something, reps, cpus, arg1=arg1, arg2=arg2)
if __name__ == '__main__':
main()
Usage:
python do_something.py
python do_something.py --reps 10 --cpus 2
python do_something.py --arg1 5 --reps 10 --cpus 1
python do_something.py --arg2 hi --reps 10 --cpus 0
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
ultrachronic-0.1.5.tar.gz
(19.9 kB
view hashes)
Built Distributions
ultrachronic-0.1.5-py3.6.egg
(5.7 kB
view hashes)
ultrachronic-0.1.5-py3.5.egg
(5.8 kB
view hashes)
ultrachronic-0.1.5-py3.4.egg
(5.8 kB
view hashes)
Close
Hashes for ultrachronic-0.1.5-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b85d6943431dc9604a17cb6c5530251a508e3f55b802bbf3b2877113a63d4c87 |
|
MD5 | 0237219db3dc4d2b9ecd53a0026066ff |
|
BLAKE2b-256 | c24a85fc6cfbad2fe5158385bf1c3c6245cb79e4f8ba609ca890b88482e45bd0 |