Dynamic Process Management in CLAM

Juan Carlos Gómez, Vernon J. Rego · Purdue e-Pubs (Purdue University System) · 1998

The dynamic management of processes is a fundamental task in distributed applications.In its general form it must encompass specialized models of parallel programming such as Task Farming models or Parallel Client/Server models, and must also provide for important features such as fauU tolerance and load balancing.But despite the significance of dynamic process management, there is no portable and efficient framework that defines and supports a general functionality, particularly for multithreaded distributed computing.In response to this need, we present a portable and efficient process management module in the context of the ClAM (conneetionless, lightweight, and multiway) threads-based system for distributed operations on heterogeneous networks.We present a process management module that supports a wide range of services, including process naming, dynamic process creation, pid-based message routing, process sign-off, sys~em shutdown, I/O redirecHon, and signal delivery.We describe how CLAM'S active messaging in~erface and its threads are used to build dynamic process management features in~o the library.For each service, we provide a description and an implementation.F\uther, we define and implement a formal protocol to support these services.We also present experimental data that compares the overall performance of ClAM's process management services to equivalent services in PVM, LAM-MPI, and P4, using both uniand multi-processor hosts.

Read the paper · More papers on PaperTik