scispace - formally typeset
Open Access

Software support for adaptive parallelism on non-dedicated clusters of workstations

TLDR
DyRecT enables parallel applications belonging to different domains to be made adaptive while preserving their best-suited programming model as well as providing a more general support for developing adaptive parallel applications.
Abstract
Clusters of workstations are now considered a platform for parallel computing along with dedicated multiprocessors systems. The main issue that arises when using non-dedicated clusters of workstations for executing parallel applications is consideration about user activity. Parallel applications should only execute on idle workstations and have the ability to withdraw from a workstation when user activity is detected. Since the set of idle workstations varies over time, parallel applications have to adapt to fluctuations in available computing resources and be able to change their degree of parallelism at run-time. However, most parallel applications are designed to run on a fixed set of computing resources. For a parallel program to execute in a dynamic environment, functionality has to be provided to allow the application to adapt to different scenarios of changing computing resources at run-time. Providing such functionality is a non-trivial task and several application-level approaches have been proposed to facilitate the development of adaptive parallel applications. These approaches, however, either restrict support to a specific class of applications or require the application to be written following a programming model that easily support changes in degree of parallelism. This dissertation presents an application-level approach that relaxes the restriction imposed by current systems and provides a more general support for developing adaptive parallel applications. This novel approach consists of analyzing the tasks required to make parallel programs from different domains adaptive and isolating the common adaptation operations found among these applications. The common adaptation tasks obtained form a general framework for adaptive parallelism describing the operations that need to be executed to allow parallel applications from different domains to adjust to changing computing resources. The major contribution of this dissertation is the design and implementation of a software system that provides the functionality presented above. DyRecT enables parallel applications belonging to different domains to be made adaptive while preserving their best-suited programming model. The system is implemented as a software library providing different level of abstractions for facilitating the development of adaptive parallel programs.

read more

Citations
More filters
Journal ArticleDOI

Dynamicity in distributed applications: issues, problems and the ASSIST approach

TL;DR: The approach to dynamicity is described in the context of the ASSIST programming environment and it is shown how it is able to provide users with many of the required abstractions to develop adaptive, high-performance, distributed applications.
Related Papers (5)