parallel architectures, multitasked parallel architectures, pipelined computations
The availability of large-scale multitasked parallel architectures introduces the following processor assignment problem for pipelined computations. Given a set of tasks and their precedence constraints, along with their experimentally determined individual response times for different processor sizes, find an assignment of processors to tasks. Two objectives interest us: minimal response given a throughput requirement, and maximal throughput given a response time requirement. These assignment problems differ considerably from the classical mapping problem in which several tasks share a processor; instead, we assume that a large number of processors are to be assigned to a relatively small number of tasks. In this paper we develop efficient assignment algorithms for different classes of task structures. For a p processor system and a series-parallel precedence graph with n constituent tasks, we provide an O(np2) algorithm that find the optimal assignment for the response time optimization problem; we find the assignment optimizing the constrained throughput in O(np2logp) time. Special cases of linear, independent, and tree graphs are also considered. In addition, we also examine more efficient algorithms when certain restrictions are placed on the problem parameters. Our techniques are applied to a task system in computer vision.
Nicol, David; Simha, Rahul; Choudhury, Alok N.; and Narahari, Bhagirath, "Optimal Processor Assignment for Pipeline Computations" (1991). Electrical Engineering and Computer Science. Paper 39.