A queueing network approach to the module allocation problem in distributed systems

  • Authors:
  • R. M. Bryant;J. R. Agre

  • Affiliations:
  • University of Wisconsin in Madison;University of Maryland

  • Venue:
  • SIGMETRICS '81 Proceedings of the 1981 ACM SIGMETRICS conference on Measurement and modeling of computer systems
  • Year:
  • 1981

Quantified Score

Hi-index 0.01

Visualization

Abstract

Given a collection of distributed programs and the modules they use, the module allocation problem is to determine an assignment of modules to processors that minimizes the total execution cost of the programs. Standard approaches to this problem are based on solving either a network flow problem or a constrained 0-1 integer programming problem. In this paper we discuss an alternative approach to the module allocation problem where a closed, multiclass queueing network is solved to determine the cost of a particular module allocation. The advantage of this approach is that the execution cost can be expressed in terms of performance measures of the system such as response time. An interchange heuristic is proposed as a method of searching for a good module allocation using this model and empirical evidence for the success of the heuristic is given. The heuristic normally finds module allocations with costs within 10 percent of the optimal module allocation. Fast, approximate queueing network solution techniques based on mean-value-analysis allow each heuristic search to be completed in a few seconds of CPU time. The computational complexity of each search is O (M K (K + N) C) where M is the number of modules, K is the number of sites in the network, N is the number of communications processors, and C is the number of distributed program types. It appears that substantial problems of this type could be solved using the methods we describe.