coordinate
Job controller with dependency, weighted, and priority scheduling.
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (8.9%) to scientific vocabulary
Repository
Job controller with dependency, weighted, and priority scheduling.
Basic Info
Statistics
- Stars: 4
- Watchers: 20
- Forks: 1
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Coordinate
Coordinate is a standalone server process and client library for multiple-system coordination and synchronization capabilities. It manages work specifications and work units, weighted scheduling, priority scheduling, and dependency graph.
Configuration and execution
In a global yakonfig config.yaml configuration file, add coordinate at the top level:
coordinate:
server:
host: 0.0.0.0
port: 5932
namespace: *namespace
registry_addresses: ['10.0.1.x:5932']
Run coordinated with this configuration, or manually specify --host and --port. The default configuration is to only listen on the localhost interface on port 5932.
The main interface is through the TaskMaster object. This implementation makes RPC calls to the coordinated server.
The server is pluggable and additional functionality can be through other server objects similar to the JobQueue class.
RPC system
Coordinated uses a simple RPC system based on CBOR messages. Client processes initiate a TCP connection as indicated in the configuration and send CBOR messages like (JSON syntax):
{"id": 1,
"method": "lock",
"params": [...]}
where id is a sequential number per client object, starting at 1. There is one TCP connection per client object, but this connection is held open until explicitly closed.
The responses look like:
{"id": 1,
"result": "value"}
Or:
{"id": 2,
"error": {"message": "No such method"}}
If the server-side call raised an exception, the formatted traceback is included as the error message.
The server supports a CBOR list of request messages, and will return a CBOR list of responses.
Client classes subclass coordinated._cbor_rpc_client.CborRpcClient and call _rpc() to perform a call. This method blocks on the connection and response. If the server returned the error form, this is raised as an exception.
The server is run with a proxy object, presently coordinated.lockd.MultiBackendProxyObject, and calls the requested methods on that object with the requested parameters.
Owner
- Name: Diffeo
- Login: diffeo
- Kind: organization
- Email: team@diffeo.com
- Location: Cambridge, MA
- Website: https://diffeo.com
- Repositories: 28
- Profile: https://github.com/diffeo
Uncover the whole story.
GitHub Events
Total
- Push event: 1
Last Year
- Push event: 1
Committers
Last synced: about 1 year ago
Top Committers
| Name | Commits | |
|---|---|---|
| David Maze | d****e@d****m | 20 |
| Brian Olson | b****n@d****m | 11 |
| John R. Frank | j****f@d****m | 7 |
| Andrew Gallant | a****w@d****m | 3 |
| svc-scm | 4****m | 1 |
| Stan Ostashewski | s****y@s****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 42 last-month
- Total dependent packages: 0
- Total dependent repositories: 6
- Total versions: 2
- Total maintainers: 1
pypi.org: coordinate
Tools for large scale data clustering.
- Homepage: http://github.com/diffeo/coordinate
- Documentation: https://coordinate.readthedocs.io/
- License: MIT/X11 license http://opensource.org/licenses/MIT
-
Latest release: 0.1.5
published almost 11 years ago
Rankings
Maintainers (1)
Dependencies
- cbor *
- dblogger *
- lockfile *
- psutil *
- psycopg2 *
- python-daemon *
- pyyaml *
- setproctitle *
- yakonfig *