@hackage tpar0.1.0.0
simple, parallel job scheduling
Categories
License
BSD-3-Clause
Maintainer
bgamari@gmail.com
Links
Versions
- 0.1.0.0 Mon, 1 Aug 2016
Installation
Dependencies (0)
- aeson >=0.11 && <0.12
- ansi-wl-pprint >=0.6 && <0.7
- async >=2.0 && <2.2
- base >=4.5 && <4.10
- binary >=0.7 && <0.9
- bytestring >=0.10 && <0.11 Show all…
Dependents (1)
@hackage/acme-everything
tpar is a simple job scheduling and dispatch service for distributing and
monitoring tasks across machines. It was written to serve as a simple and
easy-to-administer substitute for systems like Grid Engine.
Configuring a tpar instance is simply a matter of running tpar server on
a designated server machine,
$ # We'll need to know the hostname of the server $ hostname my-server $ # Start a server also running 8 local workers $ tpar server -Hmy-server -N8
Submitting a job is then similarly easy,
$ tpar enqueue -Hhostname -- long-process arg1 arg2
One can then enqueue jobs easily
$ tpar enqueue -Hmy-server -- bash -c "primes 10000000000 | head -n1" $ tpar status -v 0 unnamed-job finished priority: 0 queued: 1 seconds ago command: bash arguments: -c primes 10000000000 | head -n1 logging: stdout: none stderr: none status: finished with 0 (at 1 seconds ago) started at 1 seconds ago ran on nid://localhost:5757:0
One can add more workers to help churn through the work queue using the
tpar worker command,
$ # Add 16 more workers running on another machine $ ssh my-workers -- tpar worker -Hmy-server -N16
Finally, the output of running jobs can be monitored using the tpar watch
command,
$ tpar watch id=0