Durra: A Task-Level Description Language Reference Manual. Version 2

Abstract

Durra is a programming language designed to support the development of large-grained parallel programming applications. These applications are often computation-intensive, or have real-time requirements that require efficient concurrent execution of multiple tasks, devoted to specific pieces of the application. During execution time the application tasks run on possibly separate processors, and communicate with each other by sending messages of different types across various communication links. The application developer is responsible for prescribing a way to manage all of these resources. We call this prescription a task-level application description. It describes the tasks to be executed, the possible assignments of processes to processors, the data paths between the processors, and the intermediate queues required to store the data as they move from source to destination processes. Durra is a task-level description language, a notation in which to write these application descriptions. This document describes the syntax and semantics of the language and incorporates all the language changes introduced as a result of our experiences writing task and application descriptions in Durra.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Sep 01, 1989
Accession Number
ADA219293

Entities

People

  • Jeannette Wing
  • Mario R. Barbacci

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Compilers
  • Computations
  • Computer Program Documentation
  • Computer Programming
  • Computer Programs
  • Computers
  • Debugging
  • Department Of Defense
  • Engineering
  • Environment
  • Executives
  • Information Exchange
  • Language
  • Operating Systems
  • Programming Languages
  • Semantics
  • Software Development

Fields of Study

  • Computer science
  • Engineering

Readers

  • Business Analytics
  • Parallel and Distributed Computing.