Expressing User-Defined Parallelism in EPL (Equational Programming Language).

Abstract

EPL is a high level language which aims at producing efficient parallel code for a variety of architectures. EPL is an equational language and requires the computations to be expressed as systems of recurrent equations. This project describes two additions to EPL language which greatly simplifies the way user expresses parallelism. The first addition is that of a general purpose reduction operator called all. The second addition is the extension of the language to include annotations which the user can use to indicate parallelism at medium-grain level. The annotations are processed by the annotation preprocessor which has two functions. The first is determining a mapping of annotated processes onto a logical hierarchical tree structure which minimizes the total communication cost. We give an O(n2) heuristic algorithm to do this. The second function is to generate EPL code for each process. This part involves parallel scheduling of systems of recurrence equations and is beyond the scope of this project. We, however, discuss the issues that should be addressed in the code generator part which is left for future implementation. (kr)

Document Details

Document Type
Technical Report
Publication Date
Oct 01, 1990
Accession Number
ADA227875

Entities

People

  • Can Ozturan

Organizations

  • Rensselaer Polytechnic Institute

Tags

Communities of Interest

  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Algorithms
  • Computations
  • Computer Languages
  • Computer Programming
  • Equations
  • Formal Languages
  • Generators
  • High Level Languages
  • Language
  • Mathematical Analysis
  • Mathematics
  • Programming Languages
  • Scheduling (Production)

Fields of Study

  • Computer science

Readers

  • Computational Linguistics
  • Parallel and Distributed Computing.