parallelazy
A lightweight Python plugin/worker framework with:
- isolated plugin processes started with
spawn; - topic-based publish/subscribe;
- shared environment values and change notifications;
- plugin-to-plugin RPC; and
- PyTorch/CUDA-aware multiprocessing support.
Install
python -m pip install .
Quick start
import time
from parallelazy.plugin import Plugin
from parallelazy.plugin_manager import PluginManager
class Worker(Plugin):
def on_start(self):
self.env_set("worker.ready", True)
def main(self):
pass
def main():
manager = PluginManager()
descriptor = Worker.Descriptor(
version="1.0.0",
author="Application team",
description="Example worker",
)
if not manager.load_plugin(descriptor):
raise RuntimeError("Plugin failed to load")
if not manager.start_plugin(descriptor.name):
raise RuntimeError("Plugin failed to start")
try:
time.sleep(0.1)
print(manager.env_get("worker.ready"))
finally:
manager.unload_plugin(descriptor.name)
if __name__ == "__main__":
main()
Documentation
Read the documentation index for installation, concepts, API reference, usage patterns, and troubleshooting.
The complete runnable examples are in examples/. For example:
python -m examples.example_pubsub
python -m examples.example_rpc_calls
Metadata
Release files for parallelazy 0.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| parallelazy-0.0.2.tar.gz | 33.6 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| parallelazy-0.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 70.6 kB
Release files / parallelazy-0.0.2.tar.gz
| Download URL | parallelazy-0.0.2.tar.gz |
|---|---|
| Size | 33.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
324983b6acc53ad89f100736dfdece88996e97a452626b7b6369ecc4f0cda5b3
|
|
BLAKE2b-256 checksum How to use checksums |
8ad0a342d49a8ce40493c20620431e3934f767313a64a80a5dfdf2518979cf35
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.3
|
Release files / parallelazy-0.0.2-py3-none-any.whl
| Download URL | parallelazy-0.0.2-py3-none-any.whl |
|---|---|
| Size | 37.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
79f57176458ae44ae813cfb80080e6bc5953ae6424a77b4a1e5b3aea223f24fb
|
|
BLAKE2b-256 checksum How to use checksums |
62dc6aaf2e4b94592de96ae0a95bde976dd58a211a7ccac11b858df83e10af24
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.3
|
Security for parallelazy 0.0.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.