Static allocation of computation to processors in multicomputers

In this thesis we address the static mapping problem - that is the problem of allocating computation to processors - in a MIMD, distributed-memory architecture: a multicomputer. We are primarily interested in the way in which the computation and the multicomputer can be modelled: the features of the...

Full description

Bibliographic Details
Main Author: Norman, Michael G.
Published: University of Edinburgh 1993
Subjects:
004
Online Access:http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.660050
Description
Summary:In this thesis we address the static mapping problem - that is the problem of allocating computation to processors - in a MIMD, distributed-memory architecture: a multicomputer. We are primarily interested in the way in which the computation and the multicomputer can be modelled: the features of the multicomputer and the computation that are included and left out, and the way in which that impacts upon the predictions made by the models for the performance of computations. We try to put the various published formulations of the mapping problem into the context of the multicomputer, and to identify correspondences between features of the models underlying the formulations, and features of the multicomputer and the computation. The two types of models which we choose to consider in detail are precedence constrained scheduling with interprocessor communication delay, and static process based models. We review approaches to hybridizing the two types of model and propose such a model of our own. We also consider the impact of message contention in the multicomputer. We analyse the models underlying formulations of the mapping problem in a number of ways. We look at the way in which performance gains can be achieved by adding more processors to the models. We consider the way in which the complexity of mapping problems depends upon the modelling of interprocessor communication. We compare bounds of performance given for approximation algorithms in different, but related models. We show, for an example computation, how the predictions of the various model differ and how these differences might lead the multicomputer programmer to different conclusions. Finally we relate the predicted performance in some of the models of our example computation with that observed when executing it on a real multicomputer.