Compiler and Runtime Support for Programming in Adaptive Parallel Environments

Abstract

For better utilization of computing resources, it is important to consider parallel programming environments in which the number of available processors varies at runtime. In this paper, we discuss runtime support for data parallel programming in such an adaptive environment. Executing programs in an adaptive environment requires redistributing data when the number of processors changes, and also requires determining new loop bounds and communication patterns for the new set of processors. We have developed a runtime library to provide this support. We discuss how the runtime library can be used by compilers of HPF-like languages to generate code for an adaptive environment. We present performance results for Navier-Stokes solver on a multigrid template run on a network of workstations and an IBM SP-2. Our experiments show that if the number of processors is not varies frequently, the cost of data distribution is not significant when compared to the time required for the actual computation. Overall, our work establishes the feasibility of compiling HPF for a network on non-dedicated workstations, which are likely to be an important resource for parallel programming in the future.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Oct 15, 1998
Accession Number
AD1005531

Entities

People

  • Alan Sussman
  • Gagan Agrawal
  • Guy Edjlali
  • Jim Humphries
  • Joel Saltz

Organizations

  • University of Maryland

Tags

Communities of Interest

  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Compilers
  • Computations
  • Computer Programming
  • Computer Science
  • Computers
  • Detection
  • Environment
  • Hash Tables
  • High Performance Computing
  • Iterations
  • Language
  • Models
  • Navier Stokes Equations
  • Networks
  • Operating Systems
  • Programming Languages
  • Skeleton

Fields of Study

  • Computer science
  • Engineering

Readers

  • Parallel and Distributed Computing.