Peach
A distributed processing system for
heterogenous clusters of computers.
Peter Leong and Bernard Heymann
Peach is a package that allows the distribution of single-processor
tasks across a collection of computers, regardless of the types or
capabilities of those computers. As it was developed for use on
Unix-based systems, the current implementation has been tested only
under various flavors of Unix. However, Peach is written in Perl and
should therefore run on any system with Perl 5.6 or later. The only
other strict requirement is that at least one disk needs to be
shared amongst the participating computers for serving programs and
access to data.
The components of Peach are communicating using a client-server model.
A server daemon running on one computer manages job submissions,
assignments and other client requests. Job daemons are clients running
on all participating computers monitors the activity on these computers
and decides when to launch new jobs or when to suspend jobs, as well as
notify the server of job completion or termination. The communication
model is designed to be robust so that any termination of one component
will leave the other components running. This allows the server to be
moved to a new machine, or the restart of a job daemon.
In addition to the job daemons, other clients also communicate with the
server for information about job status and to submit or kill jobs.
Administrator guide
User guide
Developer guide
Research Publication
- Leong, P.A., Heymann, J.B., and Jensen, G.J. (2005). Peach: A
simple Perl-based system for distributed computation and its
application to cryoEM data processing. Structure 13,
505-511.
Relevant Links
hits since 2005-02-18
Updated 2005-04-15, Peter Leong
Updated 2005-02-16, Peter Leong
Updated 2004-11-30, Peter Leong
and Bernard Heymann