Concurrency in parallel processing systems
The author would like to know how much gain (i.e., speedup) is really achieved when multi-processors are used. In this dissertation, he models a computer job as a Directed Acyclic Graph (DAG), each node in the DAG representing a separate task that can be processed by any processor. Four parameters are used to characterize the concurrency problem which results in 16 cases. The four parameters are: (1) how the jobs arrive: either a fixed number of jobs at time zero or jobs arriving from a Poisson source: (2) the DAG: either the same for each job or each job randomly selecting its DAG; (3) service time of each task: constant or exponentially distributed; (4) the number of processors: either a fixed number or an infinite number (infinite number of processors meaning that whenever a task requires a processor, one will be available). For all cases studied, a common concurrency measure is defined which gives a comparison of how much parallelism can be achieved. The concurrency measure is obtained exactly for several cases by first converting the DAG into a Markov chain where each state represents a possible set of tasks that can be executed in parallel. Two algorithms are presented for assigning the tasks of processors. One algorithm minimizes the expected time to complete all jobs while the other algorithm maximizes the utilization of the processors.
- Research Organization:
- California Univ., Los Angeles (USA)
- OSTI ID:
- 5338150
- Country of Publication:
- United States
- Language:
- English
Similar Records
Generalized multiprocessor scheduling for directed acylic graphs
NP-completeness of linearly-connected multiprocessor scheduling