page 1  (57 pages)
2to next section

CERC Technical Report Series

Technical Memoranda


Specification Language and Execution
of Parallel Multi-job Tasks*

Tomas Vagoun
April 1991

*Masters Thesis Submitted to CS Dept. at West Virginia University

ACKNOWLEDGEMENT: This effort has been sponsored by Defense Advance Research Projects Agency (DARPA), under contract No. MDA972-91-J-1022 for DARPA Initiative in Concurrent Engineering(DICE).

Concurrent Engineering Research Center
West Virginia University
Drawer 2000, Morgantown WV 26506

Specification Language and Execution
of Parallel Multi-job Tasks


Submitted to the College of Arts and Sciences
West Virginia University
In Partial Fulfillment of the Requirements for
The Degree of Master of Science in Computer Science

Tomas Vagoun

West Virginia University
Morgantown, WV
April 23, 1991

Abstract iii



The purpose of this thesis is to present a specification language and its execution mechanism used to define tasks in a networked, distributed computing environment. Because of technological advancements in both computer hardware and software, computers are increasingly being connected into networks and systems. Machines in a computer network could be used more efficiently if a complex activity comprised of many sub-jobs could be divided and executed on multiple machines. A new type of command file is needed where the underlying interpreting mechanism takes advantage of resources network-wide, detects possibilities for parallel executions of subjobs, and executes them on separate machines. A specification language is presented here that allows a user to create such command files. This file is to be called a "task file," and it contains information about which sub-jobs should be executed. It is similar to a batch command file; the difference lies in the ability of the interpreting mechanism to find automatically which sub-jobs can execute in parallel. A type of parallel schedule is created, which is subsequently used to control the execution of the entire task. The execution is controlled by an executor and can proceed on many computers. The design and implementation for a network of workstations is discussed in the following sections.