U.S. Department

of Commerce

National Bureau

of Standards

Computer Science

and Technology

NBS

m j

PUBLICATIONS

""" "'^ STAND

TECH

NBS Special Publication 500-69

An Analytic Study of a

Shared Device Among

Independent Computing

Systems

100

.U57

NO. 500-69

1980

c. 2
NATIONAL BUREAU OF STANDARDS

The National Bureau of Standards' was established by an act ot Congress on March 3, 1901. The Bureau's overall goal is to strengthen and advance the Nation's science and technology

and facilitate their effective application for public benefit. To this end, the Bureau conducts

research and provides: (1) a basis for the Nation's physical measurement system, (2) scientific and technological services for industry and government, (3) a technical basis for equity in trade, and (4) technical services to promote pubhc safety. The Bureau's technical work is per- formed by the National Measurement Laboratory, the National Engineering Laboratory, and

the Institute for Computer Sciences and Technology.

THE NATIONAL MEASUREMENT LABORATORY provides the national system of

physical and chemical and materials measurement; coordinates the system with measurement

systems of other nations and furnishes essential services leading to accurate and uniform

physical and chemical measurement throughout the Nation's scientific community, industry,

and commerce; conducts materials research leading to improved methods of measurement,

standards, and data on the properties of materials needed by industry, commerce, educational

institutions, and Government; provides advisory and research services to other Government

agencies; develops, produces, and distributes Standard Reference Materials; and provides

calibration services. The Laboratory consists of the following centers:

Absolute Physical Quantities' — Radiation Research — Thermodynamics and

Molecular Science — Analytical Chemistry — Materials Science. THE NATIONAL ENGINEERING LABORATORY provides technology and technical ser- vices to the public and private sectors to address national needs and to solve national problems; conducts research in engineering and applied science in support of these efforts; builds and maintains competence in the necessary disciplines required to carry out this research and technical service; develops engineering data and measurement capabilities;

provides engineering measurement traceability services; develops test methods and proposes

engineering standards and code changes; develops and proposes new engineering practices;

and develops and improves mechanisms to transfer results of its research to the ultimate user. The Laboratory consists of the following centers:

Applied Mathematics — Electronics and Electrical Engineering' — Mechanical

Engineering and Process Technology' — Building Technology — Fire Research —

Consumer Product Technology — Field Methods.

THE INSTITUTE FOR COMPUTER SCIENCES AND TECHNOLOGY conducts

research and provides scientific and technical services to aid Federal agencies in the selection, acquisition, application, and use of computer technology to improve effectiveness and

economy in Government operations in accordance with Public Law 89-306 (40 U.S.C. 759), relevant Executive Orders, and other directives; carries out this mission by managing the Federal Information Processing Standards Program, developing Federal ADP standards

guidelines, and managing Federal participation in ADP voluntary standardization activities; provides scientific and technological advisory services and assistance to Federal agencies; and

provides the technical foundation for computer-related policies of the Federal Government.

The Institute consists of the following centers:

Programming Science and Technology — Computer Systems Engineering.

'Headquarters and Laboratories at Gaithersburg, MD, unless otherwise noted; mailing address Washington, DC 20234. Some divisions within the center are located at Boulder, CO 80303.
National Bureau of Standirda

library. E-01 Admin. BWg.

net UL -arc and Technology

Computer Science

Qoioo ^^^^^^^^^^^^^^^^^^^^

msto-fo4 NBS Special Publication 500-69

t.> An Analytic Study of a

Shared Device Among

Independent Computing

Systems

Alan Mink

Center for Connputer Systems Engineering

Institute for Computer Sciences and Technology

National Bureau of Standards

Washington, DC 20234

U.S. DEPARTMENT OF COMMERCE

Philip M. Klutznick, Secretary

Luther H. Hodges, Jr., Deputy Secretary

Jordan J. Baruch, Assistant Secretary for Productivity,

Technology and Innovation

' 6, National Bureau of Standards

Ernest Ambler, Director

Issued November 1 980
Reports on Computer Science and Technology

The National Bureau of Standards has a special responsibility within the Federal

Government for computer science and technology activities. The programs of the

NBS Institute for Computer Sciences and Technology are designed to provide ADP

standards, guidelines, and technical advisory services to improve the effectiveness

of computer unitilization in the Federal sector, and to perform appropriate research

and development efforts as foundation for such activities and programs. This

publication series will report these NBS efforts to the Federal computer commurjity as

well as to interested specialists in the academic and private sectors. Those wishing to receive notices of publications in this series should complete and return the form at the end of this publication.

National Bureau of Standards Special Publication 500-69

Nat. Bur. Stand. (U.S.), Spec. Publ. 500-69, 176 pages (Nov. 1980)

CODEN: XNBSAV

Library of Congress Catalog Card Nunnber: 80-600170

U.S. GOVERNMENT PRINTING OFFICE

WASHINGTON: 1980

For sale by the Superintendent of Documents, U.S. Government Printing Office, Washington, D.C. 20402

Price $5.50

(Add 25 percent for other than U.S. mailing)
ABSTRACT

Global queueing network performance models are developed for the increasingly important

class of computer networks comprising a number of independent computing systems sharing a

single resource. An extensive bibliography and survey of prior work relating to this topic are

included. Analytic expressions of performance measures for this class of systems are derived from

the general theory of multi-class queueing networks, and new computational algorithms for

evaluating them are presented that are memory-space efficient (linear vs. exponential) compared

with known algorithms for the general theory. This exact analytic model, called the Shared

Central Server Model, incurs approximately the same exponential time complexity in its

evaluation as do all models based on the general theory; because of this, a simple heuristic

approximate model of this class of systems is also presented that is computationally efficient in

both time and space. Modular expansion of this class of systems is investigated using the

approximate model, and a useful relationship is derived between the number of additional

independent computing systems and the incremental increase in capability of the shared resource

required to maintain the existing level of system performance.

Key words: Approximate queueing models; computer architecture; modular expansion

analysis; performance evaluation; performance modeling; queuemg models; queueing

networks.
ACKNOWLEDGEMENT

The author would like to express his sincere thanks to the following people. To Dr. Charles B.

Silio, my deepest appreciation for providing the light on the long dark road, and the push over the

mountains. To Dr. James H. Pugsley, my sincere thanks for his patience and guidance. To Mr.

Joseph R. Singer, my deepest gratitude for his continual understanding, consideration, and

support. To Ms. Linda Jenista and Ms. Elizabeth Becker, my dianks for their assistance in

preparation of this manuscript. To Dr. Marshall Abrams, Dr. Ira Cotton, Ms. Shirley Walkins,

and Dr. Paul Amer, my thanks for their support and understanding during the final phases of this

endeavor. To Mr. Tom Giammo, my thanks for his insight and consultation. Last, but not least, to

Dr. Mary Catherine McKenna, my deepest appreciation for providing impulses of energy to reestablish momentum when necessary.

* Note: This report was submitted as a dissertation in partial completion of the requirements for

the degree of Doctor of Philosophy in Electrical Engineering at The University of Maryland.

iv
TABLE OF CONTENTS

ACKNOWLEDGEMENT iv

LIST OF TABLES vii

LIST OF FIGURES viii

I. INTRODUCTION

A. Resource Sharing 1

B. Objectives 3 C. Organization of Dissertation 4

II. MODELING CONCEPTS

A. Related Areas 6

B. Queueing Networks 9 C. Approximations 15

III. SHARED CENTRAL SERVER MODEL

A. The Model 21

B. Performance Measures 34

C. Computational Algorithms 42

IV. APPROXIMATE SCS MODEL

A. The Approximation 55

B. Computational Algorithm and Performance Measures 59

C. Error Analysis of Approximation 65

V. ANALYSIS OF MODULAR EXPANSION

A. Exact Analysis 97

B. Approximate Analysis 106

C. Application 116

VI. SUMMARY AND RECOMMENDATIONS

A. Summary 122

B. Research Extensions 124

V
APPENDICES

A. REVIEW OF QUEUEING NETWORK EQUATIONS

1. The Single Server Queue 126

2. Open and Closed Queueing Networks 129

3. The Central Server Model 133

4. Closed Queueing Networks With Multiple Job Classes 139

B. GLOSSARY 147

C. MATHEMATICAL NOTATION 149

D. SAMPLE SPACE FROM ASSIGN ALGORITHM 153

BIBLIOGRAPHY 155

vi
LIST OF TABLES

Table IV- 1. Execution unit processing times 70

Table IV-2. Relative Error statistics for Q^jj 72

Table IV-3. Relative Error statistics for T^p^ 73

Table IV-4. Relative Error statistics for Q^pp^ 74

Table IV-5. Relative Error statistics for Tgpp 75

Table V-1. Relative Error statistics for ^Qpu Ill

Table V-2. Relative Error statistics for W^pp 112

vii
LIST OF FIGURES

Figure IIM. SCS Block Diagram 22

Figure III-2. CS Block Diagram 23

Figure III-3. SCS Transition Probability Matrix 24

Figure III-4. Storage & Computation Complexity 49

Figure III-5. Example of Storage & Computation Complexity 50

Figure IV-1. M/M/l/K and M/M/1 throughput comparison 63

Figure IV-2. M/M/l/K and M/M/1 mean queue length comparison 64

Figure IV-3. Relative error plot of Q^py for all points 77

Figure IV-4. Relative error plot of Tq^^ for all points 78

Figure IV-5. Relative error plot of Q^pp^ for all points 79

Figure IV-6. Relative error plot of T^pp for all points 80

Figure IV-7. Relative error plot of Tgpp for Pgpp 81

Figure IV-8. Relative error plot of Tgpp for J 82

Figure IV-9. Relative error plot of Tgpj^ for s 83

Figure IV- 10. Relative error plot of T^pj^ for R 84

Figure IV-11. Relative error plot of T^PP for u^pp ......85

Figure IV-12. Relative error plot of Q^pp for P^pp 86

Figure IV-13. Relative error plot of Q^pj^ for J 87

Figure IV- 14. Relative error plot of Q^pj^ for s 88

Figure IV-15. Relative error plot of Q^pp for R 89

Figure IV-16. Relative error plot of Q^pp for Ugpp^ 90

viii
Figure IV-17. Exact vs. M/M/1 plot of Q^py vs. u^pj^ 91

Figure IV-18. Exact vs. M/M/1 plot of T^py vs. u^pj^ 92

Figure IV-19. Exact vs. M/M/1 plot of Q^pp vs. Ugpp 93

Figure IV-20. Exact vs. M/M/1 plot of T^pp vs. u^pj^ 94

Figure V-1. Relative error plot of W^^p^- for all points 109

Figure V-2. Relative error plot of W^pj^ for all points 110

Figure V-3. Exact vs. M /M/1 plot of W^^p^ vs. u^pj^ 113

Figure V-4. Exact vs. M /M/1 plot of W^pj^ vs. u^pj^ 114

Figure A-1. Central Server model block diagram 134

Figure A-2. Central Server model transition probability matrix 135

ix

1. INTRODUCTION

A. Resource Sharing

Resource sharing is an old concept. It exists in every industry and facet of life. The basic

motivation for resource sharing is the existence of a scarce resource, caused primarily by economic

or physical considerations.

In the computer industry there has been significant interest in distributed processing [IDC 76]

and a proliferation of computer networks [COTTON 79, LEUNG 78, MONAHA 79, SPRING

78, WILKES 79]. The primary goal of these schemes is to provide various mechanisms for

resources sharing [KAHN 72, ROBERT 70]. In these environments the scarce resources include

information and capabilities (programs or processes) as well as devices.

The cost of processing power and primary memory is currently decreasing at a rate of 50%

per year, while the costs of communication facilities, secondary memory, peripherals and special

purpose devices are decreasing at a rate of 10% per year or less [BBN 79]. LSI techniques and

mass production have been the primary causes of these cost reductions. This has resulted in two

basic system development strategies that can be generally associated with opposite ends of the

computer cost spectrum. These two strategies can be categorized as more- for- the-same-cost and

the-same- for-less-cost.

The trend on the upper end of the cost spectrum, is for the cost not to decrease, but to

compensate by providing increased speed, capacity, and capability. New generations of more

powerful systems are being offered which include parallel architectures based on array and

pipeline concepts. Previously their cost would have been prohibitive. As a result, their

predecessors of the previous generation are subsequently being offered on the market at discount

prices.

On the lower end of the cost spectrum actual cost reductions are being offered. These

basically comprise microcomputer and minicomputer systems, as well as some individual

1
components. With each cost reduction the acquisition of these systems becomes more feasible for

an increasing segment of the business community and the general public.

The cost reduction in microcomputer and minicomputer systems as compared to

maxicomputer systems has encouraged acquisition of many independent small systems vs. a

single large one. Functional and administrative separation, along with the lower price, has also

fueled this trend [IDC 76]. But as applications become more sophisticated and complex they tend

to require more data from other parts of the organization and/or more computational power. In

this environment the small systems can handle the local and overhead processing, allowing the

large system to be utilized efficiently to provide computational power and large storage

repositories.

Secondary storage systems, peripherals, and special purpose devices are now the scarce

resources within and between computing systems, rather than the processors and primary

memories as was previously the case. The increasing economies of scale in secondary storage

technology has made the concept of a large pooled storage subsystem attractive [WATSON 80]. One of the objectives of a Back-End Network [CHAMPI 80, LAM 79, WATSON 80] is to provide

high speed access to global peripherals and storage subsystems [CHAMPI 80, WATSON 80]. The

Octopus network at Lawerence Livermore Laboratory and NASA's Skylab network are two

examples of this type of architecture [THORNT 80]. Several mass storage subsystems are

currendy on the market (e.g. IBM 3850 and CDC 38500). A recent mass storage subsystem

design from Nippon electronics Co. [SEKINO 79] listed shared use by multiple independent

computer systems as one of its primary design criteria. Although large expensive systems have

always been a scarce resource, they are now being shared by low cost small systems. Some

organizations that had more than one independent computing system (ICS) have integrated them

[IDC 76]. Their motivation has been to reduce costs by sharing resources (data, programs, and

devices). Other organizations, in similar circumstances, are investigating the feasibihty and

benefits of embarking on similar integration efforts [IDC 76].

Two popular approaches to performing this type of integration are through a common shared

secondary memory system [CDC 75] or a local area network (LAN) [CARPEN 79]. Neither of

these approaches excludes the other. The shared secondary memory approach requires a

multiplexing device between the ICSs and the shared secondary memory. Some intelligence is

2
also required either in each ICS or in tlie multiplexor to handle the synchronization and lock-out

mechanisms necessary to accommodate simultaneous access to common objects. If the ICSs are

not local, then communication facilities are also required. If the ICSs are within a few kilometers,

then this communication facility could be a LAN.

The LAN approach requires a communication medium and a number of interface units, at

least one for each device placed on the network. It is desirable for these interface units to have

some intelligence, so that the operation of the LAN is kept relatively transparent to each device.

A device on the network may be an ICS, a shared secondary memory, or any other device that may be shared or desires to share the devices on the network.

B. Objectives

We have briefly discussed the rationale for resource sharing within and between computer

systems. Two approaches that have been used to accomplish resource sharing were also discussed.

The resulting architectures of these approaches facilitate modular expansion by allowing the

addition of ICSs, as well as making the sharing of data easier. It is our objective in this

dissertation to investigate these types of systems which share resources. Although our previous

discussion has been primarily concerned witii secondary memory as the shared processing

resource (SPR), it is applicable to any SPR. Our focus will be on an architecture consisting of a

single SPR among a number of ICSs. Our investigation will be concerned with the relationship

between die performance of each ICS based on the processing rate of the SPR and the number of

ICSs. To accompUsh this we. will construct a queueing model, and develop the expressions for the

desired performance measures.

Little, if any, analysis on this class of architecture has appeared in the literature. Most of the

analyses are concerned with the individual subsystems, rather dian the overall system.

Investigation into the performance evaluation of ICSs [BRANDW 77, BUZEN 71], secondary

memory subsystems [CHANG 72, COFFMA 68A, HOOGEN 77], and general communication

3
subsystems [FRANK 72, KLIENR 64, KOBAYA 77, WONG 78] have and continue to be done.

We feel it is important to provide designers and analysts the results of an analysis on this class of

architectures, while in addition providing them with useful analytic tools.

By taking this global analysis viewpoint we will not directly take into account the effects

caused by various strategies within the subsystems, such as the effects of different communication

protocols. We will assume that the communication subsystem (multiplexors, LAN, etc.) has

sufficient bandwidth so that it may be disregarded as a bottleneck for performance evaluation

purposes [THORTON 80]. Generally these delay times are insignificant when compared to the

processing delays of the various devices comprising the system. When these times are significant,

then the processing delays of the devices can be extended to incorporate them.

C. Organization of Dissertation

Chapter II discusses some of die related and previous work in the computer queueing

preformance evaluation area. Appendix A provides a short review of the mathematics of

queueing network theory. Appendices B and C provide a glossary of terms and a definition of

mathematical notation used in this dissertation, respectively. Due to the rather extensive use of

mathematics in this dissertation the reader is urged to refer to Appendix C whenever unfamilar

notation is encountered.

In chapter III a queueing network model is developed for the system architecture we have

introduced here, along with relevant performance measures. Efficient computational algorithms

are presented for the evaluation of these performance measures.

Previously die evaluation of queueing network models required memory-space and time

complexity both growing exponentially with the size of the state-space. The algorithms we

develop to evaluate our model require memory-space that grows linearly with the size of the state4
space, although the time complexity still grows exponentially. This provides the designer and

analyst the ability to evaluate this model when it has a large state-space if they are willing to invest

the computation time. Whereas, previously it may not have been possible due to physical

memory-space limitations.

Chapter IV presents an approximate model for this class of architectures that is significantly

more efficient in computation time and memory-space complexity than is the exact model of

chapter III. The associated performance measures and an efficient computational algorithm to

evaluate them are also presented. The results of this approximation are compared to those of the

exact model.

The performance measures predicted by this approximate model do result in a varying

relative error, which we consider to be within acceptable engineering limits. The efficiency gained

in their evaluation is, for most applications, thought to be an acceptable compromise for the error

incurred. For situations with extremely large state-spaces, it may be the only analysis method

possible. As a result we provide the designer and analyst the capability to use the approximate

model to obtain estimates of the performance of a large number of system configurations in a very

short period of time. Once a small number of candidate configurations are culled, the exact model

may be applied to obtain more accurate performance predictions.

In chapter V both the exact and approximate models are analyzed to obtain relationships

between response/delay times as a function of the number of ICSs and the processing rate of the

SPR. The analysis of the exact model is shown to produce only an upper bound which is too high

to be of any practical use. The analysis of the approximate model yields a very useful and

intuitively satisfying relation between the addition of ICSs and the incremental increase in SPR

processing rate required to maintain system response time. This result will be useful to designers

and analysts when they consider building new systems or augmenting existing systems which are

based on this class of architecture. These results are then applied to two design situations to

provide examples of the utility of this model.

Chapter VI summarizes the salient results of this dissertation. Some directions for future

potential research extensions are also discussed.

5
II. MODELING CONCEPTS

A. Related Areas

Prior to setting forth the proposed shared processing architecture (SPR) two related areas

were investigated. One is the development and status of the dieory that is to be applied toward

the modeling endeavor. The second is similar situations that have been studied.

Queueing network theory will be applied toward developing our SPR model. Existing

queueing network modeling techniques and programming facilities, other than product form,

reasonably allow analysis of systems consisting of a few thousand states. These techniques are

generally limited by algorithm complexity and machine resources. There is currently no

indication that significantly larger state-spaces will be accommodated in the near future

[CHANDY 78]. However, systems whose structure conforms to the requirements of a product

form solution may accommodate state-space sizes many times larger than other queueing network

modeling techniques. In the next section we review the area of queueing network theory.

Modeling requires one to be concerned with two levels of abstraction. The first level is where

the analyst specifies a descriptive model by selecting "key" aspects of the actual system. The

second level is where the analyst formulates or applies an analytic model to represent the

descriptive model. In formulating both these levels of models various simplifying assumptions are

generally made. In applying these assumptions the resultant models, on either level, stray from

accurately portraying the actual system. In the general literature, as in this dissertation, a first,

level descriptive model is presented and a second level analytic model is formulated to closely or

exactly represent that descriptive model. But the accuracy of the analytic model depends on how

well the descriptive model represents the actual system.

In certain situations this presents a dilemma to the analyst, whether to formulate an inaccurate

descriptive model for which an analytic model can provide an exact solution; or to formulate an

accurate descriptive model for which an approximate analytic model can provide an inaccurate

6
solution. Both of these approaches yield inaccurate results for the actual system. The more

correct approach remains an open question, to be handled on a case-by-case basis.

The approach chosen by a given analyst depends on many factors, such as time, analytic tools

and techniques both familar and available, as well as the level of confidence in them. Chandy

[CHANDY 78] suggests the analyst selection criteria are, in descending order of importance, (1)

solution speed, (2) credibility, and (3) degree of accuracy. Based on this ordering it seems that

analysts will sacrifice accuracy for quick results. This should be further qualified. An analyst will

sacrifice accuracy in return for a quick solution if it will provide insight into the behavioral trends

of the actual system. Therefore, one may conclude that approximate models that provide a fast

solution and/or more closely represent a faithful descriptive model of an actual system are always

in demand.

The major limitations of current queueing network theory can be placed in two categories,

size and structure. Size limitations are concerned with the time and memory-space complexity

required to obtain solutions to the models of systems which have large state spaces. Structure

limitations are concerned with systems whose operational structure does not conform to the basic

assumptions and requirements necessary to be modelled by queueing network theory. As a result

of these queueing network theory limitations various approximations to model systems which

suffered from one or more of these limitations have been proposed. Depending on the actual

system and the limitations one is attempting to overcome, these approximate models produce

varying degrees of success and utility. In section C we review some of these approximation

techniques.

Although no previous known work has been attempted for our SPR architecture, a somewhat

similar situation is the study of memory interference (MI) [BASKET 76, BHANDA 73, BURNET

70, HOOGEN 77, MCCRED 73, OSTERW 72, RAU 79, SMITH 77]. Briefly, this environment

consists of n processors sharing m primary memory modules. The main analysis endeavor is to

determine the resultant effective memory bandwidth available to the processors. This class of

descriptive models differs in three primary aspects from the descriptive operational structure of

our SPR architecture.

7
First, in MI the processor and memory are tightly coupled such that processors operate

directiy out of primary memory, and their interactions occur within a few clock cycles. In

contrast, the SPR is a separate device which is loosely coupled, and interactions require hundreds

or thousands of clock cycles. For MI, any delay caused by interference from another processor

attempting to access the same primary memory module results in the blocked processor becoming

inactive. Work cannot progress without the information from primary memory. The exceptions

to this are machines that have have buffered look-ahead and/or prefetch environments. This

resulting inactivity applies as well to multiprogrammed processors, since the context cannot be

switched due to the nonexistence of a quiescent state and the prohibitive overhead which would

be incurred. For the SPR, the processor formulates a request for service to the SPR according to

some type of message protocol. Even if the SPR is not busy and the request does not encounter

any additional delays other than that required to perform die actual service, the processor expects

a relatively large amount of time to elapse before receiving the response. During this time the

processor can then attempt to continue processing (i.e. overlap) or if multiprogrammed can switch

context and proceed to process another job.

Second, MI is concerned with the interference occuring at the access to the individual

memory modules and is not concerned with die job flow or direct delays to any other devices.

The SPR architecture is concerned with the job flow and the direct delays a job incurrs as it flows

through the system. The integrity of maintaining the proper flow paths is a prime consideration of

the SPR model. MI has no flow path, other than the implied processor to primary memory and

return, and has no reason to maintain one. Therefore, after the primary memory ser\'ices the

processor's request there is no distinction or accounting as to which processor the job returns to.

Third, MI generally assumes at least two or more primary memory modules and two or more

processors, each of which are identical. The SPR architecture assumes only a single SPR and one

or more processors, each of which may be distinctly different and have a number of peripheral

processors.

The basic approach in constructing MI analytic models has been as follows. Assume a

probability distribution for the primary memory access pattern and a relation between the

processor and memory cycle time. From these derive the probability of a processor making a

8
request to each of the memory modules. Then apply combmatorics to weight these probabilities

to determine the mean number of busy memory modules and the expected unit execution rate of

the processors.

A different approach was used by McCredie [MCCRED 73] which was based on queueing

network theory. There are many differences between McCredie's model and die SPR architecture

which do not make this model applicable. A single class ofjobs is assumed and therefore, no flow

path integrity between processors can be maintained. There are a multiple number of identical

shared devices and only one job per processor is allowed. McCredie relied on Buzen's algoridim

[BUZEN 71] to evaluate this model, which is efficient since only a single job class was involved.

B. Queueing Networks

Queueing network models were originally developed as an aid to the management sciences for

"jobshop" flow problems. This specific class of problems consisted of those in which various work

requests flow through a network of service centers, forming waiting lines (queues) at each

depending upon the density of traffic. As computing systems became more sophisticated, by

distributing functions in channels and controllers, it was recognized that the executing

characteristics (flow) of a job could be thought of as migrating between these service centers

(CPUs, channels, controllers, etc.) and, therefore, could be modelled using queueing networks.

There are two basic research approaches to queueing network theory, probabilistic and

algebraic. The probabilistic or decomposition [DISNEY 73] approach decomposes the network

into subnetworks, solves the stochastic flow (arrival and departure processes) of each subnetwork

independently, and then recombines the results to produce the overall stochastic flow. This

approach has the advantage of allowing quite general rules concerning the arrival processes and

service distributions, which may be non-markovian in nature. The main disadvantage is a

consequence of their general stochastic nature, which usually results in intractable equations

yielding no closed form solution. Currently, solutions are available for networks consisting of

only two or three service centers.

9
The algebraic [WALLAC 73] approach represents the state probabilities as a set of

homogeneous algebraic equations to be solved. The state is a vector description of the

distribution ofjobs among the service centers of the network. The main advantage of the

algebraic approach is the ability to handle networks with a large number of service centers. The

main disadvantage of this approach is the restrictive assumptions on arrival processes and service

distributions, generally Markovian.

The algebraic approach has been applied using various techniques. A separation of variables

technique has been applied by Jackson [JACKSO 63]. Some numerical evaluation techniques

have been attempted. This approach expands the system state-space description so that the model

may remain Markovian, but also increases the size of the state-space. The equilibrium state

probability equations are formulated and then solved numerically using techniques such as the

relaxed Jacobi iteration [WALLAC 66] method and more recently the Gauss Seidel [GAVER 76]

method. Analytic solutions represent a special subclass of Markovian networks, but yield very

efficient computations due to their structural properties. Numerical solutions on the other hand

can handle any Markovian network, but are limited by the size of their state space. In this

dissertation we are mainly concerned with analytic solutions to the algebraic approach of

modeling systems.

A general queueing network consists of a set of service centers arbitrarily connected, each

with a queue and an arbitrary but fixed number of servers. The network is referred to as closed if

no new jobs arrive or leave, but a constant number continuously circulate. If arrivals and

departures are allowed, permitting the overall number of customers to vary, the network is

referred to as open. Operationally, a job arrives at a service center and is placed in a queue, until a

server, according to some scheduling policy, is available to provide the required service. Upon

completion of service, the job transits, with no delays and a constant known routing probability, to

another service center. This sequence is repeated at each service center.

A queueing network is specified by the number of service centers, the number of servers at

each center, their service time probability distributions and scheduling policy, a probability

transition matrix, the number ofjobs in the network (if a closed network) or an arrival time

probability distribution (if an open network). The network equilibrium state probability

10
distribution is computed from the above parameters and is subsequently used to compute various

performance measures. Performance measures of general interest include mean queue length,

busy probability, and throughput (jobs/unit-time).

The "classical" algebraic solution technique, in general, requires simplifying assumptions to

allow the system to be modeled as a Markovian network, having a managable solution. The

service and arrival processes ofjobs at each service center are assumed to be statistically

independent and identically distributed (iid). The service process is assumed to be exponentially

distributed. The arrival process is assumed to be Poisson, which implies the time interval between

consecutive arrivals has an exponential distribution. The scheduling policy is assumed to be first- come first-served (FCFS). This allows the probabilistic flow rate into and out of a state to be

expressed as a simple linear function of time, the mean service rate, and the mean arrival rate. From the resultant expressions for the probabalistic flow rates a set of simultaneous state balance

equations is formed, and a product form solution is assumed which eventually reduces to a set of

simultaneous linear equations. Appendix A provides a brief review of this solution technique.

Jackson [JACKSO 57] presents one of the earliest works on solving the equilibrium state

probabihties of an open queueing network. A fairly general network is assumed. It consists of a

set of service centers each containing an arbitrary number of servers. Arrivals into the network

follow a Poisson process whose service times are iid exponential distributions, and service is

rendered on a FCFS basis. A solution for the equilibrium state probability distribution is

presented. Jackson points out the similarity between the form of this solution and that of an

elementary single service center with multiple servers, under the same arrival and service

assumptions.

Jackson [JACKSO 63] later extended this model by incorporating arrival and service time

distributions which are functions of the queue length. In addition he generalized the upper and

lower limits on the number of customers in the network, which were previously infinity and zero,

respectively. He introduced the concepts of "triggered arrivals" and "service deletions" to

accomplish this. Triggered arrivals occur when the total number of customers drop below a

specified threshold, thus triggering immediate arrivals of new customers to replace those that left.

Service deletions occur when the length of a queue exceeds some maximum threshold. New

customers arriving at this queue are given zero service time and continue on their routing.

11
Gordon and Newell [GORDON 67A] independently produced a result similiar to Jackson's

[JACKSO 63] in that they derived the equilibrium state probabilities for a closed queueing

network. Gordon and Newell represent this closed job flow system as an irreducible Markov

process, consisting of a constant number of customers whose service time distributions are

exponential. They present the state balance (difference) equations for this system. By assuming

the solution is of a product- form and utilizing a separation of variables technique, they obtain a set

of Unear simultaneous equations of the form E=E[P]. Since [P] is the transition probability

matrix, which is stochastic, a solution to the simultaneous equations exists. The solution to these

simutaneous equations can then be substituted back into the assumed product-form solution for

the equilibrium state probabilities. The product form solution incorporates a normalization

constant whose purpose is to force these product terms to be proper probabiUties that sum to

unity. Thus the normalization constant can be solved for by summing the product-form terms

over the entire state space. The state space grows exponentially, 0[ (K + 1)^ ], with the number of

jobs, K, and the number of service centers, s, in the network. Therefore, this presents a nontrivial

computational requirement.

A simple, nontrivial case of a closed queuemg network model is that of the Central Server

model. Buzen's [BUZEN 71] work on the central server model is among the initial applications of

closed queueing network dieory to computer systems. The model consists of a CPU (the central

server) and a set of peripheral processors (PPUs) which service a set ofcontinually circulating

jobs, see Figure III-2 of chapter III. The behavioral characteristics of a job are as follows. A job

requests service from the CPU. If the CPU is busy, the job must wait in a FCFS queue. Once the

CPU service request is satisfied, the job then transits to one of the PPUs or back to the CPU with a

fixed probability. After service is completed at the PPU, the job proceeds with probability one to

the CPU. The probabiHty transition matrix, [P], for the central server model consists of a single

nonzero row and column, see Figure A-2 of Appendix A. Based on Gordon and Newell's

technique the solution to the resulting set of simultaneous equations is obtainable by inspection.

Substituting this solution into the product form yields the expression for die equilibrium state

probabilities; one must still solve for the normaUzation constant, which is a nontrivial task.

12
Buzen introduced an efficient iterative procedure to solve for the normalization constant.

Instead of growing exponentially, the computational complexity of Buzen's algorithm grows as 0[

Ks ], where K is the number ofjobs and s is the number of service centers in the network. Buzen

further derived expressions for the busy probability, throughput and mean queue length of each

service center (CPU and FPUs). Buzen also developed a similar central server model which

allowed the mean service rates to be arbitrarily dependent on queue lengths, but still required

exponential distributions.

Moore [MOORE 72] independently had applied Gordon and Newell's [GORDON 67] work

to modeling computer systems. His approach to obtaining an efficient solution for the

normalizing constant was based on a partial fraction expansion method. The complexity of this

method is 0[ Ks^ ]. Buzen's iterative method is less complex, 0[ Ks ], and also more versatile.

Reiser and Kobayashi [REISER 75] have generalized Moore's solution technique for mixed

networks (i.e. a mk of both open and closed subchains) and removed several of the previous

modeling constraints. They provide a general algorithm based on multiplication of power series,

which can be viewed as a multi-dimensional linear filter. In an independent effort Lam [LAM

77BJ had extended Moore's solution technique to include nondistinct traffic intensities.

The concept of "local balance" was introduced by Chandy [CHANDY 72]; the previous

works by Jackson, Gordon and Newell, and Buzen were based on "global balance." Local balance

is a subset of global balance in which one concentrates on the flow through a single queue, rather

than through all queues. More specifically it requires equivalent terms on one side of the balance

equation to equal those on the other side, instead of the more general solution to the equation.

Chandy has also shown that some other service time distributions and scheduling policies

yield the same results as the exponential distribution with a FCFS scheduling policy. Therefore,

only the mean service time is required in the product-form solution for these other distributions

and corresponding scheduling policies. The four cases that Chandy identifies as having

equivalent solutions to die exponential distribution are: (1) exponential service distributions and

FCFS scheduling; (2) geometric service distributions whose Laplace transform is rational and a

processor sharing scheduling policy; (3) a service distribution whose Laplace transform is rational

and a processor sharing scheduling policy; and (4) a ser\ice distribution whose Laplace transform

is rational and a last-come-first-served-premptive-resume (LCFS) scheduling policy. One way to

13
understand the relationship between case'l (previouly the standard) and the others is to realize

diat a rational Laplace transform inverts to a sum of exponential distributions [COX 55], in other

words, a hypo- or hyper-exponential distribution. A hypo-exponential distribution is realizable as

a set of serial exponential stages, while a hyper-exponential distribution is realizable as a set of

parallel exponential stages.

Another attempt to extend the range of probability distributions of the central server model is

due to Baskett and Gomez [BASKET 72]. Using an approach similar to Chandy's [CHANDY 72]

"case-3" for the CPU, a service time distribution with a rational Laplace transform and a processor

sharing scheduling policy, they introduced the coefficients of variation into their model. For this

model they derived the equilibrium state probabilities of die network which are identical to

Buzen's, so therefore, all of Buzen's results extend to this variation.

Baskett and Muntz [BASKET 73] extended Chandy's [CHANDY 72] local balance model by

incorporating multiple classes of customers. The allowable classes are obtained from the four

cases presented by Chandy. Each service center contributes a factor dependent on its class to the

product form solution. The equilibrium state probability distribution is presented in two forms, a

detailed form which denotes customer class per service center and an aggregate form of total

customers per service center, the latter exists only under specific conditions. Due to the properties

of local balance the marginal state distributions for open networks are obtained in closed form.

The resemblance between these marginal distributions and those of single server systems is

striking. The marginal distributions are equivalent to those of an M/M/1 queue (a single server

queue with Poisson arrival and exponential service time distribution), and the exception (infinite

server, and iid rational Laplace transform) is equivalent to that of an M/G/1 queue (a single

server queue with Poisson arrival and general service time distribution).

The more recent results of queueing network theory, using multiple job classes, are applicable

to our SPR acrhitecture. The primary limitation is the memory-space complexity closely followed

by the time complexity of obtaining solutions. The state-space for these models grows in an

exponential manner. Although efficient algorithms exist for these models, the SPR architecture

and many other systems have state-spaces too large to be reasonably evaluated by these

algorithms, especially when multiple job classes are involved.

14
C. Approximations

The current queueing network limitations of size and structure have provided the motivation

for approximate modeling techniques. The thrust of the approximation techniques has attacked

the structure limitation. This thrust has occured because previously most subsystems had a statespace whose size was reasonable to evaluate using existing queueing network techniques, but

whose operational structure was not. Therefore, rather than applying an accurate analytic model

to an inaccurate descriptive model, approximate analytic models were formulated to approximate

an accurate descriptive model. As a result of these approximation techniques some economy on

the size limitation has also been realized.

These approximation techniques can be categorized as decomposition or substitution, neither

precludes the use of the other. Decomposition separates the system into various pieces, each piece

is modelled individually to obtain a constituent model, and ttien these constituent models are

joined together to form the overall system model. To be able to insure some correlation between

the individual constituent models and the overall model, some common relations must usually be

satisfied. Although each individual constituent model, and usually the overall system, separately

satisfy diese relations they do not do so in a consistent manner. Therefore, techniques to

coordinate consistent interrelations are required. These relations are generally concerned with the

flow and capacity aspects of the system.

The basis for this decomposition into individual subsystems stems from the work done by

Courtois [COURTO 71]. Courtois investigated the level of coupling between queues and

determined that the subsystem selection should be based on this parameter. Queues that were

strongly coupled should be decomposed into subsystems such that the coupling between

subsystems is weak. The error introduced by this approximation technique is proportional to the

degree of coupling.

The other general approximation technique is substitution. The substitution technique is

concerned with substituting one form (or model) for another in an existing solution method. For

15
example, one might substitute a M/G/1 for a M/M/1 queue form in an analytic model to

approximate the operation of a M/G/1 queue in the descriptive model. The concept is that the

analyst feels the inaccuracies introduced as a result of this approximation are worth the

expediency of utilizing existing methods rather than formulating a new, more complex model or

method.

Much of the effort to extend the structure limitations have been concerned with the service

time probability distribution. An exponential service time distribution is the most prominent.

When an exponential distribution is assumed in formulating a model, it contributes to tractable

solutions. This is primarily due to two properties of the exponential distribution. First, it may be

specified by a single parameter, its mean. Second, it is memoryless, requiring no previous

information to determine its future operation.

A wide range of analytic models are based on the exponential service time distribution

assumption, while the real systems they are applied to do not possess such service times. In many

of these cases when the analytic predictions were compared to actual measurements a reasonable

agreement was observed. Although efforts continue to formulate models based on more general

service time distributions, the robustness of the exponential distribution should not be dismissed.

This robustness has been discussed [BASKET 72A] and investigated [GROSS 75], and as a result

some quantification of the expected error is available for some approximate substitution modeling

applications.

Decomposition techniques have been applied by others [BROWNE 75], but these were

basically specific to a given model or situation. Chandy [CHANDY 75A] introduced the concept

of an equivalent queue, analogous to Norton's dieorem in electrical networks. This allows one to

transform a subsystem of service centers into a single equivalent service center of a queueing

network. This resulting composite service center, referred to as the complement, captures the

interface between a specific queue and the rest of the network. Chandy has shown that the

equilibrium queue length and wait time distributions of the non-reduced service centers are

equivalent to those of the original network, provided local balance [CHANDY 72B] is satisfied by

the network. This means that for systems that satisfy local balance, this technique produces exact

results. For systems that do not satisfy local balance Chandy [CHANDY 75B] has generalized the

above decomposition technique by using an iterative converging flow balance relation to "adjust"

the service rate (flow) of the composite queue.

16
The intent of this decomposition technique was to reduce the complexity of the analysis task.

If one were interested in die analysis of a specific service center, then all other service centers

could be represented by a single composite queue resulting in a two queue system, which is

generally less complex to analyze then the larger original system. Systems whose decomposition

results in multi-class composite queues must also consider job ordering of the different classes, or

sub-chains. The resultant state-space is generally not decreased and little, if any, economy is

realized in the complexity of the analysis. In developing our exact SPR model in chapter III, we

have applied this decomposition technique. Since multiple job classes are being dealt with, only

marginal economy is achieved and it is still necessary to evaluate an extremely large state-space.

Currently the product form solution [BASKET 75] of queueing network theory has evolved to

a structure allowing a general connectivity of a variety of service centers each of which may have a

general service time distribution (having a rational Laplace transform), and may also have a number of different scheduling policies and job classes. A service center having a FCFS

scheduling policy, however, is constrained to have an exponential service time distribution. In an

effort to extend this structure even further Shum [SHUM 77] presented an "extended product

fonn" (EPF) solution method. Based on the fact that each product factor has the form of an M/M/1 marginal distribution, Shum postulated that a reasonable approximation would be to

replace each factor with an appropriate M/G/1 marginal distribution form. The basic

convolution computations and performance measures of product form queueing network theory

are still applicable to obtaining solutions for this approximate model.

Utilizing this approximate method requires an additional constraint on the solution of the

initial set of simultaneous equations. Prior to this approximation the solution to these

simultaneous equations resulted in "relative" visit frequencies, which were related to die absolute

visit frequencies by a multiplicative constant. This multiplicative constant has no effect on the

resultant equilibrium state probabilities or the performance measures, since it is cancelled out of

the expression for the product form solution. Therefore, the relative visit frequencies are

sufficient for the product form solution. The EPF model, on the other hand, requires that the

"absolute" visit frequency be used and, therefore, die multiplicative constant must be obtained.

17
There is no known method for computing the "absolute" visit frequencies. Shum suggests

that balancing a flow relation containing the M/G/1 substitution factors could be used to obtain

them. Once this relation is formulated a bounded binary search process could be used to satisfy a

least square error criterion. A procedure is presented for computing the M/G/1 product factors

for a general distribution with different coefficient of variation (C). When compared to other

models (machine repairman model, cyclic model, and central server model) with similar

corresponding parameters, an error analysis showed that the largest error, as a function of the

coefficient of variation, occured in "mid-range," while exact results vvere obtained for C= 1

(exponential) and diminishing errors resulted for large values of C. Shum has indicated that

further work is needed to extend the EPF model to include multiple classes, and queue dependent

service times. The approximation developed by Shum is an example of the combined use of both

substitution (M/G/1 for M/M/1) and decomposition or flow equivalent techniques (used to

obtain the absolute visit frequencies). The EPF approximation is not applicable for the SPR

architecture principally due to the need to account for multiple job classes.

An approximate solution for queueing networks has been developed by Kobayashi

[KOBAYA 74A], using the Kobnogorov diffusion equations (also known as Fokker-Planck

equations). By using a "Central Limit-Theorem" argument, Kobayashi has hypothesized that

changes in queue length over a large enough time interval approximates a stochastic process with a

normal distribution. As a result, this queue length process can be modeled by a Wiener-Levy

process (or Brownian motion) with a suitable boundary condition. Equations for the equihbrium

state probability distribution for a queue are developed. When these results are compared to the

known solution of a M/M/1 queue they are found to be in error. In an effort to reduce this error,

these results are modified to conform to this known solution. Using a multi-dimensional diffusion

equation this approach is extended to both open and closed networks. Once the the equilibrium

state probabilities are obtained they are then substituted back into the product form solution. For

the SPR architecture we have already assumed an exponential service process. Therefore, existing

exact queueing network theory can be used without the need to determine the probability

distributions by using the diffusion approximation.

18
Using this approximate technique the transient state probability distributions are obtainable.

Kobayashi [KOBAYA 74B] derives them for a single-server and a cyclic queueing system.

Obtaining the transient solution to general open and closed networks is much more difficult, and

no method currently exists.

Decomposition or flow equivalent techniques apply to exact as well as approximate models.

In certain situations these composite sub-models can significantly reduce the size of the overall

system state-space, therefore, allowing large system models to be evaluated much more efficiently.

There are some problems with this technique. One is that the service center or centers that one may desire to investigate must usually be excluded from any of the composite sub-models.

Another is if any parameters of the service centers within a sub-model changes a new sub-model

must usually be evaluated and "re-aligned" to agree with the overall model consistencies. This reevaluation process may negate any size economy that may otherwise been realized. Although the

decomposition technique is applicable to the SPR architecture it does not reduce the state-space

size. Also, when these techniques are applied to approximate models the resultant accuracy is

generally variable and unknown. Chandy [CHANDY 75] has indicated a 10% to 20% expected

error for his approximation technique. Others [SHUM 76, KOBAYA 74A] have indicated an

error exists, usually by example for a few configurations, but do not indicate what one can expect

for the general case.

We have mentioned earlier the robustness of the exponential distribution. Realizing that this

assumption does result in inaccuracies some studies have been conducted to investigate them as

well as errors caused by substituting other service time distributions. Gross [GROSS 75] has

investigated the resultant error when a M/M/1 queueing model is used to approximate a M/G/1

queue. He found that the resulting error was proportional to the coefficient of variation. Buzen

[BUZEN 74] has investigated the use of a M/G/1 queueing model to approximate a M/G/l/K

queue. He found that the largest error occured when the traffic intensity was high or the value of

K was low. Buzen [BUZEN 77] also investigated the use of a M/M/l/K queueing model (a single

server queue with Poisson arrival and exponential service time distribution, with a queueing limit

of K jobs) to approximate a M/G/l/K queue (a single server queue with Poisson arrival and

general service time distribution, with a queueing limit of K jobs). His results indicate that

19
response time performance measures have a greater sensitivity to this approximation than do the

utilization or throughput performance measures. Also Buzen indicates that the error is

proportional to the coefficient of variation, which independently verifies similar results obained

by Gross.

All of these studies have helped to quantify the error that results from these substitution

approximations. Therefore, they provide the analyst with some quantification of the error that

can be expected when these substitution approximations are applied. In a similar manner we

attempt to quantify the error that can be expected from the approximate model presented in

chapter IV,

20
ni. Shared Central Server Model

A. The Model

Utilizing the general theory of queueing networks, a model will be constructed for a special

class of computer architecture. The model (figure III-l) is a network consisting of a set of

independent computing systems (ICS) and a single shared processing resource (SPR). Each ICS is

a central server system (figure III-2) consisting of a single central server (CPU) and a number of

peripheral processors (PPUs). Each ICS processes a separate class ofjobs, while the SPR

processes all classes of jobs. Class distinction is the means by which the job flow from each ICS is

kept segregated. This model to be developed will be referred to as the Shared Central Server

(SCS) Model.

The SPR and the devices within an ICS each represent an intricate subsystem, as do the

various communication subsystems interconnecting each of them. The model does not directly

incorporate the effects of various strategies that may be utilized within any of the subsystems, such

as the effect of different communication protocols. Instead these effects are assumed either to be

incorporated into the device processing time or to be insignificant when compared to the overall

device processing time.

Specifically, this model consists of R ICSs where the i-th ICS is composed of Sj devices. For

the i-th ICS, the CPU is denoted as device (i,l), and devices (i,2) through (i,Sj) are the PPUs. The

SPR is designated as device (i,0), or just (0), and has a device count Sq = 1. The network structure

can be represented by a vector denoting the number of devices in each ICS. S = (Sq, ... , s^). and

the total number of devices in the network is L = 1 s^. The network is closed, constantly circulating

and processing a total of K jobs, which are composed of separate and distinct classes, one for each

ICS; while the SPR processes every class using a FCFS scheduUng policy. A vector description of

the job class allocation is J = ( J^, ... , Jj^), where J. is the maximum number of (class i) jobs in the ith ICS. The network state n is defined as the distribution of the various classes ofjobs among all

die devices, n = (n-j^ q,n-j^ ^ ... , n-j^ ^

, nj q, ... , nj^

^ ) , where n^ ; is the number of class i jobs both

waiting and being processed at device j in the i-th ICS. The network job constraints are

21
CM

/\ ow

S» 4J

Olw1 ^ w

CO fl 1

C/) s- Ot/)n 1 w g- o

^«.o 11

cz o 03 t y to

a> ' r>v«J

/-s >u o ^ t \U +j

-co 1 1 Q. QJ

=3 s O) o 3

cr

<+I

<u

4-J f6

S- 4-

fO o

Q. c • u 00 o

*r~ O) 4J

fO +J +->

U

C o (0 c to

•r— O)

s- 00 o CL O O) 00 I/) SS-3-

22
/\

Ao A A o a. A

cn-o c

•r—^

QJ E O o •r->

O)

+-> -o E

O) "O

QJ

O)Q.

QJ -o o

O)u•1—> ot—1

QJ00 1 fO

•r—

+-> O) E

O) +J 00O)

<+-o Q.

CD

S- ro

S_ O) • CD 1

CU

fC o 13

•p^ O)

•r—u cr

u 00 o o 4-> •1— LU

OO "O +-> CU c S O) 4- o (/) •r— <L) S- o. c E ^ O) O

oo •1-3 -M

O) •p— JE E 4->

s_ cn

OD CD

•r— (_> -o O QJ sz

C/) o.

UO

Xo

JD _Q

00 GJ o 4-J

C\JI

QJ

=sCD

23
0 1 0 ... 0

Pl.o Pi,i Pi,2 P:,si

0 1 0 ... 0

0 ... 0

0

0 1 0 ... 0

[P]=

0 1 0

0 Pr.O Pr.1 Pr.2 ••• PR,Sr

0 • • • 0

0 1 0

Figure III-3. SCS model transition probability matrix.

24
(la) n. = 2 rij. < Jj i >0 ij — 1

j = l

R R Sj

(Ic) 2 Jj = 2 2 n. . = K ^ and

i=l i=i j=o

(Id)

„, ={

2 n.j ' i>0

2 o

' 1 = 0

j = l

At each device jobs are processed on a FCFS basis with an exponential service time

distribution that is independent and identically distributed (iid), and not dependent on the

number ofjobs waiting for service. The j-th device of the i-th ICS is characterized by its mean

processing service rate u-j, where u- q = Uq for all i. The job flow (as indicated in figures III-l and

III-2) is from the i-th CPU to one of the devices within the i-th ICS or to the SPR with a constant known probability, (Xp- ^.j j<l , where 0<j<s-. Note that the jobs do not change class as they

transit between devices. After being processed by a PPU or the SPR, the job returns to the i-th CPU with probability p- j.- = 1. All other transition probabilities are equal to zero. The

transition probability matrbt for the SCS model is shown in figure III-3. The p. -j^.- j' s are the only

transition probabilities that are not 0 or 1 and, therefore, they are the only transition probabilities

that need to be specified by a variable. Based on this we may shorten the subscript notation for

these transition probabilities to p- j. The SCS transition probability matrix can be conceptualized

as a matrix whose diagonal is a set of sub-matrices and all non-diagonal elements are zero. Each

sub-matrix is an (Sj-I- 1) x (s- 4- 1) matrix, with a single non-zero row and column.

25
Within the model the job flow is assumed to occur in zero time, although in an actual system a

finite amount of time is required. The communication subsystem for these architectures generally

has sufficient excess bandwidth to prevent it from becoming a bottleneck [WATSON 80,

THORTO 80]. If the communication time is significant compared to the device processing time,

then the device processing time can be increased to account for it. So, this modeling assumption is

reasonable.

With this "micro" information one can then compute the relative load factor [GIAMMO 76],

Xj for each device by solving a set of simultaneous equations as follows:

R S:

(2a) 6;

ij ~ ^ ^ ^mX Pm,k:ij

m=l k=0

, and

(2b)

where e- j is the relative visit frequency to the j-th device in the i-th ICS by a class i job. For the SCS model the relative visit frequencies can be found in terms of e- by substituting the transition

probabilities of figure III-3 into (2a). Choosing -|^ = u- results in the following (See Appendbc A

Section 3):

j = l (CPU)

j;^l (not CPU)

Hence, x^ ^ = 1 by choice. Using the relative load factors, the state equilibrium probabilities can be

computed by utilizing the product form solution [BASKET 75] (also see Appendix A, sections 3

and 4)

e- ={

u-U

Pij \l

(3) P(n) = J- fo(No) n

G(J) z = i

26
where z is a mapping from the double device indices (i,j) to a single index (somewhat analogous

to the mapping of a Fortran two dimensional array into a linear address space), such that

0 , j=0 Vi

z = { j , j>0 i = l

i-l

(4) m = l R

L= 2 s. i=0

The product factor is (note, the subscript order is reversed from Appendix A, Section 4)

n.

.

R X- (5a) fo(No) = no! n

(5b) f/n^) = x^"^ , z>0

The normalization constant is

G(J)= 2 fo(No) \l f^(n^)

n z = l

and the sum is over the entire state space n, which is constrained as specified in (1).

A computationally efficient method of computing the normalization constant was first

presented by Buzen [BUZEN 71], for a single class ofjobs (see appendix A). Others have since

presented a generalization of this iterative method for multiple job classes [MUNTZ 74,

GIAMMO 76, SHUM 77]. The efficient generalized computation method requires evaluation of

an auxiliary function. This auxiliary function has been established as an aid to explicitly present

the recursive structure of the normalization constant (Appendix A, sections 3 and 4). This

auxiliary function, for our model, is

27
g(M;z) =g(M;z-l) + g{U-d.;z) l<z<L-l

m

'r,0 (6) R R X, - r g(M;0) = 2 x^o fo(M-dp = |M| ! U

r=l ' r = l nij.!

where

G(J) = g(J;L) ,

g(Q;z) = l , l<z<L-l

M = (m-j^, ... , nij^) is a dummy counting vector that may range over the job allocation vector , R R

3 0<mi<Jj , llMll = n (m^+l) , and |M|= 2 m^ , i=l i=l

0 r^^i

dj = (b2, ... ,bj^) a unit vector, 3 b^. = "[ , r = l, ... ,R , 1 r=i

fo(M) = I x^o fo(M-dp , with fo(0) = 1 r=l

and z is the mapping of the dual indices into a single index as defined in (4).

To apply this method directly would require retaining all ||M|| values of g(M;z) for at least

a single z. One may conceptualize g(M;z) as an ||M|| by z matrix and therefore, the retention of

a single z set of values would consist of a column containing ||Ml| elements. The resultant minimum storage for g(J;z) is

(7) n (J^ + 1) . i=l

The total number of operations is on the order of

28
R

(8) 2(R + L-1) n (J^ + 1)

i = l

where L is the total number of devices in the network as defined in (4). For example, consider a

network consisting of R = 6, K = 30 allocated as J = (5,5,5,5,5,5) and S = (1,3,3,3,3,3,3); which is 6

ICSs (i.e. 6 job classes) each comprising 3 devices and processing 30 jobs allocated as a maximum

of 5 per ICS. This example would require minimum storage of 6^ = 46,656 words and

approximately 2,239,488 operations. As the number of ICSs, R, or jobs, K and J, increase the

storage requirements and operation count increase exponentially, which can be seen by inspecting

(7) and (8).

Starting with the general solution and utilizing the specific structure of the SCS shall allow us

to formulate a more efficient procedure for computing die normalization constant. The general

queueing network solution for the normalization constant of (3) is

(9a) G(J) = I fo(No) f/n^)

n 1=1

(9b) = 2 fo(No) y f/n^)

L-1 z = l

z=0

L-1 (9c) = 2 {fo(No) n f^(np}

L-1 z = l Xn^<K

z = l

R Si (9d) = Y { fo(No) n n f,/n^^)}.

S- i=l J=l

J = l

Noting the structure of the SCS we can factor out those devices which service only the R-th

job class, resulting in

29
R-1 s- Sj^ G(J) = n n f,.(n..) [ 2 fo(No) n f^^^in^^,)] }

(10) Sj i = l j = l Sj^ k = l ln. .<}., Vi<R-l Sn^ j^<Jr

j=l k=l

Concentrating on the inner-most factor of (10), and substituting (5) yields

"r,0 ^ ^r,0 2 [ {n^! n } n XR,\k ] (11) Sr r=l n.! k = l

'R '-^ "r,0

k = l ^"Rk^jR

Rearranging and further factoring (11) results in

R-ln

"r,0 ^R,0

1: k=l

^"R.k^jR

} n xj,>ic]

k = l

R-l

= ( n

r=l

V,0 Jr

)

"R,0

'R,0 {no!

^R

k = l

} n X

.

k = l ^"R.k'^^R

Noting that nj. q = Jj- " nij. further yields

R-l "r.O J "R,0

^r.O ^ ^R,0 ^R

(12) ( n ) [I ({n^! } 2 n Xj,/R.k)]

r=i n^^! ni^=.0 nj^p! Sj^ k=i

^"R,k = '^R

30
The inner-most factor of (12) is recognized as a recursive function of the form

^R = 1 n X

k = l Sr-1 k = l

^"R,k ^"R,k=

k=l k = l

''R

Sr k=l

^"R.k = '"R"^

k = l

This can be expressed on a term by term basis by a family of auxiliary functions, one for each ICS,

in a form similar to (6) by letting:

g^Cmp = g/m^;Sr) = g/m^is^-l) + x^^^g/m^-lis^)

where

g^(0;Sj.) = 1 , and

Therefore, (12) becomes

R-l ,

"r.O J "R,0

^r,0 ^ ^R.O

(13) ( n ) [I ng! gR(mR)]

^=1 ^.o' '"R=o Vo'

Substituting (13) into (10) results in

^ 1 ''i.o -"r ^R,0

G(J) = 2 { n n f. ^(n.^) [I no ! g^{m^) ] }

1. Q

; mR=0 n^

Q

! In. j<Jj, Vi<R-l

j = l'

R-l X

"'-0

s J X

"R-O K i Xj Q

Sj Jr Xr q = 2 { n n f.^(n.^) [ I no ! g^{m^) ] } .

s. i = l n-o! k=l m^=Q n^o!

5;n.i<L, Vi<R-l

- j = l

31
Repeating the above partitioning and factoring process results in the following

(14)

'1.0"1,0

G(J) = 2 { gi(mi) { ... {I

'r-I ^R-1,0

'R-1,0

m^=0 n^o

!

mj^.^=0 nR,Q!

gR.l(mR.i)

{ 2 no!.

mj^=0

^R,0"R,0

SrC^Ir) } } - }}

Letting

"i,0

h(i;m.) = g^{m-)

results in

^1 •'r-i •'r (15) G(J) = 2 h(l;mi) [ ... [ 2 h(R-l;mR.i) [ 2 h(R;mR)no!]

m-|^=0 "^R-l"^ mj^=0

(16) =2 ... 2 [ no ! n h(i;mj) ] m-^=0 mj^=0 i = l

K R

(17) = 2 no! [ 2 n h(i;Ji-n.o)]

no=0 R i = l 2n.o = no

i = l

h Jr

(18) = 2 ... 2 fo(J-M) n g^Cmj) , and

mi =0 mg^=0 i=l

fo(M) = 2 fo(M-d,)

i = l

32
Using the form of (18) a recursive relation can be formulated similar to (6) as follows

G(J) = S

mj=0

{ fo(J-M) n gJ,m.) }

i=l

= 2

R R

{ [ Z fo(J-ci,-M) ] n g^(m.) }

r=l i=l

R R J = fo(0) n gJiJ.) + I { : i=l r=l mj.=0

2: mR=0

fo(J-d,-M) n g.{m.)}

i = l

Noting that

G(J-d,) =

•"1

m-|^ = 0 mj.=0

5: fo(J-d^-M) n g.(m.) and

i=l

fo(Q) = 1 ,

yields a recursive relation for the normalization constant as

(19) G(J) = n gi(J.) + 2^

x^o G(J-d^),

i=l r=l

where G(0) = 1 .

The above normalization constant is computed as the convolution of the product factors for

the SPR and the auxiliary "g" functions for each ICS over the range of the job class allocation

vector. This means that due to the structure of the SCS we are able to represent each ICS by a

33
single composite "g" function rather than by a set of product factors, one for each device. The

"g" functions represent the convolution of the product factors for each device in an ICS, and can

be computed efficiently.

The state equilibrium probability is obtained by solving for G(J), by using any of (15)

through (19), which can then be substituted into (3) to yield

R s- (20) P(n) = _1_ fo(No) n n Un)

G(J) i=l j = l

B. Performance Measures

Having established the basic relationships to compute the state probabilities, we shall now

utilize them to form relationships for some performance measures. We shall temporarily exclude

the SPR from the following. The threshold equilibrium queue length probability distribution,

which is the marginal probability that device (ij) is serving k or more jobs, is

P[n,.>k] =i:^P(n)

(21)

n 3 n- >k

R s = _L_ i: fo(No) n n f^_,(n^_,) G(J) n 3 n.>k r=l t=l

n k From (5) the expression for ^^^i^^^ is x^.^'^ and, therefore, when n.j>k a factor of Xjj can

be extracted from (21). This extraction changes the job class allocation vector over which sums are

taken, from J = (Jp ... , Jj^) to J' = (J]^, ... , Jj-k, ... , Jj^) and also causes a corresponding change

in the state-space from n to n'. Applying these transformations to (21) results in

R Sj.

P[nij>k] = x^/ I fo(No) n n f^_^(n,,) . G(J) n' r=l t=l

34
Noting the similarity of the summation portion of the above expression to (9) results in

P[ni>k] = G(J') xj.'' G(J)

(22) = G(J-kdj) \.. , for i,i^O

G(J)

If the marginal probability of device (ij) is desired, it may be expressed as

?[n.. = k] =P[n..>k] - P[ni.>k + 1]

= J_ [ Xi/ G(J-kd.) - x,/^^ G(J-(k + l)di)]

(23) G(J)

k

[ G(J-kdi)- X.. G(J-(k + l)di)] , for i,j;tO

G(J)

Ofmore interest than these probabilities are the performance measures of device (ij), such as

the busy probability. A- =, the mean queue length, Q- and average throughput, T- . The device

IJ IJ busy probability is obtained from the threshold marginal probability by noting that

(24) A.. =?[n..>l] = G{]-d.A_ x.j , for i.j^^O

G(J)

The mean queue length of device (i,j) is by definition

Q. . = S k P[n. =k]

k = l

1 = E k { P[n.j>k] - P[ni.>k + 1] }

k=l

35
1 k P[n..>k] - 2 k P[n..>k + 1] k=l k=l

1 1 = i: kP[n..>k] - {z (k-1) P[n..>k] + J.P[n..>Ji + l] }

k=l k=2

Noting tiiat P[nj j>Jj] = 0 results in

Qy = PKj>l] + 2 k P[n. j>k] - { 2 k P[n. j>k] - 2 P[ni.>k]

k=2 k=2 ' k=2

(25) = 2 P[njj>k] , for ij^^o

k = l

Substituting (22) into (25) yields

(26) Q.. = 1 2 x..''G(J-kd.) , for iJ^^O

G(J) k=i

'

The device throughput when the service rate is independent of the queue size is defined as

k=l

(27)

% 2 P[n,. = k] k = l % {I- PK-0] }

36
= G(J-d^) e.j , for ij^O

G(J)

The i-th ICS throughput for service rates independent of queue size is defined to be that of its CPU, which is

(28) T. = GQ-d-L e^i

G(J)

It should be noted that although this measure is referred to as throughput, it may more properly

be thought of as effective processing rate or departure rate, as can be seen from its definition in

(27).

Similar measures for the SPR will now be derived. The SPR busy probability is

(29) Aq =P[no>l] =1- P[no = 0]

From (1), it can be seen that when nQ = 0, n. q = 0 and I n^^ =J. for i = l, ... ,R. From (5),

when nQ = 0 it can be seen that fQ(0) = 1. Substituting this into (20) yields

R s. P[no = 0] = I n n f,.(n..) G(J) s. 1=1 j = i s n. . =J. , Vi

j = i

Repeating the same partitioning and factoring process used to obtain (14) results in

R

P[no = 0] = ^

n g^(J,) G(J) 1=1

Substituting this into (29) yields

37
R

(30) Aq = P[no>l] = 1 - n _g,XJiI

i = i G(J)

To obtain the mean queue length of the SPR its aggregate marginal probability, independent

of class, must first be computed. This may be expressed as

P[no = k] = 2 P(n)

n R

3 In.o = k i=l

R s. _I_ 2 fo(No) n n f,.(n,.) G(J) n R i=l j = l 3 5:njo = k

i = l

R X^/r.O R s, = _i_ 2 { [ k! n ] [ n n x^/u ] }

G(J) n R r==l nj.Q! i = l j = l 3 2n.Q=k

i = l

= _LL 2 n { [ ] n x^."rj }

G(J) n r = l n^o! j = l

i=l

3 Sn.o = k

R X

."r,0 K Aj.Q sSj. = ^LL I [ 2 n { n } ] G(J) R n-N-Q r=l n^^! j = l In^O = k

i = l

= _ki_ I { n [ 2 n x^ ."rj

] }

G(J) R r=l n^^! j = l

^"1,0 = "

' ^"r,j = V\0

i=l j=l

38
Substituting, into the above, as in (13) yields an expression for the aggregate marginal

probability for the SPR as

(31) P[no = k] = _LL

G(J)

2

R

[ n

r=l

i=l

= k

!

G(J)

n h(r; J^-n^^

)

r=l

Sn.o=k

i=l

Forming the defining equation for the SPR mean queue length and dien substituting (31)

results in

Qq = I kP[no=k]

k = l

(32)

= 2 k { _iL 2 n h(r;J^-n^o) }

k = l G(J) R r=l

Sn.o=k

i=l 3 n.o<J.

Also of interest is the mean queue length by job class. The SPR is the only device that

processes multiple job classes and is the only device where this performance measure differs from

the aggregate mean queue length. The equation for the SPR class marginal probability, the

probabihty of k class r jobs at the SPR, is

P[n^Q=:k] = 2 P(n) , for 0<k<J^

n 5 "r.0 = ''

39
k Jr r

(33) = 1 2 ... 2 ... 2 { no! n h(i;J.-n.o)

G(J) "1.0=0 \0 = ^ "R,0=0 ' = ^

From this the mean queue length for a class r job is defined as

Qr.O = ^ kP[n,o = k] k=l

(34) = 2 k [_1_ 2 ... 2 ... 2 {no ! n h(i;Ji-n.o) } ]

h

k Jr

2 ... 2 . 2

'1.0=0 "R.0

Jr 2 ... 2 -1.no!

"r.0=l "R.0=0

i = l

h

= 1 2

i=l

Forming the defining equation for the throughput of the SPR and then substituting (30)

results in

R

(35) n gi(Ji)

= "o{l- }

G(J)

We have derived the standard queueing network probabilities and performance measures

for the SCS model, which are recapitulated here:

40
The normalization constant

G(J) =2 ... 1 { fo(No) n gi(Ji-ni.o)} ' ^here

"1,0=0 nj^Q=0 i = l

i = l

The device busy probability

Ajj = .QOid-L , and

G(J)

R

n g^Ui)

i = l

G(J)

The mean queue length

Qij = 1 I x.j'^Gd-kdi) , for ij^^O , G(J) k=i

K = _J 2 k! k

G(J) k=i

{

R

n

r=l

h(r;'V\0) }' and

Sn.o=lc

i = l

Qr.O

=^

G(J) "1.0=°

r

\o=i

2 {no! n^o n h(i;Ji-n.o)

"R,0=0 i = l

41
The device throughput

(43) T.. = u.j A.. = G(J-d^L ej, , for H^^O , and

'

' ' G(J)

'

R

n sA)

,{^--— }

. G(J)

The system (class) throughput

(45) T. = G(J-d.L e-i

G(J)

C. Computational Algorithms

As discussed previously the general iterative procedures for computation of the normalization

constant and other performance measures require substantial memory space. In an effort to

reduce the memory required without significantly increasing the computations we have

reformulated the network expressions utilizing the structure of the SCS model. In addition, we

were able to derive expressions for mean queue length, which in general are not available in the

literature. Current iterative algorithms to evaluate our expressions require processing time and

memory-space that grows exponentially. We will present algorithms to evaluate our expressions

which use a minimal amount of memory and require the same order of processing time as do the

existing iterative procedures.

Examining the expressions for our performance measures it can be seen that the computations

are all very similar, requiring the sum over a restricted state space. Two forms of diis computation

are represented by (15) and (17), which we shall call the sum-of-products (SOP) expansion and the

factorial (FAC) expansion, respectively. Each form has its advantages and disadvantages.

(44)

42
The SOP expansion minimizes the number of multiplications, but places a burden on the factorial

computation since the value is not monotonically changing. The FAC expansion simplifies the

factorial computation, but requires generation of all states in a restricted sub-space. We will

present efficient algorithms for both evaluation forms and for the generation of a restricted

sub-space.

The SOP algorithm requires an efficient method to evaluate the factorial, tiq], in the innermost product term of (15). This value is a function of all the indices and, therefore, is continually

changing during the evaluation of (15). If the value of were monotonically increasing then an

efficient method to compute the next factorial value Hq, based on its previous value, is the well known recursion

no! = (no-l)!no

In our case the value of nQ varies in a cycle which first monotonically increases and then abruptly

decreases. This decrease occurs at well defined points; when any product term "sum-limit" is

reached. By keeping track of the last value to be factorialized and its factorial value for each

product term, the above efficient method may still be applied.

The SOP expansion is of the following form (note: mj= J--n. q):

G(J)- 2 h(l;Ji-nio) [

... [ 2 h(R-l;}^.^-n^.^,) h(R;VnRo) Hq ! ] ]...]•

11^0=0 Vl,0=° "R,0=°

Defining three temporary vectors as follows:

T=(tp ... ,tj^) is the accumulated sum ofjob class distribution, where

r t^ = 2 n-o , note: t^ ^ng

i=l

W=(wp ... , Wj^) is the accumulated factorial values, where

Wj. = t^! , note: Wj^ =nQ

!

V=(v,, ... , Vp) is the accumulated summation value of the product terms, where

43
"R-l

V. = 2 h(i;J.-n.o) [ ... [ I h(R-l;jR.i-nR.i_o) [ 2 h(R;Vnj,_o)no ! ] ]

...] n.o=0 "R-1,0=0

Thus v., = G(J), and v„ is the innermost product term. The SOP algorithm proceeds as follows:

BEGIN: SOP algorithm

STEP 1: initialize 1-st vector elt. i=l

t, = 0

w. = 0

v,=0

STEP 2: compute remaining vector elts. STEP BY 1 j = i + l TO R

BEGIN

Wj = W 1 v=0

END

STEP 3: compute inner-most product term

STEP BY 1 nRo = 0 TO

BEGIN

^R=^R+Vh(R;JR-nR.o)

tR = tR+l

^R = V^R

END

i=R

STEP 4: expand outward accumulating product term sums

i = i-l IF i<l GO TO STEP 6

v. = Vj + v,^l*h(i;Ji-n.o)

"i,0 = "i,0 + l

STEP 5: update factorial if "sum-limit" not reached

IF n.Q>]. GO TO STEP 4

t, = t. + l W. = Wj*tj

GO TO STEP 2

STEP 6: terminate algorithm

STOP

END: SOP algorithm

44
The SOP algorithm requires storage for three temporary vectors (T, V, W), each containing R

elements, and for the R vectors of h(i,J- ), each containing J^+l elements. Therefore, the total

storage required for this algorithm is

R R

3R + i: (Jj + l) = 4R + 2: J. = 4R + K

i = l i = l

To determine the number of operations needed to evaluate the SOP equation form, note that

one addition and one multiplication are required for each combination of the first (outer-most) R1 product terms. For each of these combinations the entire inner-most (R-th) product term and

the factorial must be evaluated, requiring two multiplications and one addition at each step. This

results in an operation count on the order of

R-1 R-1 [n (Jj-M) ] [ 2 + 3(Jr + 1)] :=[5 + 3JR][n {]+!)]

i=l i=l

The FAC expansion requires an additional algorithm to sum over every state in a constrained

sub-space, which yields all combinations of different job classes keeping the total number ofjobs

constant. The sub-space is defined by all solutions to

R

2 = k

with the constraint of

^1.0 ^ h

To sum over the constrained sub-space start with class 1 jobs. Next from a total of k jobs

determine the maximum and minimum number ofjobs that can be allocated to classes 2 thru R

in conjunction with the constriants, 0<nj<J-. Then determine the allowable range of class 1 jobs

based on the maximum and minimum values just computed. Stepping through the range of class

1 jobs, determine the maximum and minimum number ofjobs that can be allocated to classes 3

45
through R from the remaining k-n^ q jobs. Then compute the allowable range of class 2 jobs.

Continuing this procedure for each job class results in the following state-space generation process

MIN[Jj .m^] MIN[Jj^ ,mj^] 2 ... I

n^Q = MAX[0,q^] rij^ Q=MAX[0,qR]

where represents the number of jobs to be distributed over queues i thru R, and is

expressed as

T^.in^.i , R> i >1

m,= {

k , i = l

and Qj represents the minimum number of jobs that must be placed in the i-th queue (which

may be negative), and is expressed as

m. , i = R

Utilizing the above, the complete FAC expansion can be formulated as

K MIN[J^ ,m^] MIN[Jj^.;^ ,mj^.;^] I k! [ 2 h(l;Ji-nio) ... I h(R-l;jR.i-ni^.io)h(R;jR-nR.io+mR.i)]

k=0 niQ=MAX[0,q^] nj^.^Q=MAX[0.qR.;Ll

Defining five temporary vectors as follows: M= (m-,^, ... ,mj^) the maximum set ofjobs to be distributed over queues i to R, where

m,= {

k , i = l

46
Q = (q-j^, ... , Qj^) is the minimum number ofjobs that the i-th queue can accept, where

mj-l.^1 , i<R

m. , i = R

T= (t-^, ... , tj^) is the maximum number ofjobs that may be allocated to queues r to R,

where

r

tj. = 2 Jj , note: t^ =K,

i=R

V = (v^, ... , Vj^) is the accumulated summation of the product terms, where

K R

I k! [ 2 n h(i;J.-nio)] ' k=0 R i=l

2n.Q = k

i = l ={

MIN[J..^ ,mj. JMIN[Jj^,mj^]

I h(i-l;J..;^-n..io) ... Z h(R;jR-nRo) , i>l,

UP= (up]^, ... , upj^) is the maximun number ofjobs that can be allocated to the i-th queue, where

upi = MIN[Jj,m.]

The FAC algorithm proceeds as follows:

BEGIN: FAC algorithm

STEP 1: initialize fac = l %~-^R

Vr = 0

k = -l STEP BY -1 i = R-l TO 1 BEGIN

END

47
STEP 2: compute 1-st elt of temporary distribution vectors k = k+l

IF k>ti GO TO STEP 8 mj = k ,

n^Q= MAX[0,qJ

up-^= MIN[J-^,mJ

i = 2

STEP 3: compute remaining vector elements

STEP BY 1 r = i TO R-1

BEGIN

"^r = "^r-r"r-l

n,0= MAX[0,q,]

up^= MIN[J^,m^]

END

STEP 4: compute inner-most product term

STEP BY 1 nR.i o=nR., o TO uPr.^

BEGIN

%,0 = "^R-1'%-1,0

^R=^R+h(R-i;JR-i-nR-i,o)*h(R;JR-nR,o)

END

i = R

STEP 5: expand outward accumulating product term sums

i = i-l IF i<2 GO TO STEP 7

^i = ^ + Vi+l*h(i-l;Ji-i-ni-i.o)

ni-i,o=%i.o+l

STEP 6: test if "sum-limit" reached

IF ni.^o<up..;L GO TO STEP 3 GO TO STEP 5

STEP 7: accumulate outer-sum term & update factorial Vj = v^ + V2*fac

fac = (k + l)*fac

GO TO STEP 2

STEP 8: terminate algorithm

STOP

END: FAC algorithm

48
Solution

Metfiod

Storage

Requirements

1

1 Computation

i' Requirements

\

I

SOP

i 4R + K

1

i

1 [5 + 3JJ [ n (Jj+i)]

}

FAC 6R + K

1 R

2 [ n (Jj + l)] +3K

i = l

_ .

SCS

Iterative

R

n (Ji+1)

i = l

i

I 4R[ n (j.+i)]

i=l

General

itei ative

R

i =1

R

i=l

Figure III-4. Storage and computation complexity.

49
I Solution Storage I Computation

I Method Requirements

j Requirements

t—— ^

i

1

! SOP \

I example 1 {

1 example 2 ; 18

54

i 120

\ 155,520 —'

' ———

.

j

! FAC

1 example 1

1 example 2

22

66

I 102

; 93,402

r—— -

1 SCS

j Iterative

i example 1 ;

j example 2 \ j— ;

36

46,656

i 288

I 1,119,744

1 i

1 General ( Iterative i example 1 [ ^ example 2 ; 36

46.656

1

1'

f 576

2,239,488

Example 1: Example 2: R = 2 R = 6

S = (l,3,3) S = (l,3,3,3,3,3,3)

K = 10 K = 30

J = (5,5) J = (5,5,5,5,5,5)

Figure III-5. Example of storage and computation complexity.

50
The FAC algorithm requires storage for five temporary vectors (M, Q, T, V, UP), each

containing R elements, and for the R h(i;Jj) vectors, each containing Jj + 1 elements. Therefore,

the total storage required for this algorithm is

R R

5R+2 + =6R+5: J. =6R+K

i=l i=l

The total number of states in the state space is

R

n . i=l

The number of steps carried out for the inner product terms is equal to the total number of

states. Each step (a value of k) requires one addition and one multiplication. The outer term for

each step requires two multiplications and one addition. This results in an operation count on

the order of

R R R

[2n (Jj + l)] +[3 1 Jj =[2n (Jj+l)] +3K

i=l i=l i=l

Figure III-4 provides a summary of the storage and computational requirements of the SOP

and FAC algorithms, as well as those for the general iterative procedure for multi-class queueing

networks and for that procedure adapted to the SCS model. The general iterative procedure is

adapted to the SCS model (SCS iterative) by representing each ICS as a single equivalent device

[CHANDY 75B, GIAMMO 76], therefore, the equivalent number of devices L-1 now becomes R.

Note that die storage requirements for the SOP and FAC algorithms increase linearly with the

number and distribution ofjobs, K and J, and ICSs, R; while the storage requirements of previous

algorithms increase exponentially. In figure III-5 these requirements are evaluated for two

examples; the first is a small network of 2 computer systems (or job classes) with a total of 7

devices and with 10 jobs equally allocated between die 2 systems; die second is a moderate

network comprising 6 computer systems (or job classes) with a total of 19 devices and widi 30 jobs

equally allocated among the 6 systems.

51
It can be seen that the SOP and FAC algorithms require very little storage compared to both

iterative algorithms, while also requiring fewer computations. In addition, the mean queue

length for all devices in the SCS model can be computed using either of the algorithms; whereas,

in the general case no effective procedure yet exists. Although it should be noted that by using the

iterative procedures relatively little additional computation is needed to obtain the device busy

probability and the mean queue length for all but the SPR. Computing these measures using the

SOP or FAC algorithms entails a larger amount of computation, but also includes evaluation of

performance measures for the SPR. Comparing the SOP and FAC algorithms one can see from

figures III-4 and III -5 that the SOP algorithm uses less storage while the FAC algorithm requires

fewer computational steps (i.e. less time).

To complete this discussion we shall present our expressions for the performance measures of

the SCS model, equations (36) through (45), restructured into forms readily evaluated by the FAC

or SOP algorithms.

Normalization constant

(46) G(J) = 2 hdiJ^-n^o) [ ... [ I h(R-l;jR.i-nj^.io) [ 2 h(R;jR-nRo) nQ ! ] ] ...] , or

"1.0=0 ' Vi,o=o ' "R.o=o

K MIN[Jj ,m.]

(47) = 2 ng! [ 2 MUj-n.^) FjCnQ-nj^) ] , for any i , no=0 n._Q = MAX[0,qj]

where,

R

R r = l , ^i

r=l , *i

R

q, = no

- I

r=i ,*[

52
Device busy probability

Ay = ^ii- 2 h(l;Ji-nio) [...[2 h(i-l;vl-n.o)... [I MR-l-jR.^-nR.io)

G^J) n^Q= n.o = 0

[S h(R;jR-nj^o)no!] ] ... ] ...] or "R.0=0

K-1 MIN[Jj -l,mj] = -^ii- 2 ng! [ 2 h(i;Ji-l-n.o) Fi(no-n.o)] , G(J) nQ=0 njQ=MAX[0,q.]

R

Aq = P[no>l] = 1 - n _giUil

i=i G(J)

Mean queue length

= _1_ 2 [2 h(l;j,-n,^[... [2 h(i-l;j,,-n,io) ... G(J) k=l n^_Q=0 '^1-1,0=0

[2 h(R-l;jR.i-nR.io) [2 h(R;jR-nR o)no ! ] ] ... ] ...] , or Vl,O=0 "R,0=°

Jj K-k MIN[Jj -k,nQ]

Q. . = 2 X./ [ i: no ! { I h(i;J.k-n.o) ^n^-n. ,) }] , and

G(J) k=l nQ=0 n.Q=MAX[0.qj]

Qo = -i— 2: h(l;Ji-n,o) [...[l h(R-l;jR.i-nR.,o) h(R;jR-nRo) n^ !no ] ]

...]. G(J) n^o=0 "R-1,0=0 nj^Q=0

53
K MIN[J. ,mj]

(54) Qo = 1 2 Hq! [no I haj^-n^o) FCnQ-riio^ ] , and

G(J) no = l n.o=MAX[0,qj]

K MIN[Jj ,mj]

(55) Q^o =-1— ^ V [ 2 \o MilJi-njo) F(no-n.o)]

G(J) nQ=l n.Q = MAX[0,q.]

The device throughput

(56) T.. = u-^ A-^ = GfJ-d^) eji , for uj^O , and

G(J)

R

n gi(Ji)

(57) i = l }

G(J)

These expressions can be computed simultaneously in groups, equations (46) and (53), or (47)

and (54) comprise one group, and (49), (52) and (55) another. Once the values for these

performance measures are computed they can then be applied to directly evaluate the remaining

equations, (50), (56), and (57). The FAC and SOP algorithms can be modified to compute each

group at the same time; this is especially useful for the later group which can share intermediate

values ( e.g. Fj(nQ-nj q) ) and, therefore, eliminate duplicate computations. A Fortran

implementation of these algorithms was developed and is used later in this dissertation to compute

values for these performance measures.

54
IV. APPROXIMATE SCS MODEL

A. The Approximation

Efficient algorithms for queueing networks have been previously developed [BUZEN 73,

MUNTZ 74, SHUM 76], and a new algorithm that is very efficient in its memory space

requirements has been presented here in chapter III. Still, it can be seen firom Figure III-4, that

the computation time is a significant burden; it is of exponential complexity and, therefore,

computationally intractable. In addition, the complex form of the equations conveys little useful

intuitive information or discemable insight.

Some previous efforts have concentrated on developing approximate solutions for various

models. Reducing the computation and memory-space complexity, or generalizing the modeling

assumptions are the primary motivations. These generalizations include more general service time

distributions, accounting for passive resources, simultaneous acquisition of multiple resources,

resource blocking, priority and other scheduling policies, state dependent routing, and others

[CHANDY 78].

Kobayashi [KOBAYA 74A] has utilized the diffusion approximation to model queueing

networks with general service time distributions, assuming a Poission arrival process and a FCFS

scheduling policy. This approach has the potential to investigate the network transient state

behavior [KOBAYA 74B]. The diffusion approximation is primarily applicable to open networks

and currently has limited utility for a closed network. Chandy [CHANDY 75A] has introduced an

aggregation technique similar to Norton's theorem in electrical circuits. This technique allows one

to represent a number of queues as a single equivalent queue. If the queue satisfies local balance

[CHANDY 72B], then the technique yields exact solutions; if not, a similar technique with an

additional flow approximation procedure yields approximate solutions [CHANDY 75B]. These

techniques are of computation time and memory-space complexity equivalent to those of the

convolution algorithm of basic queueing network theory [BUZEN 73, MUNTZ 74, SHUM 76].

55
Other approximation efforts have studied the effect of substituting one queueing type for

another. Buzen [BUZEN 74] investigated using a mathematically less complex M/G/1 service

center to approximate an M/G/l/K service center. In a later effort Buzen [BUZEN 77]

approximated an M/G/l/K service center by using an M/M/l/K service center. Buzen's efforts

were directed towards a single service center; whereas, Shum [SHUM 76] investigated the

substitution of M/G/1 product terms for M/M/1 product terms in an effort to approximate

general service time distributions in a multi-class queueing network.

Avi-Itzhak [AVI-IT 73] used a conservation of flow argument to establish an expression for

the mean burst cycle time in a central server model. This expression requires the mean number of

busy servers (busy probability) at a central server, which must be obtained by solving the

queueing network equations and summing over the entire state space. He then used this

parameter along with an assumed geometric cycle distribution as an approximation to the queue

dependent mean service rate in a single server queue. Solving the basic state balance equations,

assuming the arrival process is Poisson, results in expressions for waiting and delay times for the

system.

A major obstacle in using the basic queueing equations as approximations to queueing

networks is the difficulty of relating the corresponding input parameters of the basic queueing

equations to those of queueing networks. Queueing networks require the mean service rate of

each device, u- , transition probabilities between devices, p. : , and the number ofjobs constantly

circulating in the network, K. The basic single server queueing equations require the same first

parameter, but utilize arrival rate as the other.

We shall utilize a similar conservation of flow argument as Avi-Itzhak to establish a

relationship between arrival rate and the number ofjobs in the network. From this we shall utilize

independent single server queues to approximate the behavior of the SCS queueing network

model.

Assuming that each device of the SCS is an M/M/1 single server queue, it can be shown

[BURKE 56, FINCH 59, BURKE 72, MUNTZ 73, KLIENR 76] that the arrival process is

equivalent to the departure process. The arrival process in an M/M/1 queue is Poisson with

parameter a, therefore, the mean flow rate in is equal to the mean flow rate out:

rate^„ = '^%ut = ^

56
For the CPU in each ICS the flow out is decomposed into separate Poisson flows, which proceed

to the various PPUs and the SPR. The decomposition of a Poisson flow in this manner is hnear

[COFFMA 73, pg 149-150]. For the SCS this results in

(1) *CPU. = 2 ;

J = 2

+ and

(2)

^PR- - PsPRj ^CPUj ~ Pi,0 ^CPUj

where the following subscript notation is adopted for clarity

SPRj = i,0 CPUj = i,l PPU: = i,j j>l

Having established a flow relationship between devices, a relationship between the queueing

network parameter K and the independent single sever queueing parameter a- j is necessary. For

an M/M/1 queue the mean queue length (including a job in service), given its mean arrival (a)

and service (u) rates, is [KLIENR 75, KLIENR 76, COFFMA 73]

and ^PR ~^

^PR.

i = l

(3) Q = 1 1/p-l

where p=a/u. By assuming each device is an independent M/M/1 single server queue we may use (2) to establish the following relation

R Si

(4) K = I { 1 + 1 + 2 1 }

i=l 1/PsPR-l I/PCPU.-I j = 2 l/pppu..-l

1 IJ

57
(5) Ji = + _1 + 2

where

1/psPR-l l/pcpu.-l j=2 l/pppL- -1

1 IJ

R^ PsPRj ^CPUj

PSPR = -^^J^

"SPR

Pij ^CPUPPPU- ~

^CPUj

Pcpu. = ' and

"CPUj

PsPRj ^CPUj

R

r=l

Assuming father that each ICS is identical (i. e. a balanced system), this then yields

(6) Jj = 1/R + 1 + 2 1 1/psPR-l l/pcpu.-l j=2 1/pppy- -1

58
B. Computational Algorithm and Performance Measures

Given the queueing network parameters (J-, p. • , and u- ) one may approximate the flow

rate, a^py. , by solving (6). Although (6) is an equation with a single unknown and not

computationally complex, it does not lend itself to a closed form analytic solution. We shall

present an algorithm, utilizing a bounded binary search technique, to efficiently solve (6) for a^py . Rewriting (6) results in

(7) l/(a,

1/R

CPU; ^SPR

+ +

1

)-l l/(a,CPU; ^CPU: )-l j=2 l/(a,

1CPU; •PPU- • IJ)-l

where

''CPUj

^ PSPR; ^SPR ~

"SPR

Xppu. = , and

"CPUj

Without loss of generality assign u^^p^- =1. This produces a normalizing effect, allowing

all other service rates to be stated relative to this standard unit of service. A lower bound for

flow rate is zero, and from inspection of (7) an upper bound is MAX[x5pj^, Xqj^ , Xpp^^-

^

,

... , XppxT ]. Using these flow rate bounds, a binary search technique may be used to

approach the flow rate that will satisfy (7) to within some arbitrary error 5 . This algorithm,

59
the BIN algorithm, is stated more formally below. Because systems are balanced for i=l, ... , R (i.e. identical) we perform the following on the arbitrarily chosen system i = 1.

BEGIN BIN

STEP 1: compute initial parameters

^CPU ~~ ^ STEP BY 1 j = 2 TO Sj

END

STEP 2: set initial search bounds

low = 0

high = MAXfxgpj^, X(^pu,Xppy^ ^,... .Xpp^^^ ] STEP 3: evaluate at midpoint of bounds

mid = (low+high)/2

val = (l/R)/(l/(mid Xgpj^)-!) + l/(l/im\d\^^)-l)

STEP BY 1 j = 2 TO s^ val=val+l/(l/(midxpp,j >1)

ij

END

STEP 4: convergence test and adjust bounds

IFdval-J^I < 5) GOTO STEPS

IF( val <J^) low = mid

If(val>Ji ) high = mid

GOTO STEP

3

STEP 5: terminate with flow rate = mid

STOP

END BIN

The BIN algorithm requires storage for the vector X, containing Sj+ 1 elements, the

convergence error, and the instantaneous solution along with its corresponding search region

description (bounds and midpoint). Therefore, the total storage required for this algorithm is

(Sj+l ) + 1 + ( 1 + 3) = Si+6

The number of operations necessary to evaluate (7) using the BIN algorithm depends on the number of iterations required, which is a function of the convergence error. For 2'^"''" < 5 < 2"",

the maximum number of iterations is n. Each iteration requires 4 + 5 Sj operations, thus requiring

an operation count 0[ n(4 + 5 Sj) ]. Comparing these complexities with those in figure III-4 of

chapter III, one can see the significant advantage of this approximation over the exact model.

60
The BIN algorithm applied to (7) allows one to determine the job flow rate for a given set of

queueing network parameters. Once this is done then the performance measures for each device

may be easily computed using the following [COFFMA 73, KLIENR 75]

:

(8)

Device busy probability

Pr[n.^>0] =p.^

Pr[no>0] =pspR

Device mean queue length

Qo= -i

(9)

1/PSpR - 1

1 1/Pppu " 1 Qij = -J. , U>0

(10)

1.J

Device throughput

^0 ~ "SPR PSPR

Note, throughput may more properly be referred to as the effective service rate or departure rate

of the device, which for an M/M/1 queue equals a, the arrival rate.

The mean cycle time of a job is the mean time (wait or delay) between successive requests to

the CPU by the same job. This is the weighted sum of the mean time it takes a job to be serviced

at each device. Using Little's formula (W = Q/a) this may be computed as

- ^SPR^ ^SPR + ^CPU: ^ ^PPU- i^PPU. i

(11)

j = 2

^SPR-QsPR QcPUj h ^PPUjjQpPUjj

+ + I

^SPR ^CPU: ^PP^i 1 1x1

61
^SPR^^SPR QcPUj ^PPUjjQpPUjj = + + 2 —: ^PSPR.11^CPU: ^CPU- j = ^ ^CPU-PPP^::

1 1 ij

h = J_ { Qspr/R + Qcpu, + 2 Qppu, }

where the relative visit frequency is (note: Uqj^ = 1)

PSPRj"CPU.~PsPRj

PpPU-i"CPU:~PpPU::

IJ 1 IJ

An approximate analysis technique has been presented for a balanced SCS model which is much less complex to evaluate compared to existing efficient queueing network technique. The

question remains as to the error this approximation introduces, and a justification for the choice of

an M/M/1 queue.

An M/M/l/K queue is an M/M/1 with a finite queue length, and intuitively would seem to

better approximate the operations of the individual devices of a closed network. We have

investigated the use of this well known queue, and typical results for device throughput and mean

queue length are presented in figures IV-1 and IV-2. As can be seen from these figures the

M/M/l/K queue did not produce significantly better results than the M/M/1 queue for the

examples considered. Generally, the most important aspect of using these models concerns when

and how these curves react to variations in parameters. Little , if any, significance is associated

with the absolute values of these curves, except on a relative basis. This implies that the primary

importance of any approximation is in "tracking" the actual curve rather than replicating it. As

can be seen from the figures both the M/M/1 and the M/M/l/K approximations track the exact

(SCS) queueing network results.

62

64
The M/M/l/K approximation does not yield a significantly better fit to the exact curve than

does the M/M/1 approximation; therefore, the M/M/1 approximation was selected for the

following reasons. First, as mentioned earlier, the major concern is tracking the exact curve and

not in duplicating it Since both curves track well, choosing the best fit was not necessary.

Second, the computational complexity of the M/M/l/K approximation is greater than that of the

M/M/1. The M/M/l/K expression for the mean queue length [ALLEN 78] corresponding to (3)

is

p[l-(K + l)pK + Kp(K + l)]

Q =

(i-p)(iVK4-i))

= 1 _ K+1

1/p-l (l/p)(*^ + i>-l

In a practical situation tiiese expressions are evaluated by a computational device (computer

or calculator), which introduces errors due to the use of approximation algorithms for

exponentiation and the lack of precision (bits) when the queue approaches saturation. Also the

lower computational complexity of evaluating (3) allows one to gain insight into the systems'

operation directly from the form of the equations.

Buzen [BUZEN 74] has compared the M/G/1 queue as an approximation to the M/G/l/K

queue. He has determined that except for heavy traffic (p ~ 1) and small queue capacity (K 1)

that the relative error is small. Using arguments similar to the ones presented here, Buzen

recommends the use of the M/G/1 as a reasonable approximation to the M/G/l/K queue.

C. Error Analysis of Approximation

The sensitivity and magnitude of the error introduced by our approximate SCS model

compared to the exact SCS model is investigated. Since the form of the exact model is so

mathematically complex, a direct analytical comparison is not feasible. The alternative is to

numerically evaluate the two models for corresponding parametric values and compare the results.

65
The problem in attempting this is that the combination of all possible parametric values is

infinitely large. Therefore, a reasonable and representative subset of values will be selected.

Using Fortran programs developed to implement our algorithms, and this set of chosen

parametric values we will compare the performance measures presented in the previous section,

specfically, the throughput and mean queue length of the CPU and SPR. Note, that the

throughput measure may more correctly be referred to as effective departure rate. Since the

device busy probability performance measure is directly related to the throughput by a constant,

comparing either one to the corresponding exact value would yield identical results. A balanced

system(identical ICSs) is assumed for simplicity.

Due to the assumption of a balanced system we may drop the added burden of carrying extra

subscripts to distinguish between individual ICSs, as the notation below indicates. This notation

simpUfication results in previously defined vector elements (i.e. Jj and s.) now being denoted by

their vector notation (i.e. J and s). For botii the exact and approximate models the following are

the pertinent parameters and their complete allowable ranges (see Appendix C for the simplified

notation):

0<R< 00

0<K = RJ = RJ.<oo , i = l,...,R

0<s=Sj< 00 , i = l, ... ,R

0<Uj = u.j<oo , i = l,...,R and j = 0, ... ,Sj

0<Pj = Pi.<l , i = l,...,R and j=0, ... ,s.

All of the parameters, with the exception of die transition probabilities, each have an

infinitely large range, as can be seen above. The selection of a small, finite subset of each of them

to form a manageable sample space shall now be discussed.

Bodi the number of ICSs, R, and the number ofjobs per ICS, J, have a significant impact on

the computational complexity of the exact SCS model. From chapter III, the computation tine

complexity is 0[ (J + 1)^ ]. Because of our interest in modular expansion, R is felt to be slightly

more important. Therefore, our selection put more emphasis on R than J. From initial testing

and experimentation, we found that the processing time for the configuration of J = 2 and R = 8 on

a DEC 10 computer was approximately 1.4 minutes. Based on this we selected 8 as the maximum

66
value of R and subsequently 6 as the maximum value of J. Further selection of additional

elements to construct representative sets large enough to provide insight into developing trends

resulted in J = {2, 4, 6} and R = {1, 2, 5, 8}.

The number of devices within an ICS, s, does not present a significant computational

problem. In the exact model all of the devices within each ICS are "collapsed" into a single

equivalent device. A reasonable upper limit might be 11 devices per ICS, comprising a CPU and

10 FPUs. For a large number of configurations this would provide for a sufficient number of

FPUs. For these configurations and, also for larger ones, a representative set large enough to

provide insight into any developing trends is {2, 6, 11}.

The two remaining parameters, processing rates and transition probabilities, differ firom tjie

others in that a single value is not a sufficient specification. A group of values for each parameter

is required, one for each device within an ICS as well as the SPR. The value of either of these

parameters does not itself impact the computational effort required, although each group of values

requires a separate computation, as does a change of any parameter. A finite subset of values for

each of these two parameters will be first selected, and a procedure to be used to assign these

values to the devices will be discussed.

Since the processing rate of the CPU has been fixed at unity, all other processing rates are

relative to the CPU. A relative range spanning 3 orders of magnitude from .01 to 10.0 provides a

representative range. The processing rates are important parameters of the model. Contrasting

their importance is the need to minimize the sample space. As a compromise, we selected a

relatively large number of values, 10. We have selected the set {.01, .02, .05, .1, .2, .5, 1.0, 2.0, 5.0,

10.0}.

Each device transition probability by definition is bounded between 0 and 1, and the sum of

all transition probabilities from each CPU is constrained to equal unity. A representative selection

must span the bounded range, therefore, {.1, .25, .5, .75, .9} has been selected.

The assignment procedure we will follow is to select a transition probability value from the

subset and assign it to the SPR, p^pj^. The remaining probability, 1 - Pgp^, will be randomly

67
distributed among each of the remaining s devices. Also at the same time a device transition

probability is assigned, the relative processing rate will also be assigned by random selection from

the subset of relative processing rates.

The details of this procedure are discussed here and the algorithm is presented below. For

each device divide the remaining probability into two groups. The first group is a reserve, of 25%,

to assure that any remaining devices are allocated some probability. The other group,

representing the bulk of the probability, is the selection range for the current device. Generate a

random number in the continuous, open interval (0,1), from a uniform probability distribution.

Multiply this fraction by the upper value of the probability selection range. The resulting value

represents the transition probability to be assigned to the current device. To select a processing

rate for the device generate a random number in the discrete closed integer range of [1,10] from a

uniform distribution. This number represents the corresponding ordinal element in the relative

processing rate subset that is to be assigned to the device.

The assignment algorithm is :

BEGIN ASSIGNCp^pr)

prob = 1.0-pgpj^

STEP BY 1 j = l TO s DO

p.= .75*(prob)*Ranc[0,l]

u. = 1.0

Uj = speed(Rand[l,10])

prob = prob - Pj

END

Ps= Ps+Prob

END ASSIGN

where

Ranc[a,b] is a function which generates a uniformly

in the continuous, open interval from a to

distributed random number

b, and

Rand[l,n] is a function which genarates a uniformly distributed random integer

in the discrete, closed interval from 1 to n.

68
We have now converted from an infinitely large population space to a reasonably sized

sample space of 1800 combinations. The resulting sample space parameter values are:

R = {1, 2, 5, 8}

J = {2, 4, 6}

s = {2, 6, 11}

Ugpj^ = {.01, .02, .05, .1, .2, .5, 1., 2., 5., 10.}

^CPU - ^•

Uj = a random selection from the same set as u^pj^ , j = 2, ... , s

PSPR = {.1, .25, .5, .75, .9}

Pj = a random selection from the same set as p^pj^ , j = 1, ... , s

Using our Fortran implementation of both models, values for the throughput and mean

queue length of both the CPU and SPR have been generated in the following manner. For each

of the 15 combinations of s x p^pR' corresponding groups of values for pj and Uj were

generated. A program, based on the ASSIGN algorithm above, was constructed in Fortran to do

this, and its results are listed in appendix D. The entire 120 combinations of u^pj^ x R x J were

used 15 times, once for each of the 15 groups of transition probabilities and relative processing

rates.

Table IV- 1 contains the accounting statistics on the actual CPU processing times for both the

exact and approximate SCS models executed on a DEC 10 computer. Both models were executed

in a batch environment with all input data completely specified in advance in a file. The times are

based on an execution unit which computes a set of 40 data points. This represents one value

fi"om the J set, one group of transition probability and relative processing rate values, and the

entire 40 combinations of the u^pj^ x R set.

The processing time for an execution unit of the exact SCS model should be 10 At 0[ (J-l- 1)^

+ (J + 1)^ + (J + 1)^ + (J + 1)^ ], where At is the average time per operation. The high order term

dominates the expression, which may be approximated by 10 At 0[ (J + 1)^ ]. From this the

expected relative processing time of an execution unit is (J + 1)^ /(J^ + lf , where

69
40 Data

Point

Execution Unit

Exact

SCS

Model

Approximate

SCS

Model

J = 2

CPU time

Elapsed time

1.4 Min.

2.2 Min.

2.9 Sec.

3.5 Sec.

J = 4

CPU time

Elapsed time

13.0 Min.

14.7 Min.

2.9 Sec.

3.5 Sec.

J = 6

CPU time

Elapsed time

148 Min.

178 Min.

2.9 Sec.

3.5 Sec.

1

TOTAL for 1800 points

CPU time

Elapsed time

2436 Min. -= 40.6 Hrs. 2924 Min. = 48.8 Hrs. 131 Sec. 158 Sec.

Table IVT. Execution unit processing times.

70
is a base reference value ofjobs per ICS and T^^ is the corresponding average measured

processing time. For the sample, 1,^ = 2 and is approximately 1.4 minutes. Therefore, for an

execution unit of J = 6 the increase in processing time is (6 + 1)V(2 + 1)^ = (7/3)^ ~ 878 dmes

longer than the J,, = 2 execution unit, or 1229 minutes. Since the system is a balanced one (all

ICSs are identical), the actual computations need only be carried out for one ICS, rather than for

all R. This reduces the number of computations by approximately 1/R, resulting in a revised

increased processing time of 109 (vs. 878) times the = 2 excution unit, or 152 minutes. This

agrees reasonably well with the average measured value of 148 minutes. Similarly for the J = 4

execution unit an increase of about 7.5 times is predicted, or 10.5 minutes compared with the

average measured value of 13.0 minutes. These measurements verify the relations developed in

chapter III for die number of operations required to compute the performance measures for any

given SCS system configuration. The majority of error is attributed to approximating this

relationship by only its dominant term.

In contrast to these exponentially increasing processing times on the order of minutes and

hours, the processing times of our approximate SCS model are on the order of seconds, and for

balanced systems are independent of R and J. This is verifiedby the average measured processing

times in table IV-1, and by examination of (7) and die BIN algorithm used for its solution.

Tables IV-2 through IV-5 contain relative error ( = {exact value - approximate value}/exact

value ) statistics produced from the results of computing the performance measures from all die

sample space parameters for both models. These error statistics consist of mean, variance,

minimum, and maximum values for each of die individual parameters and for all the parameters

together. Each of the relative error values are further organized as a function of p^pR, the traffic

intensity of the SPR. The relative error statistics are listed in pairs, first all values of p^pj^ and

second pgpj^ < .9. Each table consists of 6 subtables. The first (top) subtable contains the overall

statistics for the indicated performance measure. The heading of the first column of each of die

remaining 5 subtables indicates die parameter being investigated within that subtable. Each row

of a subtable represents die statistics for a single value of the parameter being investigated, witii all

other parameters varied through their complete sample-space ranges. The first column contains

die value of the parameter, the second column contains the number of data points used to

compute the statistics, and the remaining columns contain die statistics as indicated.

71
p

Points Mean Variance Minimum Maximum

1650/1158 0.0904/ 0.1171 0.0189/ 0.0221 -0.4489/-0.3824 0.3636/ 0.3636

PSPR Points Mean Variance Minimum Maximum

0.10

0.50

0.75 0.90

330/ 266

JJ\J/ ZAjKJ 330/ 208

330/ 227

330/ 197

0.1030/ 0.1194

n MX! / n 1 sn6

0.0139/ 0.0049

0.1590/ 0.2124

0.0525/ 0.0781

0.0139/ 0.0151

n 0199/ 0 0^05

0.0211/ 0.0272

0.0103/ 0.0040

0.0162/ 0.0224

-0.2649/-0.1949

-0.3648/-0.3017

0.0000/ 0.0330

-0.4489/-0.3824

0.3396/ 0.3396

0 3579/ 0 3529

0.3500/ 0.3500

0.3382/ 0.3382

0.3636/ 0.3636

Points Mean Variance Minimum Maximum

2.00 4.00

6.00

600/ 458

600/ 411

450/ 289

0.1119/ 0.1308

0.0801/ 0.1132

0.0754/ 0.1009

0.0243/ 0.0286

0.0173/ 0.0193

0.0128/ 0.0152

-0.3824/-0.3824

-0.4489/-0.3062

-0.3698/-0.1949

0.3636/ 0.3636

0.3333/ 0.2619

0.2330/ 0.2330

Points Mean Variance Minimum Maximum

2.00 6.00 11.00

550/ 387

550/ 389

550/ 382

0.0808/ 0.1048

0.1180/ 0.1526

0.0724/ 0.0933

0.0209/ 0.0250

0.0140/ 0.0140

0.0205/ 0.0255

-0.4489/-0.3824

-0.3028/-0.2454

-0.3698/-0.3062

0.3636/ 0.3636

0.3636/ 0.3636

0.3636/ 0.3636

R Points Mean Variance Minimum Maximum

1.00 450/ 450 0.1446/ 0.1446 0.0206/ 0.0206 -0.1744/-0.1744 0.3636/ 0.3636

2.00 450/ 383 0.1059/ 0.1100 0.0155/ 0.0180 -0.1765/-0.1765 0.3429/ 0.3429

5.00 450/ 213 0.0512/ 0.0846 0.0152/ 0.0247 -0.3698/-0.3062 0.3333/0.3333

8.00 300/ 112 0.0448/ 0.0923 0.0178/ 0.0318 -0.4489/-0.3824 0.3429/ 0.3429

"SPR Points Mean Variance Minimum Maximum

0.01 165/ 76 0.1312/ 0.2082 0.0138/ 0.0065 0.0000/ 0.0909 0.3636/ 0.3636

0.02 165/ 79 0.1072/ 0.1925 0.0104/ 0.0059 0.0000/ 0.0769 0.3529/ 0.3529

0.05 165/ 85 0.1178/ 0.1916 0.0090/ 0.0051 0.0000/ 0.0857 0.3458/ 0.3458

0.10 165/ 92 0.1207/ 0.1820 0.0086/ 0.0065 -0.0295/-0.0295 0.3471/ 0.3471

0.20 165/ 100 0.1158/0.1662 0.0099/ 0.0091 -0.1424/-0.1424 0.3333/0.3333

0.50 165/ 120 0.0849/ 0.1127 0.0148/ 0.0166 -0.2649/-0.1949 0.3333/ 0.3333

1.00 165/ 131 0.0543/ 0.0760 0.0235/ 0.0259 -0.3698/-0.3062 0.3333/0.3333

2.00 165/ 147 0.0423/ 0.0627 0.0322/ 0.0312 -0.3648/-0.3017 0.3333/0.3333

5.00 165/ 163 0.0579/ 0.0633 0.0317/ 0.0296 -0.4489/-0.3824 0.3333/0.3333

10.00 165/ 165 0.0719/ 0.0719 0.0264/ 0.0264 -0.1689/-0.1689 0.3333/ 0.3333

Table IV-2. Relative Error statistics for Qppij , for both all p/p < .90

.

72
p Points Mean Variance Minimum Maximum — 1650/1158 0.1551/0.1968 0.0066/ 0.0034 0.0000/ 0.0983 0.3383/ 0.3383

PSPR Points Mean Variance Minimum Maximum

0.10

0.25 0.50

0.75 0.90

330/ 266

330/ 260

330/ 208

330/ 227

330/ 197

0.1627/ 0.1879

0.1782/ 0.2110

0.1388/0.1868

0.1592/ 0.2055

0.1365/ 0.1905

0.0039/ 0.0015

0.0074/ 0.0042

0.0060/ 0.0031

A AATA / A AA A 1 0.0078/ 0.0041

0.0069/ 0.0039

0.0300/ 0.1025

0.0300/ 0.1000

0.0250/ 0.0990

A Al C\C\ / A AAH 0.0189/ 0.0983

0.0000/ 0.1005

0.3347/ 0.3347

0.3371/ 0.3371

0.3367/ 0.3367

0.3383/ 0.3383

0.3378/ 0.3378

J Points Mean Variance Minimum Maximum

2.00 4.00

6.00

600/ 458

/"AA / ^ T T 600/ 411

450/ 289

0.2026/ 0.2418

0.1378/ 0.1804

0.1147/ 0.1486

0.0079/ 0.0038

A AA A a / /\ AA 1 1 0.0048/ 0.0011

0.0024/ 0.0002

0.0400/ 0.0992

0.0241/ 0.0983

0.0000/ 0.0990

0.3383/ 0.3383

0.2156/ 0.2156

0.1642/ 0.1642

s Points Mean Variance Minimum Maximum

2.00

6.00 11.00

550/ 387

550/ 389

550/ 382

0.1611/ 0.2051 A 1 / A TA'T^ 0.1527/ 0.1922

0.1513/ 0.1930

0.0080/ 0.0046

A r\r\c /' 1 A AA-^ A 0.0056/ 0.0024

0.0063/ 0.0031

0.0000/ 0.0988

A AAAA / A AAA-^ 0.0000/ 0.0992

0.0000/ 0.0983

0.3383/ 0.3383

0.3383/ 0.3383

0.3378/ 0.3378

R Points Mean Variance Minimum Maximum

1.00 2.00

r AA

5.00

8.00

450/ 450

450/ 383

450/ 213

300/ 112

0.2068/ 0.2068

0.1687/ 0.1840

A TTOA / A TAAA

0.1180/ 0.1880

0.1125/ 0.2166

0.0037/ 0.0037

0.0037/ 0.0028

A AA/""^ / A AA 0.0063/ 0.0033

0.0078/ 0.0030

0.1169/ 0.1169

0.0721/ 0.0990

A AAAA / A AAD T 0.0000/ 0.0983

0.0241/ 0.0988

0.3383/ 0.3383

0.3362/ 0.3362

0.3371/ 0.3371

0.3371/ 0.3371

"SPR Points Mean Variance Minimum Maximum

0.01

0.02

0.05 0.10

0.20

0.50

1.00 2.00

5.00 10.00

165/ 76

165/ 79

165/ 85

165/ 92

165/ 100

165/ 120

165/ 131

165/ 147

165/ 163

165/ 165

0.1238/0.1977

0.1216/0.1934

0.1259/ 0.1920

0.1316/ 0.1908

0.1377/ 0.1899

0.1474/ 0.1827

0.1618/0.1896

0.1835/0.1986

0.2061/ 0.2078

0.2113/0.2113

0.0074/ 0.0052

0.0075/ 0.0051

0.0073/ 0.0046

0.0069/ 0.0041

0.0062/ 0.0030

0.0054/ 0.0027

0.0053/ 0.0028

0.0044/ 0.0028

0.0030/ 0.0028

0.0029/ 0.0029

0.0000/ 0.1000

0.0189/ 0.1025

0.0241/ 0.1025

0.0288/ 0.1011

0.0300/ 0.0994

0.0303/ 0.0983

0.0317/ 0.0992

0.0335/ 0.0988

0.0562/ 0.1387

0.1387/ 0.1387

0.3383/ 0.3383

0.3378/ 0.3378

0.3376/ 0.3376

0.3362/ 0.3362

0.3371/ 0.3371

0.3362/ 0.3362

0.3352/ 0.3352

0.3352/ 0.3352

0.3352/ 0.3352

0.3359/ 0.3359

Table IV-3. Relative Error statistics for Tpp, -, for both all p/p < .90 .

73
H

Points Mean Variance Minimum Maximum

1650/1158 0.1042/ 0.1459 0.0195/ 0.0215 -0.1595/-0.1595 0.5792/ 0.5792

PSPR lVltd.ll V dl lallLC IVllllilIlUIll IViaAllliUlIi

0.10 330/ 266 0.1323/ 0.1623 A A1 Cr\ / C\ AT AO 0.0160/ 0.0148 A 1 CCiC / A 1 CAC -0.1595/-0.1595 A CAAA / A rAAA 0.5000/ 0.5000

0.25 330/ 260 0.1532/ 0.1920 0.0232/ 0.0220 -0.1229/-0.1229 0.5401/ 0.5401

0.50 330/ 208 0 0659/ 0 1013 0.0138/ 0.0178 -0.1529/-0.1529 0.4651/ 0.4651

0.75 330/ 227 0.1095/ 0.1566 0.0219/ 0.0244 -0.1205/-0.1205 0.5792/ 0.5792

0.90 330/ 197 0.0603/ 0.0980 0.0161/ 0.0230 -0.1507/-0.1507 0.5449/ 0.5449

J Points Mean Variance Minimum Maximum

2.00 600/ 458 0 1159/ 0 1519 0 0253/ 0 0277 -0 1595/-0 1595 0 5449/ 0 5449

4.00 600/ 411 0.1049/ 0.1483 0.0187/ 0.0206 -0.1291/-0.1291 0.5792/ 0.5792

6.00 450/ 289 0.0879/ 0.1332 0.0124/ 0.0127 -0.1216/-0.1216 0.5091/ 0.5091

s Points Mean Variance Minimum Maximum

2.00 550/ 387 0 1188/ 0 1658 0 0227/ 0 0243 -0 1338/-0 1338 0 5449/ 0 5449

6.00 550/ 389 0.0993/ 0.1386 0.0175/ 0.0192 -0.1595/-0.1595 0.5000/ 0.5000

11.00 550/ 382 0.0946/ 0.1333 0.0180/ 0.0204 -0.1594/-0.1594 0.5792/ 0.5792

R Points Mean Variance Minimum Maximum

1.00 450/ 450 0.0895/ 0.0895 0.0180/ 0.0180 -0.1595/-0.1595 0.5000/ 0.5000

2.00 450/ 383 0 1037/ 0 1227 0 0168/ 0 0173 -0 1177/-0 1177 0 5000/ 0 5000

5.00 450/ 213 0.1097/ 0.2240 0.0196/ 0.0154 -0.0273/-0.0273 0.5091/ 0.5091

8.00 300/ 112 0.1190/ 0.3039 0.0251/ 0.0104 -0.0056/ 0.0645 0.5792/ 0.5792

"SPR r UlIlLb iVlCall \/ oT*i onr»o V al lallLC iVllIlUIlUIIl iViaAlIIluIII

0.01 165/ 76 A r\r\C A 1 f\ AT AA -0.0054/-0.0109 A AAA^ / A AA1 1 0.0005/ 0.0011

A T cr\c /AT cr\c -0.1595/-0.1595 A AAAT / A AAAT 0.0901/ 0.0901

A A'^ 0.02 165/ 79 A AAA "> / A AAAT -0.0003/-0.0001 A AA ^ "1 / A AA/'A 0.0033/ 0.0069

A T cr\ A 1 A TrA>* -0.1594/-0.1594 A TA-^A / A TA^A 0.3029/ 0.3029 A AC

0.05 165/ 85 A ATTO / A A'l'^C 0.0178/ 0.0325 A AT A'^ / A AT OO 0.0102/ 0.0188 -0.1338/-0.1338 0.5026/ 0.5026 A 1 A

0.10 A C C / A'^ 165/ 92 A A'T^I / A AnA 0.0321/ 0.0570 A AT '^/^ / A A"^ 1 '^ 0.0126/ 0.0212 A T '^'^A /AT '^'^A -0.1229/-0.1229 0.5379/ A c^nc\ / A

0.5379 mA

0.20 T ^ C / T AA 165/ 100 A AC^I / A AO 0.0521/ 0.0832 A AT /I / A A'^ A T 0.0164/ 0.0241 A T /AT T'^A -0.1529/-0.1529 A A^C\A / A A^CSA 0.4294/ 0.4294

A CA

0.50 165/ 120 0.0975/ 0.1316 A AT AO / A A'^'^ A 0.0198/ 0.0224 A T Cr\n /AT cr\i -0.15O7/-0.1507 0.4998/ 0.4998

1.00 165/ 131 0.1548/ 0.1888 0.0156/ 0.0134 -0.0870/-0.0870 0.5792/ 0.5792

2.00 165/ 147 0.2159/ 0.2351 0.0104/ 0.0077 -0.0004/-0.0004 0.5401/ 0.5401

5.00 165/ 163 0.2514/ 0.2517 0.0077/ 0.0078 0.0000/ 0.0000 0.5091/ 0.5091

1 A AA 10.00 165/ 165 0.2267/ 0.2267 0.0088/ 0.0088 0.0000/ 0.0000 0.5449/ 0.5449

Table IV-4. Relative Error statistics for Q^pj^ , for both all p/p < .90 .

74
p Points Mean Variance Minimum Maximum

1650/1158 0.1549/ 0.1967 0.0067/ 0.0034 0.0300/ 0.0988 0.3409/ 0.3409

PSPR Points Mean Variance Minimum Maximum

0.10

0.25 0.50

0.75 0.90

330/ 266

330/ 260

330/ 208

330/ 227

330/ 197

0.1627/ 0.1879

0.1782/ 0.2112

0.1387/0.1868

0.1586/ 0.2052

0.1361/ 0.1900

0.0040/ 0.0015

0.0075/ 0.0042

0.0061/ 0.0031

0.0078/ 0.0042

0.0069/ 0.0039

0.0300/ 0.1000

0.0300/ 0.1000

0.0300/ 0.0990

0.0300/ 0.0988

0.0300/ 0.1006

0.3367/0.3367

0.3409/ 0.3409

0.3400/ 0.3400

0.3400/ 0.3400

0.3400/ 0.3400

J Points Mean Variance Minimum Maximum

2.00 4.00

6.00

600/ 458

600/ 411

450/ 289

0.2025/ 0.2419

0.1371/ 0.1802

0.1150/ 0.1486

0.0080/ 0.0038

0.0049/ 0.0012

0.0023/ 0.0002

0.0590/ 0.0989

0.0300/ 0.0988

0.0300/ 0.0990

0.3409/ 0.3409

0.2145/ 0.2145

0.1659/ 0.1659

Points Mean Variance Minimum Maximum

2.00 6.00 11.00550/ 387

550/ 389

550/ 382

0.1611/ 0.2052

0.1525/ 0.1920

0.1511/ 0.1928

0.0080/ 0.0046

0.0057/ 0.0025

0.0063/ 0.0031

0.0300/ 0.0989

0.0300/ 0.0989

0.0300/ 0.0988

0.3409/ 0.3409

0.3400/ 0.3400

0.3400/ 0.3400

R Points Mean Variance Minimum Maximum

1.00 450/ 450 0.2070/ 0.2070 0.0037/ 0.0037 0.1175/0.1175 0.3409/ 0.3409

2.00 450/ 383 0.1684/ 0.1836 0.0037/ 0.0028 0.0750/ 0.0990 0.3371/0.3371

5.00 450/ 213 0.1182/0.1880 0.0062/ 0.0033 0.0300/ 0.0988 0.3364/ 0.3364

8.00 300/ 112 0.1115/ 0.2166 0.0079/ 0.0030 0.0300/ 0.0989 0.3357/ 0.3357

^SPR Points Mean Variance Minimum Maximum

0.01 165/ 76 0. 1208/ 0.1959 0.0077/ 0.0056 0.0300/ 0.1000 0.3400/ 0.3400

0.02 165/ 79 0.,1219/ 0.1936 0.0074/ 0.0051 0.0300/ 0.1000 0.3400/ 0.3400

0.05 165/ 85 0.,1264/ 0.1919 0.0072/ 0.0045 0.0300/ 0.1040 0.3367/ 0.3367

0.10 165/ 92 0.,1316/ 0.1906 0.0069/ 0.0041 0.0300/ 0.1000 0.3347/ 0.3347

0.20 165/ 100 0.,1378/ 0.1900 0.0062/ 0.0030 0.0305/ 0.1010 0.3409/ 0.3409

0.50 165/ 120 0.,1475/ 0.1828 0.0054/ 0.0027 0.0308/ 0.0988 0.3409/ 0.3409

1.00 165/ 131 0.,1618/0.1896 0.0053/ 0.0028 0.0315/ 0.0989 0.3409/ 0.3409

2.00 165/ 147 0,,1835/ 0.1987 0.0044/ 0.0028 0.0333/ 0.0989 0.3409/ 0.3409

5.00 165/ 163 0,.2061/ 0.2078 0.0030/ 0.0028 0.0563/ 0.1387 0.3409/ 0.3409

10.00 165/ 165 0,.2114/ 0.2114 0.0029/ 0.0029 0.1387/ 0.1387 0.3409/ 0.3409

Table IV-5. Relative Error statistics for Topj,, for both all p/p < .90 .

75
We would like to mention an additional limitation that has not, to our knowledge, been

discussed in the literature. This limitation is related to the size limitation as it affects the precision

of the specific implementation. We noticed some erratic values from the exact model were

occurring for points within our sample space whose computational complexity was the highest,

namely J = 6 and R = 8. We conjecture that because of the large number of floating point

operations required to evaluate the exact model at these points, some combination of accumulated

round-off, overflow, or underflow errors was the cause. These erratic values were not observed for

a similar implementation on a CDC 6000 series machine with a 60 bit word length. The current

implementation uses a DEC 10 machine with a 36 bit word length. A possible solution for this

case may be to use double precision variables vs. the single precision variables used in the current

implementation. The author no longer has access to the former machine, and due to the length of

the computations involved was not able to pursue this any further at this time. As a result we have

eliminated these 150 data points, thereby reducing our sample-space from 1800 to 1650 data

points. ,

Figures IV-3 through IV-6 are scatter plots (left) of the relative error for each performance

measure along with its corresponding mean value plot (right) for all 1650 data points in the sample

space as a function of PgpR. A scatter plot consists of the true plotting of all tiie points, wherever

they fall — generally scattered. Each discrete plotted point consists of a digit representing the

number of actual points encompassed by it. An asterik (*) represents 10 or more points. Figures

IV-7 through IV-16 are representative scatter and mean value plots of the relative error for the

SPR throughput and mean queue length as a function of p^p^ for one value of each of the five

parameters. Figures IV-17 through IV-20 are representative plots of the throughput and mean

queue length of the CPU and SPR vs. the processing rate of the SPR, u^pj^, as computed by both

the exact and approximate SCS models.

As can be seen from inspection of the tables and plots, the throughput relative error for both

the CPU and SPR follow a fairly narrow channel centered approximately at .20 (20%) for low to

moderate traffic. As the traffic intensity becomes heavy (pgpj^ > .80) and approaches saturation

(pgpj^ ^ 1), the relative error tends to become small. This is consistent with results obtained by

Buzen [BUZEN 74] in his use of single server approximations. It should be mentioned that in

applying this approximate model, if this saturation condition occurs, one immediately knows that

this device is a bottleneck and is causing serious problems.

76
I . : - 1 . c -c.t -c,£ 0.2 0 " 0 - • I "3 3««fi 5 1 z • ' , 2 3 c t •

•'•'3 ' 3 7 *6 1 3 ! •

** - * cc , i i 6*1 i • • i ZZ 311 6 I £ JD9C 7 1 • ' ^ * C J 1 c 1 S I ; 2 2 ' 2 1 3' ' * I • • r ' 1 1 ' 1 2 62 1 c • • t \ t ' ' * 111 1S32 2 1 1 I • It I 131 C2 1 2 I • 13 I 1 2 I 1 6 I 1 3 I • 1 I 5*i2l l2ll 1 A I Is • 1122 2lSl 1 5 - 1 6 I fi 1 12 1 6 I T 1 7 I 3 1 a2l 17 I I 12 1 3 1 22 Ifi I 19 I 123 1 112 19 2 20 • 1^3 3 1 1

.20 •

2! I 1111 11 21 I 22 Z 11 1 3 1 3 1 22 * 23 * 11 11 23 I * 1 3 1 11 32 2fi I • 2S * 25 • * 26 ' 11 51 26 1 * CI * 22 22 1 27 I * 1111 31 1 28 1 * 2^ I 22 11 12 29 I • 5 V • 121 21 1 30 • * Ami 1 c 1 31 I i 111 1 32 I * XI T 33 I t 5* i 1111 1 21 34 I • 35 • 11 1 11 35 • t k T lie I t Cl 36 I * ^ T T J 7 i 37 1 * tX Ti 111 11 3fi I 3^ I 15Ac 1111 39 * *

fiC • 5T 1 3 AO • t 1 2' 1 11 a 1 I fi2 1 c A2 I

fl

J i * 1 11 43 I * 21 *« * 4S • 1 111 fl5 • *

11 1 1 t 3 A6 2 * *7 I 1111 2 i 47 I *

fiC I 1 112 I 2 J * 50 " 1 11 50

Si I 1 221

52 ^ r 4 T 52 I 9 « « 1 11 53 I * 53 I 3 1

Sfi 2 *' 55 • 1 33 1 55 • 5^ I 111 1 3 1 56 I * 57 I 1 11 1 112 57 I 56 I 1 1 52 I 1 t 1 33 59 I bO • 1 11 1111 60 • b t z 11 1115 61 I * ^2 I 1 I 62 2 r 1 £ 63 2 * ! 11 1 21 9 6A I * 65 • 1 1 11* 65 • *

66

X 111 1 293 66 2 * 67 I 11 12 67 I * 6£ I 1 1 1

66 2 * 6' I 1 1 112 69 2 * 70 • 22 21 1 7 0 • 71 I 1 1 1

71 2 * ' £ • 1 1 331 72 I * 73 * 1 I 1 1 22 73 1 * t • 1 12 5 ' ' ^ 75 • 112 1 132 75 " 76 1 11311 76 I 77 I 1 1 77 2 * 11 t 76 I 7' I SO • 1 1

fiO •

Bl I 1 1121 52 t *

ft2 I 1 1 31 tz Z * £3 I 1 112 2 3 &3 2 1 2 3^2 I 85 • 1 ti»* S5 * &6 I 2 2 232 I * 67 I 1 1 11*^ ?7 2 S« I : 3fl**'3 it \ 59 : 57C1 59 * * 90 - 1 1- —5 3 90 - 0; I 2 3:i»7 ® 1 I 92 : 2 13 3»»33 92 I 93 I 1 :ai.^i 93 : QA I . I 1 11 '-l 3 oc 2 * 3 3 • c = 96 I :75»» 3 ^6 2

0—0— e > o >

£2c

'5

Q.Uaoo

rnI >

.bp

77
16

17

1!; «

it

3122

23

jc2Se6

27

2»

21

i>

II32

33

3«35

3fe 37

!S

3^

ae

ei82

«3

ec«5

at

«7se

«* I 50 - !152 : ss : 5« : 55 - S» t 57 I se 1 !* I kO • 6162 : 63 1 6« I 65 •

»fr I 67 I 6i t 6* 1 70 - 71 I T2 ; T3 I ft I 75 • 76 : 77 : 7» I 7« I SO -

61 I 62 : !3 : 6« I 85 •

66 : 67 1 se : e« ! «e • ?i : •i I »J I OS ! »5 - «6 :I

:.2 • w£ «

S6«l ' ' « • 1 1 2

ti.J e ::;3i3 842231

J2T2

bit t 1 2 2S2: ; Ituii 1 «3323

«i; 2 fe22l 13521

llTll 525 1 2211

32' 1 1 11 2 2«< 2 Jt 332 21222

223111

2(i 2 1 2:311

211

12 1 221:

lis

«1 2333

312 ; 31 «3«t3

'32 1 212 2 111

2! 1 1222

1212 1 221

21

12 2 31 1121 2 21 211 2 211

32 21 1232

11 23221 2212 11311

2122

13121 1221 152

21 S2«

332

113C

1325

21C 2 t <2«

e7». 26a2

«l !•1»

117 !»• 3 12Ss11

TCCU) Reletlvt Ercor

-C,» 'C.i C,2 C,tc —

—

—

D 3 • C E » _ "c _ ^ c wx m X

«> « « O * w • w X - c - c * * * * * o > o » A A ^ C

'oI >

.2P

78
3(SP9) ReUtive Error

ICSPO} ^tUtlvt Error * * }• 3»»? 7 ^ * * • - * 2 I J»» 3 « 2 I • 3 I 3 I * b ' • 1 « 2 • * * • 5fc« 3 6 5 • * ! 2 1 3 1 6 I * ^ • 1 »«S3 7 I S !

fi

C 2 1 3 2 0 1 * • I t T 1 2 1 1 ' t * ! C - 3 2 ID

i: ! <?fe 22 1 1 t 12 I ^5 1 1

12 I * ll I afi 1 1 13 2 * l« I 753 1 1 1

1* 2 * 15 • afl322 15 • * 16 I 5 c I 16 2 17 I b2 1 I 1 17 S * U I 1 235 1

10 Z * J« I 13511 • 9 X * 20 • 7 5 1 20 • * 21 T I 2 3 21 2 * 22 i 13321 1 22 I * 23 r 1 1 11 23 I 20 I 1 243 11 29 2 * 25 • 1213 25 , 

26 I 52 1

26 I 27 I l3l c2 27 2 * 26 I 332 1 1 2S I * ?• Z 133 1 1 29 I 3C • 1212 2 30 • 3\ I 111 1 31 I 32 1 1 111 32 2 * 33 I • 1 1 1 1 1 ii I 3^ I 12221 * 35 • 1 2l 1 IC B 36 I 1 21^12 tA. T J« L 37 I fi 2 37 2 3^ I 1 31 AC I 3' I 1 3 1 2 39 X AC • 1 3121

*t I t 1 23111 91 2 £2 I 1 11 *2 2 *3 I 1 1 11 *3 2 1 2

bC * 111 1 45 * 121 11 1 46 I •7 I 1 11111 1 47 I AC I 1 1 1 * 1 4C I 1 11 49 I 50 • 1 11 50

K\ * 94 ft 1 1 2 1 I 51 I o t 52 I S3 2 5* I 1 i 54 I E5 • 1 £ \i 55 *- 56 X 2 11 3 1 56 I 57 i 2 1 1 l2 1 57 I 5* I 1 1 50 I 5* J 12 11 1 59 I 60 • 1112 1 1 • 61 I 1^ 2 1 11 61 A 62 ! 8 1 1 62 I 63 7 12 63 I 6' 2 9111 2 1 64 I 65 • 1 1 » 1 1 65 • 66 t 1 '1 1 1 66 I 67 X 1 12 1 67 I 60 I 1 11 6* ! 112 11 69 2 TO • 1111 11 1 1 70 * *

71 ! 1 11 7 * I 72 2 3 2 13 72 2 73 I 22l 1 11 7* I 51 11 1 74 I 75 • 23 12 1 11 75 • 76 I 5 11 76 * 77 1 75 1 1 77 X 70 1 1» 3 11 70 X 7* X 321*1 1 1 79 I SO • I 1 00 • IS : 3 11 \ 01 I A2 2 121 1 1 02 X 03 * 52 11 1 63 I Ofi 2 3»l 1 f4 I 95 - • 1 1 05 - 06 2 531 2 06 I 07 2 • 11 07 I 00 I • 2 I !B I Ot 2 * 11 1 1 e» ; •0 » • 22 : 1 90 • 1 2 •a2l 3 «1 I * 92 2 • e 2 «2 I 93 2 1 •3 I • 9a ; •»121 11 90 : 95 • •5b c — ^ — 3 C — r C «> C

a. • • • • i3c

"5

Q.

a. o

a.O>I >

00

79
• ' C -0 e -C 2 t .2 c • * »*«c * S»«535 ; : c J : a*»57 1 • I «<i>l 12 c « C5>3 ' b I 31131 ;*«c3 e I »C2231 p ; 126121 1 c • J2T2

11 I S£6 < 12 : ! J I 2C21 1 1 ( I 36031 1

IS • «2«£3

16 I *1 1 2 17 I 6221

It 1 13521 I * ! 11711

£C • 52! 1 21 1 221 1

22 I 32 « I 1 23 I 11 2 2> I 2AC 2 25 • }C

2» I SS2

27 : 21222

2! : 1331 11 2" 5 20 2 1 sc • 2131 1

31 ! 211

32 : 12 1 13 ! 2211

3« I s«

I£ - tl ' 3b 7 2333

37 I 112

38 ; I 31

3« I «3

C(l . 13

ei I <SS 1 e? : 21 «3 : i Z tk I 111 «? - 21 1 a6 : 1222

«7 : 1212 1 K I 221

s« I 2] 50 - \Z

?) I I 31

52 1 U2i

53 : 2 21

5« ! 21J

55 - 2 211

56 : 32 21

57 I 12S2

5t I li 5' I 23 1 60 • 221 2

61 221 5 62 I 2 < 63 : 1 2 6« I IJII ' 65 • 21 • 66 t . 22 • 67 1 131

6^^ I 2\ ti : 1221

70 - 152

71 I 2 J 72 I 32S

73 I 332

75 I 1 1 3*

75 • 1325

76 1 216

77 I ' 2 «

7t I 7« I £ •

eo •

SI I t2 1 S3 J ^ 1 SA I 1 • 1 05 • 66 : • 7 67 1 3«

e» I •2

t<> I • *e • '1 : «2 : «3 I ta I • 65 . •

'>i 1 *

•1.5 C•C.6 •0.2 C.2 C,6 1.: —I o — —

0"-0

—

O > O > > • »A <r ^ « O 3— 5 —

wV2C

'o

D.

a:

a.on 2"5.

vdI >

00

80
• I.: c • —: ; 1 1 ; I 2 : 3 : 1st

fi I 2231 5 - 523 6 : 21 7 I 63 « : 32 : 0 ; 3 2 2 li : 23 12 : ; li I 2 : ic : a :s • 22

It t 2 n ; 3 1! : 22

J* I 20 - : 2: I 2 t 22 I 11 2S - 2J it I 2 27 : I 2S t 11 2^ : 13 30 - 11 3' 1 1 U I 1 ii : J 3« : 2 35 - 2 I* : 1 ZO J n

so - 1 «t ! I ez : u

tl I 1 1 AC ! 1 as • I «» ! 1 ae I 1 1 50 - 1 52 : I 5J I 1 sa : I 5* : 1 2 57 I 11 5« I 11 *0 • 1 tl :3 I hi I 1 »c : I «>s -I I *7 I 1 6( : 1 «• : 1 70 n

7! 1 I 72 ; 1 73 : :i 78 : 12 75 • 11 1 7* I 1 1 77 I 2 78 : 112

7S ! 2 2 81 : 2 S2 : 11 B< I 1«1 «5 • I 87 I IS 9« I 31 e* I 2 «e - t *1 I 7 ^2 1 S2 •J : 8 •* I 8 »5 - * «* : » . t •C.a •0.2 :.< C.t 67I

10

1112

13

1«15

16

17

le

1920

2122

25

26

27

it

2'» 30

3132

33

3C35

363«

ao

aiiZ

«3at

as

it

««

50S2

53

5<56

57

5«60

6162

63

6£

6566

6768

69

70

7172

73

7B75

76

77

78

7«

ei82

»<85

87

88«•

90

9192

93

•«•5

»6 ; , 0 o — o — o > o >

ft i«C « O D — 3 —

a.

J75 C>>

00

81
.c -C.J f.£ c. C.6 -c.c c.t * • ; * • * Z 6 * g * 3 1 5 : • t • e • * 2S I C 1 3 1 • I * 12 I * 13 I *

flj ' * 23

it * * 1 t X 31 17 '} * £2

IS 10

T ** 1 I " s * * 1 23 I * 22 * 22

I'r 3 1 eb i 31 t * 29 2 * 12- * 2 31 I * i * 1 33 i. \m T * 2* * 32 3d 2 * « 3 1 c X9 T 21 C C3 1 «C i * J * J I Aft ! 2 J Aft t * 2I ] 50 • * 51 I ] 52 I 2 55 * 2 J 56 * * >• 57 I * a % Cl 59 2 * C *

A. 1 Y • 1 I * 2 62 1 1 fa3 2 * 13 * 3 65 • 1 1

66 Z * 1 67 I * 1 68 X 12 6t 2 22 70 • 2 72 2 c 73 2 *

21 7a 2 212 • r * III 76 X 1 6 77 2 76 2 * * * 7P 1 * 1 3 * J 52 I 2 53 2 3 »« 2 3 2« B6 2 • 67 2 • 2 6B 2 2 f« 2 1 *

2fl 91 2 4 1 92 2 93 2 * * 9« J • 96 2

ir e

•V rv * o• • aX •X o « o o Vo > e c 3

tt £ c• c o— C c e X — r v V n e » e

•* e» • c • — o c • o e o o • • — c c C • • « • o — & — o >

<*- « o > > • — • *w £ X> c> O S — 9 — a.

C/3

Q.

OOI >i

OX)

82
s!el et 1 ve Errof TCSP») Relative E . ' * :

'. c * J 1 * 1 ; * 2 ; J ; 3^5c 3 ; 235 5 1 c « 1 * 1 t • i*23 

* 0 1 1 

j ; e • 1221 « I ' C * ti 10 225 11 I ' i ' 2 3 12 i * 3 ' 1 13 I ' c • 111 1 I

fi I 15 * 15 « 1 16 I ' 7 I *l2l 17 1 18 I 16 I 1 ' I 1 1 19 I ?C - lie 20 •

21 * 1 1 21 2 22 I 22 I 2* 2fl I 2? • 22 25 2 1 * 1 26 ! 57 - 2 

27 ! 2£ * XI 1 26 I • 29 * 1 1 29 I JC- • 1 30 • 51 I 111 31 I 32 I ^ , ,

32 I * 53 I 33 I jfl 1 c 1 3A ! 35 • 2 35 •

3fc 4 I J 36 I 38 I 36 ! T 12 39 1 t CC • 2 1 fiO - * •1 1 C 1 Al I J <2 X 03 I 43 !

&ti I J

J A£ *

j|C . 1 AS • A6 T 1 1 46 I a* I

'1 1 a?

J C2 I 1 i a6 2 A« I % 1 CI A9 t SO • 1 50 • t 51 I 1 51 I 53 T 53 Z

5<i * « J

5A I' ec • 55 - •

5fe ! 1 1 56 I 57 I I Ci 57 1

Sft I I 56 I « 5S 1 59 I bC • 1 91 60 • 1 T 1 J 61 I 62 1 1 1 62 2 fc3 I 63 1 I 64 I b5 * 1 3 65 - bb I 6b I b7 I 111 67 I b5 I 1 66 1 69 I 1 69 2 70 « 1 

70 • 7? 1 1 

72 I 71 I 1 1 73 2 » i 1 

70 2 T* • 2*2 75 - 1 1 7b I 77 ^ 2 5 77 I 76 4, I 5 76 I 'VO * 7' • 5 • 79 2 SI I 2 61 X 5? J U 62 2 El T 21 63 2 B* I &b 6a I 85 • !• |C • th i 12 6b 2 * 67 : lb 87 1 s« : • 1 66 2 •9 I a 99 2 9C - • QO - '1 t 2* • 1 2 «2 : 92 2 • «3 : 93 I «c : 9« : *5 « 95 • * 9b : 9b I : «• c c ; • • * * o > o > O 3 — 3 —

I. z • z .

0.in

a.5CI >

i-i 3

00

83
TCSPR) "elit^v* Error RelBt1v« Error

-0.2 — i —i.2

0 - 215 i

i 2 I3ei 1 2 : 1221 1 } ! c : n: 1 5 • 2 31 1 t 1 ?

• 122 ; « i 11 u

? I 211

IC -

I

1 ;

1 2 12 I 1 3 13 ! IIU

i< : 11 ! 1! - 1 2 17 1 21 1 li I 12 1 i<> I 311 20 . 21 I 21 : c 22 : 1 2* I 112 2! - 2 26 ! 112 27 I i 1 2£ : 111 1 2» : 1 1 30 - 1 32 : 1 5« : 1 IS • 11 5* ! 1211 37 1 1 3» I 1 11 I« I 1 30 - 3 i\ I 1 1 CI : 1 ts 2 1 ak I 111 47 1 1 a« : 1 50 - I 51 I 1 52 1 1 i St : 1 ss • 1 1 1 56 I n 1 S» I 2 60 • ] 61 I 1 *« I 2 65 . I 67 I 1 it I 11 70 - 11 72 I 2 73 I- 1 7« 1 11 7? - 2! 7k I 1 77 2 I 7« ! 11

•1 2 2 »2 I 2 93 Z 2 it I 11 »6 I 23

e7 2 c ee : 6

to I * 90 • « »1 1 32

'2 2 S

<»3 2 s «« 2 • »5 • * »6 I •

-0.6 •0.2 —I.-.

0.6 1..0

c m z —

X

— AVI

• c

-* o

o—o—

o >• e >

^ m ^ m

c — s *

e 3— 3 —

«. 2 • z • e o

• »

• o c * c

« m — « • V • Z £

O

• • £

e

cr ^

o

on o

o

<yo

>

3

84
TCSPRJ Relatlvt Error Rol ttl v« Error

- U 3 • c ,* : .0 -i ,c -C.t •«.2 C.2

( • c -

» T !£:i : z t t € « * S3 1 1

; ; I \U \ J ; c : t : • O o

9 91 c c i J a

• J o ^7

7 ; 211

1 1

!

7 I 6 2 > ; ; « J W I t ] ]C • lU 10 •> * K s

13 I 1 i 11 I 12 I 1 * 12 I 2 * *

13 1 J 1 IS I

f £ t 1 • I J 2 J J

tfC «• ] IS • O o

S7 ! 211 17 I * o o

le : 1 1 i> : •

1 1 I 1 I 1' I >

20 • 22 I

< ! 1 20 -

22 1 2^ I 112 24 2 25 • J 2S •

2fc ! 1 1 2fc I 9? ? C ' & J J 27 I « « •

20 'I 1 2e I * 2* I 1 1 29 J ^

^fl»

**

€» o^o J • • 31 1 *" o e 33 I 1 33 :

*>*ft. a. • 3C ! 12 3« I O • w • u U. 3S • I 3S • * i • • • •

3* I 1 I }» 1 17 T 3f ! 1 37 1 JO J • m o> O >

«0 - 1 to - •

I *l ' *s « *

C3 I 1 1 «J I O 3— 3 —

&4 I J Z Z .z .

«- o e

s7 : 1 87 I o

s« I • ^ • C9 T 52 I > X •

* 5 — K • V •

S* I J I SI • SS - O

5C t SO I • • K CC 5* Z

frO •

2

J kO •

• o o o

61 Z 9C

Ck. <a o

65 « i hS

fc7 J J J »7 * •

*- 6B I TO •

J J kO I 70 * w

72 I 73 I J 72 J 73 2 T! • 2 7J - CI : 1 ti : •Z I 2 02 I es : 2 03 : >

es • 1 es • B* I t «* 2 «7 I > 07 1 »e I 1 00 I 5i) *• : 1 : •0 - 2 •e • iZ

*i 1 >2 *i I •2 2 2 •2 2 «3 I I •J I J 2 «< 2 n • c »S • * •» I « 2 •

85
O(SPR) Reletlve Errop OCSPR) Relative Efrop

* • ' • - • * *C . 2 c , 2

0 - 6 *

2 22 lis 2 I •

- • 1 31 3 I * 35 :

1

f

• *

" 3 2 5 " *

6 I I t I *

7 ; 2 7 I *

£ ! 1122 £ I * ^ I l2 11 * • 10 • 121 I C • *

1 1 I 32 1 1 ! 12 r 22 1 2

* *

13 : 2 1 1 3 I •

! 1 1 * I * 15 • 1 l5 • * It I 2 1 lb I *

1 7 I I U * 7 I *

1 * 1 21 16 !

I ^ I ! 1 1 ^ I * ?0 - 2 1 2C • * 22 Z 122 22 I 23 I 1 23 ! 2« : 32 2c : • 2b * 3 1 2b I * 2f I 1 1 efi I * It - * 30 - *

3 1 I 3! I 52 ! * 32 I • 33 1 1 1 1 33 I it I 1 1 1 36 t * 36 ! 3ft I * AC • 1 c C *

- 1

1

I I *

1 a2 I 1 43 I *

- " .

i IX *fi. * C5 " 1 fl* • * ^6 ! I *6 I *

* ' • 1 1 *7 I

I 1 1 Aft I Si I 11 1 51 I * 53 I IS 53 I •

5fl i • 5* I 55 • 1 1 55 • * 56 I 1 56 I *

t

1 57 I *

1 1 59 I 61 I 2 1 1 61 I * *2 I 1 62 I

1 2 I 1 6A I * 65 • 13 1 65 -

tt I 2 66 I 67 I I 67 I 7? I 2 1 72 I 73 : 1 73 1 * ?c I I] 1 7a I 7S • 2 75

7b I I 76 I 77 : 21 77 I * 76 I 13 1 78 I 7^ I • t 79 I 50 - 1 X ftO •

ei I 1 1 fti : ft? I 1 &2 I ea I 3

c • B 1 1 85 - t It : I 66 : S7 T a 67 :

I • 2 66 I c 1 2 11 1 1 69 I io • » J 1 90 -

«»i I 5 X • J J •2 : *1 92 1 on T 62 93 I 9c i •5 11 «A : 95 • « 1 95 - •* I •« 96 I •

1.0

c — —

^ M o -<» e

• c • c • o e

o — o —

o > o >

x> c ^ -o O 3 «— 5 —

a. 0-

a

>

86
3(3PB) R«Ut<vt Error Q(8PS) ««UtUe Error

•1.9 » -CiZ 0.2 t,k l,i • 1 .

0 • ; 16827 « ) •

J I •<So

J ; 53 « 2

1

• sStl J

£ J SU2 c C _ 63 » 5 • b

* 131 k

7 t 253 7 ( J 132 ! 4 2 131211 9

1 0 • 31 10 •

1 1 I 12 22 11

12 I 21 11 12

13 I 1 1 1 13

1* I 12111 K

If - 222 IS <

Ife ! 1 1 Ik

17 ! 11 11 17

It ! 11131 IB

1* • 1111 19 20 • 1 J 20 • 21 *I 1 I 21 22 I 11 11 22

23 7 1 11 23

2fi 2 1 11 11 2S 25 • 11 1 2S

26 1 1 2k 2' I 1121 27

2S I 2 1 1 28 2« ; 11 1 29 30 • 1 2 30 3r I J 1 Jl 32 I 1 1 32 33 1 111 1 1 33 3< I 1 3< 35 « 1 35 3* I 11111 36

38 ! 2 38 3* ! 1 39 SO • 1 1 ac

41 1 11 11 «1 S2 I i a2 13 I I 1 11 <3 «S • 1 11 as

I. 12 11 1 <6 <7 I I 11 47 at X I 48 •* I I 19

se • 1 so

St 1 1 1 1 51 52 t 1 I 1 52 SS ! 2t S3 50 I 1 1 S< SS • 1 1 55 Sk I 2 1 S6 ST I 2 1 1 57 59 I 1 1 58 S* I 11 1 59

60 • 11 1 1 1 60

tl I 1< 1 61 62 I a 62 63 ] 2 63 64 S 9 1 I 6« 6! • It* kS 66 ! } • kk

67 t J 11 k7 6i 1 I \ 68 69 1 69

71 2 - 1 11 71 72 I 1 2 1 72 73 ! 2 I 73 7* 1 21 1 7a 7S • J I 75 76 2 3 I Tk

77 J tS 1 77 7S 2

'9 11 78 79 2 • 1 79

81 2 1 81 (2 I 1 1 82

IS 2 2 It 1 83

1« 2 1 8a s* : 21 Sk (7 2 « 11 87

SI : SI 1 «i •9 X • 11 89 90 - • 22 90

91 I 13 •1 92 2 27 92 93 i •« «J 99 I *i «<

-«.k -o.z 0.2 o.t ...I. —

:

At! >

•C — — • c _ c c e z m z

D 3 ~ 3 cu o

o

_o

1—, Shao

>

r1

>

i

op

87
aCSPR) >)»1ativ« Ercor

256;5ii:

213 i: 22»

11 11 '22!

121 12

15251 an 1 22 1 51 1 21 1 2 1 Ut li 113 3 S 1 1 1 in

'ill 1 I 211 1 12

13

II I 11 1 1 1 1 1 1 111 1 11 111 2 n 11 1

.C -l.C c-C.J

03 I 1 it I 1 «5 - 1 °* ! 11 «* I I «T I «t : 1 1 50 - 1 1 11 : 1 1 51 I 52 t 2 S2 I S3 ; 11 * so ! 1 1 U I ' 1 1 2 5t I 57 ! I 1 5* 1 1 it I 59 I 2 1 *C - 1 *

bi : 11 1 k2 ! 2 63 I 1 I 2 1 1 2 1 *« 1 ti • IK I 1 <1 67 I 1 64 ] 11 1 76 - 1 *

7: I 11 72 I 1 2 72 I 73 I 21 1 * 7« : 2 1 7« . 11 1 75 ; 7» : 2 1 77 I 31 7B : 7 1 74 1 ll» * CO • I 1 «e •

ei : 2 1 1 B2 : 1 E3 I 31 1 * >< : 5 * (5 - » t6 I 11 1 87 1 6 1 6g : • I * J* I 6 1 I * »e - • I 1 »i I (3 2 »2 : • 1 1 • 03 : • a »« I •11 1 ot • •11 46 : •e c —

— • c • c * w — ^— o o e

b. « e • w • •* X ^ c c c • « • • e —o-^ o >• e > > • •« • b ft ^ m O 3 O 3 — o e con aoop3

00

88
QCSP"?) Bel it 1 ve Error Q (8PB) Bt 1 Bt U« Error

23; : \:i : Hi: ':

•.li :

1 : :

;

2 :i

1 1 12

i:

12 ; 2 1

1 11 111 1 121211

: 1 2

1 22

2 121

I

1 n

:ii

1 21

1 1

1

1 11 1

1

I

J

I 11

1

1 11

2 1

1

1 1 2

> I

• 1 1 121 1

1 2

• 53

• C K

• c c c in I — z

— — c ^ c

O 3 — 3 • (/2 a

o

"a,

oo

o

to>

p

89
Q(SPR) Rel«t1v« Epcop

-C.e 0.2

I I Hi i mil

331 1 III 112 1 1121

c

1 1 I

I 2 12n

32

I 1

1 11

1 3 I

1 1 in

« 1 1

1 n

211

1

1 1 1 1 1 2

1

111

1

1 1

1 1

1

I

1 1 1 1

C.6

.-I —

C.2

1 n

1

1u

13

23

a

56T

t

4 10n

12

13l«15

17

le

1*20

22

2a25

26

27

it

i<> 3133i»35

3637

3*

«0«r

«3a6

«7ae

52

5«

55

SI59

60

6165

676«

7072

7375

SiS2

a3

es

S6

87

it

84»0

»««2

<»3 «s

»5

96

c — —

c Z V X

O • V * <* X - c- c

cc • « • «

A m A

«. b — C

ft. 1/3

asOl a

O

_o

_>

I >

00

90

92
93
94
From these relative error plots and statistics tables of the individual parameters, one can see

that this approximation does possess some parameter sensitivity. The throughput performance

measure does not indicate any sensitivity trends for the p^pj^ and s parameters. For the J

parameter a significant decreasing trend in mean and variance of the relative error is observed as J

increases. No definite trend for die R parameter can readily be detected. Although the overall mean does decrease as R increases, the variance and the mean for those points not near device

saturation do not. The p^pp^ parameters are observed to behave similarly . As a result, the

throughput performance measure exhibits some sensitivity to the J and R parameters.

In contrast to the throughput performance measure, the mean queue length has lower relative

error values, approximately 12% for the CPU and 15% for die SPR. The mean queue lengdis

predicted by the approximate model underestimates those of the exact model for low values of

PSPR ^'^^ overestimates them for high values of PgpR. This accounts for the lower mean relative

error values. In a manner similar to throughput, as saturation is approached the relative error

becomes small. The variance of this relative error is higher than that for throughput,

approximately ±14% vs. ±6%. This can be seen from the scatter plots, figures IV-3 through IV16, especially for mid-range values of Psp^- This implies that the mean queue length performance

measure is more sensitive to our approximation than is the throughput performance measure.

This is consistent with results obtained by Buzen [BUZEN 77] in his use of single server

approximations.

Observations of die limited relative error statistics from the tables and plots indivate some

trends and sensitivities, although they are inconclusive. The mean queue length performance

measure does indicate a decreasing sensitivity to the s parameter as this parameter increases. This

may be credited to these PPUs handling a larger portion of the workload and, tiierefore, the CPU

and SPR are less heavily loaded. Botii devices do not indicate any sensitivity to the p^pj^

parameter. The J parameter indicates a definite sensitivity trend in both mean and variance. As

J increases die relative error decreases. Both devices indicate a trend for die u^pp^ parameter, but

in opposite directions. The CPU demonstrates a lower mean and variance as Ugpp^ increases, but

then as Ugpj^ becomes relatively fast the mean and variance tend to reverse and increase. The

SPR demonstrates a totally opposite response. The mean and variance increase with increasing

Ugpj^ and then decrease. For die R parameter both devices demonstrate a trend, but again exhibit

opposite reactions.

95
The CPU exhibits a decreasing mean as R increases, while the SPR trend is an increasing one. The variance of both devices do not indicate a clear trend for this parameter. Therefore, the mean queue length performance measure demonstrates a higher sensitivity to the J and R

parameters than the throughput performance measure, and is also sensitive to the Ugpj^ parameter.

In addition, the CPU and SPR demonstrate opposite sensitivity for the u^pj^ and R parameters.

An error analysis of the approximation has been presented to aid designers and analysts when

they apply this approximation. Although the error analysis is by no means elaborate or

conclusive, some preliminary trends and sensitivities have been identified. This by far exceeds

the error analysis presented to support other approximations in the literature. Further work to

establish an accurate error function which incorporates all these parameters is still needed.

In conclusion, we feel that the approximate SCS model provides reasonable results with small

computational requirements. The approximate model computation times are on the order of a

few seconds vs. minutes, hours, or even days for the exact model. The throughput values

computed by the approximate model are always less than or equal to the exact values and on the

average 20% less, ±6%. While the mean queue length underestimates the exact value for low

Pgpj^ and overestimates it for high values of p^pR, the average is approximately 12% to 15%, ±14%

, with the greatest variation occuring in the mid-range of Pcpo.

96
V. ANALYSIS OF MODULAR EXPANSION

A. Exact Analysis

In chapter III, a queueing network model was developed for an architecture consisting of

independent computing systems (ISCs) sharing a single device. In chapter IV, a much less

complex approximate model for this type of architecture was introduced. Of interest for this

architecture is the effect when the system is incrementally expanded by the addition of ICSs.

Expansion of this type places a heavier load on the shared device, causing degraded service to each

ICS. This introduces a dual problem. First, for a given configuration and a specific expansion,

what is the degradation in service that results? This can be determined by using either of the

models to compute any of the previously discussed performance measures for both the before and

after cases. By comparing these measures against each other, as well as the requirements of the

facility, one may determine if the degradation is significant and acceptable.

The second problem occurs when it is determined that the degradation is not acceptable. The

alternatives then are to either forego the expansion or augment the shared device to increase its

processing rate. The problem is then one of determining the amount by which the processing rate

of the shared device must be increased to maintain the current level of service being delivered to

each of the ICSs.

Both the exact and approximate models are used to develop corresponding relationships

between adding ICSs and increasing the processing rate of the shared device. A before and after

comparison of a response performance measure for a modular expansion of a balanced system is

considered. The performance measure of interest here is the mean cycle time. This is the mean

time of a renewal interval. This interval begins when a job enters the CPU queue, and terminates

when that same job next enters the CPU queue again. This is a measure of the average time spent

at each device (both waiting for and being processed), weighted by the probability of visiting that

device. Each job, in general, will require many different cycles to complete its processing task, of

concern here is die mean time for this performance measure.

97
From Little's result (W=Q/a), the mean wait time (W) spent at a device (in queue and

processing) can be determined if the mean queue length (Q) and the mean arrival rate (a) of that

device are known. The mean queue lengths for the exact SCS model, from (40) and (41) of

chapter III, are

(1) Q.: = 1 2 X.. G(J-kd.) . for i,i^O , and

G(J) k=i

K R

(2) Qo = J_ 2 k! k { 2 n h(r;Vn^o)}-

G(J) k=l R r=l

i = l

The departure rate of a server whose service process is exponential is equal to its arrival rate [BURKE 56, HNCH 59,BURKE 72, MUNTZ75, KLIENR 76}. As noted before, the throughput

performance measure is actually the device departure rate, and from (43) and (44) of chapter III is

(3) Tij = A.j = G(J-d.L , for [,i^Q , and

n g,(J,)

i = l

(4) To = u^Aq = u, { 1 - }

G(J)

Therefore, an expression for the wait time at a device is

(5) W^. =Q.. /T.. , for i>Oand j> 0 .

From this an expression can be formulated for the mean cycle time of a job assigned to an ICS as

98
W. = S p. . W. . , for i > 0 and j > 0

j=0

(6) = 2 p Q.

. /T.

.

= Pi.oQo/To + PuQi,i/T. i + i p,^Q.^ /T..

j = 2

- Pi,SPR QSPR ^SPR Pi,CPU ^i.CPU ^^i.CPU ^ Pij ^ij ^^ij

j = 2

Given an SCS system consisting of R ICSs, the desire is at least to maintain the same mean cycle

time after a modular expansion resulting in an SCS system of R' ICSs. It is assumed that this

can be accomplished by increasing the mean processing rate of the SPR, and further that this

increase can be expressed as some muhiphcative factor fi. This relation can be expressed using

the mean cycle time performance measure as

WjOSugpR, R') < W/ugpR, R) , or

(7)

Pi,SPR QsPr(^ "sPR' ) /^sprO? UgpR, R') + p. CPU Qi,CPU ^i,CPU + ^ Pg % ^ij

j=2

^ Pi,SPR QsPR ( "SPR' ^ y^SPR^ "SPR' ^ ^ + Pi.CPU ^i.CPU ^i.CPU + ^ Py % ^^ij

j=2

where

P' > R > 1 , and

(8a) ^ = a RVR , or

99
(8b) P =1 + a (R7R - 1)

By successfully increasing the SPR processing rate to handle the incremental load of R'-R

additional ICSs, it can be assumed that the wait at each device within each ICS remains the same.

This results in (7) reducing to the wait at the SPR only, which is

Pi,SPR QsPR^ "SPR' ^' ) ^SPr(^ ^SPR' ^' ^ ^ Pi.SPR ^SPR ^ "SPR' ^ ^^^SPR^ "SPR' ^ )

(9)

QsPr(^ ^SPR'

^' ) /%r(^ "sPR'^'

) ^ QSPR ( "SPR' ^ ^^^sprC UgpR, R )

By reformulating (4) and substituting equation (31) of Chapter III we obtain

R

n gidi)

1=1

'^SPR ~ ^SPR^SPR ~ ^SPR { ' " }

G(J)

(10) ^SPR

G(J)

K

I k

!

k = l

R

{ 2 n h(r;Vn^o) }

2n.o = k i=l

Substituting (2) and (10) into (9) a complete expression for the inequality is obtained of the

form

100
K' R'

1 I k'! k' { I n h(r;J^-n^Q) }

G(J') k'=i R'

i = l

r=l

Sn.o=k'

K' R' 2 k'! { i: n h(r;Vn^o)}

G(J') k' = l R' r=l

P uSPR 1

2n.o=k'

i=l

K R

_i 2 k! k { S n h(r;J^-n^o) }

G(J) k=i R r=l

i = l

Xn._o = k <

K R

UspR J_ I k! { I n h(r;Vn,_o)}

G(J) k=i R r=l

2;n.0=k

i=l

Expanding the h functions in the above expression, from their definition in chapter III.B

between equations (14) and (15), results in

K'

1 5: k'! k' { I n

G(J') k=i R'

R' xV/r,0

i = l <

{

R' x'^/r,0

2 n

G(J') k=i R' r=l n^o!

2n.o = k'

i = l

101
<

where

K' = R' J. K = R Jj

i: k! k { s n gr(V\o)}

G(J) k = l R r=i n^.^! 2n.o=k

i=l

K R X,/r.O

2: k! { s n gr(V\o)

G(J) k=l R r=l n^Q ! Sn.o=k

i=l

"SPR

J' =(Jl, ... , Jr,) ,

J =(Ji, ... , Jr) ,

Jj = Jj , for all i and j , and

Cancelling similar terms, cross multiplying, and moving everything to the left hand side of the

inequality results in

K R X^/r,0

{ ^ n g/J,-n 2 k! ,0 ) }

k=l R r=l nj.Q!

2n.o=k

i = l (11)

K' R' x'^/r,0

/? ^ k'! { 2 n gA-^ro)}

k' = l R' r=l n^Q\

2n.o = k'

i = l

102
K

I k! k { I n

k=l

R X,/r.O

8r(V\0) }

(11)

R r=l n^o'.

i = l < 0

K'2 k'! k' { 2 n

k' = l

R' x'^ Ao r,0

8r(V"r.O) }

R' r=l n^o!

i=l

Inspecting (11) we notice that all terms may be moved into the innermost summation. Noting the

similarity of the summation in both numerators and denomenators a simplifying notation is

introduced. Let

= {

R X r,0

- {

2 k! n ] R r=l n^Ql

=k

i = l

R' x' A^r.O

k'! n

R' = k'

r=l n^o!

i = l

gr(V\0) } , and

gr(V^.o) }

Substituting this notation into (11) yields

103
K K ^ \ 2 k bj^ k=l k=l _ < 0

k' k'

fi 2 b'^. 2 k' b'^,

k' = l k' = l

Separating the common outer summation term results in

K

(12) I b, L -

k=l K' K' 2 b'^, S k' h\

k' = l k' = l

] <

The bj,'s of this inequaUty are always positive. Therefore, for the inequality to be satisfied

requires the inner term to act as a weighting function and force the entire expression to be nonpositive. Although a solution may exist for which will satisfy the equality, no obvious method of

obtaining it is apparent. In an attempt to satisfy the inequality and obtain a lower bound for we

will investigate die situation when the die inner term is always < 0. By inspection of (12) we

notice that within the inner term, except for k in the numerator, die other terms are independent

of k. As a result this inner term achieves its maximum value at the minimum value of k, which is

1. If diis term is < 0 for its maximum value, it is < 0 for all values of k, and die inequality is

satisfied. This leaves the following relation for a lower bound solution for ^

:

[ ] < 0

k' k'

/S 1 h\, 2 k' b'j,,

k' = l k* = l

By rearranging the above we obtain

104
K'

k' = l

K' - P Y b',, ] <

k' = l

Repeating the previously applied separation process yields

K'2 b\. [ k' - )3 ] < 0

k' = l

Again applying our previous arguments we obtain a further lower bound solution to the

expression, since b'j, is always positive. This inner term achieves its maximum value at the maximum value of k', which is K' = R' . Therefore, the inequality is always satisfied if it is

satisfied for k' = K', This yields the following lower bound solution for :

/S =K' = R'].

Solving for a by substituting (8a) into the above yields a = R Jj .

The interpretation of this result implies that by increasing the processing rate of the SPR by a

factor commensurate with the total resulting number ofjobs in the entire system one will be

assured no degradation in response occurs as compared to the response prior to the expansion.

Unfortunately this is such an extremely high lower bound that the result is not very useful.

In retrospect, based on the results derived in the next section, if one repeats this procedure

and differs only by substituting in (12) the maximum (K = RJ) rather than its minimum (1) value

of k, the result obtained is :

fi = R7R and from either (8a) or (8b) a = 1

.

105
This result is much more intuitively appealing due to its linear one-to-one relation, but its

derivation cannot be substantiated from the above equations. Although ^ 1 ^

bj^ increasing factorially, and the inner term of (12) is linearly increasing in the negative direction

with k , this is not sufficient to conclude that

K

K'

k' = l

K'

k'=l

K-1

] > ^

k = l K'

k'=l

K

k' = l

k' b'.

B. Approximate Analysis

Analysis of the expression for mean cycle time of the exact SCS model has resulted in a

dissappointingly high lower bound for /8. In this section the approximate SCS model developed in

chapter IV is used to perform a similar analysis.

We can immediately write a similar expression for (6), from (9) and (11) of chapter IV, as

- ^SPRj ^SPR ^CPUj ^ ^PPU. i^PPU- j

j = 2

^SPRjQsPR QcPUj ^PPU-jQpPUjj

(13) = + + 2

1 IJ

1 { Qspr/R + Qcpu. + ^ Qppu. . }

^CPUj

106
The intent is to maintain the mean cycle time of a job after a modular expansion. Therefore, a

relation similar to (7) can be established as

W.08uspR,R') < W.(uspR,R) , or

(14)

} < {Qspr/R + Qcpu. + 5: Qpp^, . }

a'cpu. j=2 a^^p^ j=2

Assuming that the processing rate of the SPR is successfully increased to satisfy the above

inequality, it can be assumed that the wait at each device within each ICS remains the same. This

further implies that aQjy also remains the same. This results in reducing (14) to

{ Q'spr/R' } < —1- { Qspr/R }

^ CPUj ^CPU.

(15) Q'spr/R' < Qspr/R

1/R' < IZR

(fi Ugpj^/R' pgpj^^ a^-pu. " 1) ( "spr''^ PsPRj ^CPUj

By inspection of (15) one can determine that by maintaining a constant ratio of

Ugpj^/R' = C , where C^u^pj^/R

results in

/3 = RVR and fi-om (8a) a =1 ,

which satisfies the inequality and actually improves the cycle time rather than just maintaining it.

This was conjectured, but not proven, at the end of die the preceeding section. Maintaining the

assumption that a.Qpu, remains the same, the equality of (15) is solved for the required fi.

107
R ( Ugpj^/R Pspj^^ a^^u. 1) - R' "SPR^^' PsPRj ^CPUj " ^)

- 1) = (PspR. acpu. /uspr) (R' - R)

Noting that p^pj^ = R PgpR. a^-p^. /Ugpj^ and subtituting it into the above yields

1 1

OS - 1) = (pspr/R) (R' - R) •

This may also be expressed as

^ = 1 + (pspr/R) (R' - R)

(16) = 1 + PspR^R'/R 1)

From this, and (8b), a = p^pj^ is obtained.

To evaluate the accuracy of the wait time performance measures and, therefore, the accuracy

of this modular expansion result, we present an error analysis similar to diat of chapter IV. The

relative error scatter and mean value plots of the CPU and SPR mean wait time are presented in

Figures V-1 and V-2 for the entire sample space. The relative error statistics for this performance

measure are listed by parameter in Tables V-1 and V-2. Representative comparison curves for the

exact and approximate models are plotted in Figures V-3 and V-4.

As can be seen from Tables V-1 and V-2, this performance measure exhibits some parameter

sensitivity. Some sensitivity is indicated for the s parameter. The CPU indicates a decreasing

error as s increases, while the SPR show an opposite response. This sensitivity is attributed to the

large number of FPUs spawned by increasing s, resulting in a greater portion of the workload

begin handled by the FPUs, decreasing the SPR and CPU workload.

Both devices demonstrate a sensitivity to the p^pj^ parameter. The CPU does not exhibit any

trend, while the SPR shows an increasing error trend with increasing Pgpj^. Both devices exhibit a

decreasing error as the J parameter increases. Both devices demonstrate an opposite sensitivity

trend to the Ugpj^ and the R parameters. The CPU shows an increasing mean error.

108
A' (CPU 3

-1.5 •C*6 *C»2 • < C

a 6 1 * • I c •C 2 C • i 7 » • *i c • * * 1 2 12c ' ** » 1 • i I 3 1 11 £ i i : 21 113211 ' * ' J • c ' 11 '223 5 • 12^1 1 fa 9b2 S b i 1 2 * ' i 2 2252121 5 '3 1 7 » 3 £33 9 9C CC- 4 I ' • 2 11 4. T \ J

./ - 121 2 ' I 10 1 • I 2 1 11 I 12 I 11 21 2 c 12 I 1 1 I 11 2 C C C 13 * 1 ' I 21 112221 12 3 I I iS • 11 2 2 2*3 15 * 1 1 221 2 1

16 I 1* I 12 1 3 1 3 1 ? z It ! 111 1 S2 \ 16 X 1' I 1 311 3i I I ^ * 26 - 1 1231 1 * 20 *' 21 I 11 2 1 1 21 I 22 I 1 1 I 23 I 1 1 1 1 23 I 2« I 111 2 11 5 2S - 12 2S *

26 ! 1 1 J 1 £ 26 I 27 I 121 1 3 1

27

X

2fi I 1 111 1221 25 Z 29 T 2 1111 29 J 30 • 1 11 1 211 3D *

31 I 1 111 31 ! * 32 t 1 1 1 1 32 I 33 ! 1

fl 1 33 I J« I 112 1 1 2

ja I * 35 - 1 1 1 1 1 35 * 3b ! 1 2 21 ! 21 1 36 I 3T ' l2 1. 2 37 * it i 1 1 1 1 1 38 I 3* I 23 1 1 39 I AO • 1 131 2 AO

«1 ! 1 33 21 fll 2 S2 I 1 3C 42 I «3 I 1 1 1 1 I •

fiC i > 85 • 1 I c <5 * 1 11 121 A6 ! *7 X C C 2 J fl7 I * At I 1 11 111 it* CB I A' T 11 1 09 X 50 • 1 1 1

56

— * 1 51 I 52 I i CI I 52 I * 53 I • 1 53 I Sa T 1 c 1 5a J 55 • J J 55 *- * I 1 1 1 let 56 X *

57 I 1 111 3 1 57 I Si I 5A I 59 I 1 1 111 1 59 l' 60 • 1 2 60 •

tl I 2 1331 61

X •S I 1 ei 62 I * *3 I 3 63 X 60 : 1 1 1 a« *5 • 1 1 «B1 65 • * I 11 1 2 •S 66 X * *7 t > 1 1 1 1 67 X I I U 6S X t *' I 1 2 1 2 64 X 70 • IZI 12 1 70 •

71 I I 1 1 71

X 72 I 1 1 in« 72 X 7J I 1 11 23 73 X »C I 1 1133 7fi X 75 " 1 21 I « 2 75 • 7» I

fll 2 76

X 77 I 1 £3«2 7T I t 71 I 1 J 78 X 7* t 3**133 79 X • SO • 2 80 *

SI ! I 221 81

X S2 I 1 I 121 82 X • (3 I 1 2 2 11 2t 63 X !C ! 1 21»3 8fi I 65 • oc*l 85 * • t» : 2 2 llfil 86 I 57 I 1 1 l?«3 * 7 X ti : 1 3*».3 86 X !« I 5671 X «e • 1 •0 •

«1 ! 2 13 2.5 *l ! • 2 J C 13 :»»33 <»2 : •3 ! I S *J*21 •3 ; A : • 111 3 9« X ** • 3 :5^»6 45 -

cm

X v> Z A o- ^ o

t.

A ^ » o o DO 5 — c z z • b o e w < — • -> a • o c • c > X • • —K » V •

•• z z • — oE O

a.

Q.C>o>

109
0*6 -*« •C.2 C.2 0 • - • 2**i 3 : •*1

V* t ; k« « « 6 1 « 7 T 3* t : 2» « ! 3*1

IC • 2> 1 1 ! 1*2 M I 2B!

13 : 7J

i* I 2*5

IS - *k

1* I 161

17 I 2 72

IE I 3135

1' I l<k

20 • 1*1 21 I 1 It 22 J 1 lis

23 I 1 2 1 2« T 1 1 172

25 • 1 1221

2* : 71 JT ! 22 131 2! ! 15211

2* : 1 <3 1 30 • 12S1

31 I 1 111

12 I I 111 33 I 3 2 1 it I 3 « 1 3S • 1 121 36 : 1 1 2151

37 I I S }k I 32

J» 1 1 13 2 £0 • 1 C21

<1 I 1 1 2312

C2 I I 1 1 C3 I 1 1 11 it I 12 B% . I 1 1 4t I 11 112 1 07 J I 1112

«< I 2 111

** I I ts SO • ] I 1 51 1 1 1 111

S2 : 11 111

53 I 12 1 J

S< I I 111 55 • I 11 5* : 11 1 1 3 57 I 2 1 112 58 I 1 I S» 1 I 1 1 2 *« • 2 12 1 1 41 I ? 1 1 1 k2 : a 1 «3 I 2 J t« I tl 111 2 kS • 1 1 6* I *3 1 111 7 I 1 12 t( I I J J 3 III

70 • 1 2 1111

71 I 1 2 72 I 212 1 73 1 4 11 11

7' I k 11 75 • C 1 1111

7k ! 23 1 J

T7

J *1 1 7* I 1'* 1 1 2 1 7' I **tll 1 SO •

(1 I 3 11 1 82 I i i I 03 I * 1 2 1 1

(( i 1*31

65 * • 1 a32 2 H7 I •51 1 ee I • 1 1 M I •3 2 1 »o - ••21 1 1 »i I »121 2) •2 : 2 ii I • 1 *• I •2211 2 5 - •*< •» I •

l.O -1.6 1 1 1

12

•O.k -0.2 0.2 O.k 1,0 o - — C VtXMZ e 30 3 o » ^

*o c • c oa

a.

1/3

(4.oO

"3. OII >

110
p Points Mean Variance Minimum Maximum — 1650/1158 -0.0795/-0.1001 0.0245/ 0.0309 -0.6388/-0.6388 0.3056/0.1515

PSPR

IT* IVlCail Variance Minimum Maximum

O.lt) 33u/ 266 -0.0739/-0.0857 0.0203/ 0.0238 -0.4489/-0.4489 0.0798/ 0.0798

0.25 330/ 260 -0.0686/-0.0778 0.0247/ 0.0297 -0.5893/-0.5893 0.0787/ 0.0787

0.50 330/ 208 -0.1526/-0.2246 0.0378/0.0390 -0.5647/-0.5647 0.3056/ 0.0777

0.75 330/ 227 -0 0000/ 0 0075 0 0026/ 0 0021 0 9500/ 0 0970

0.90 330/ 197 -0.1025/-0.1416 0.0253/ 0.0352 -0.6388/-0.6388 0.1515/ 0.1515

J Points

\ iff Mean Variance Minimum Maximum

2.00 600/458 -0.1169/-0.1447 0.0335/ 0.0387 -0.6388/-0.6388 0.3056/0.1515

4.00 600/ 411 -0 0682/-0 0818 0 0206/ 0 0264 -0 5359/-0 5074 0U.JUJU/ "^OSfi/ 0U.UOOJ 0/iRS

6.00 450/ 289 -0.0448/-0.0555 0.0147/ 0.0196 -0.4723/-0.3813 0.0956/ 0.0956

s Points Mean Variance Minimum Maximum

2.00 550/ 387 -0.1000/-0.1275 0.0287/ 0.0353 -0.6388/-0.6388 0.3056/ 0.1515

6.00 550/ 389 -0 0420/-0 0492 0 01 38/ 0 0175 -0 4Q14/-0 4914 0 ^056/ 0 1 51 5 11.00 550/ 382 -0.0966/-0.1243 0.0291/ 0.0365 -0.5893/-0.5893 0.3056/ 0.1515

R Points Mean Variance Minimum Maximum

1.00 450/ 450 -0.0786/-0.0786 0.0271/ 0.0271 -0.5814/-0.5814 0.0956/ 0.0956

2.00 450/ 383 -0.0787/-0.0927 0.0248/ 0.0277 -0.5811/-0.5811 0.1515/0.1515

5 00 450/ 21

3

-0 0799/-0 1 287 0 021 5/ n 0354 -0 6239/-0 6239 0 7500/ 0 081

8.00 300/ 112 -0.0815/-0.1575 0.0250/ 0.0431 -0.6388/-0.6388 0.3056/ 0.0670

^SPR roints Mean Variance Minimum Maximum

0.01 165/ 76 0.0089/ 0.0133 0.0069/ 0.0017 -0.1111/-0.0622 0.3056/ 0.1515

0.02 165/ 79 -0.0152/-0.0008 0.0011/ 0.0005 -0.1042/-0.0617 0.0426/ 0.0402

0.05 165/ 85 -0.0084/-0.0003 0.0007/ 0.0006 -0.1044/-0.1044 0.0798/ 0.0798

0.10 165/ 92 -0.0123/-0.0106 0.0018/ 0.0029 -0.2889/-0.2889 0.0787/ 0.0787

0.20 165/ 100 -0.0257/-0.0292 0.0056/ 0.0087 -0.4051/-0.4051 0.0777/ 0.0777

0.50 165/ 120 -0.0745/-0.0856 0.0159/ 0.0203 -0.5105/-0.5105 0.0956/ 0.0956

1.00 165/ 131 -0.1288/-0.1389 0.0272/ 0.0320 -0.5644/-0.5644 0.0771/ 0.0771

2.00 165/ 147 -0.1721/-0.1691 0.0390/ 0.0422 -0.5893/-0.5893 0.0805/ 0.0805

5.00 165/ 163 -0.1876/-0.1840 0.0466/ 0.0461 -0.6388/-0.6388 0.0828/ 0.0828

10.00 165/ 165 -0.1797/-0.1797 0.0445/ 0.0445 -0.5898/-0.5898 0.0819/ 0.0819

Table V-1. Relative Error statistics for W^^p^j , for both all p/p < .90

.

111
p Points Mean Variance Minimum Maximum — 1650/1158 -0.0621/~0.0656 0.0248/ 0.0346 -0.5974/-0.5974 0.4989/ 0.4989

PSPR Points Mean Variance Minimum Maximum

0.10 330/ 266 -0.0367/-0.0325 0.0188/ 0.0227 -0.5974/-0.5974 0.3547/ 0.3547

0.25 330/ 260 -0.0299/-0.0247 0.0241/ 0.0298 -0.5810/-0.5810 0.4402/ 0.4402

0.50 330/ 208 -0.0899/-0.1105 0.0239/ 0.0358 -0.5930/-0.5930 0.3320/ 0.3320

0.75 330/ 227 -0.0604/-0.0634 0.0266/ 0.0382 -0.5774/-0.5774 0.4989/ 0.4989

0.90 330/ 197 -0.0936/-0.1194 0.0275/ 0.0436 -0.5916/-0.5916 0.4262/ 0.4262

J Points Mean Variance Minimum Maximum

2.00 600/ 458 -0.1116/-0.1206 0.0370/ 0.0480 -0.5974/-0.5974 0.3547/ 0.3547

4.00 600/ 411 -0.0367/-0.0378 0.0187/ 0.0267 -0.3979/-0.3979 0.4989/ 0.4989

6.00 450/ 289 -0.0299/-0.0178 0.0118/ 0.0166 -0.3018/-0.3018 0.4262/ 0.4262

s Points Mean Variance Minimum Maximum

2.00 550/ 387 -0.0518/-0.0515 0.0265/ 0.0368 -0.5811/-0.5811 0.4262/ 0.4262

6.00 550/ 389 -0.065 1/-0.0688 0.0235/ 0.0327 -0.5930/-0.5930 0.4072/ 0.4072

11.00 550/ 382 -0.0693/-0.0766 0.0244/ 0.0342 -0.5974/-0.5974 0.4989/ 0.4989

R Points Mean

• Variance

• Minmium Maximum

1.00 450/ 450 A lea/ A T c c -0.1553/-0.1553 A A/1A1 / A AHA1 0.0401/ 0.0401 A cc\n A / A Cdn A -0.5974/-0.5974 A / A '>'7T A 0.3714/ 0.3714

2.00 450/ 383 -0.0767/-0.0738 0.0172/ 0.0201 -0.3964/-0.3964 0.3759/ 0.3759

5.00 450/ 213 -0.0055/ 0.0462 0.0100/ 0.0142 -0.2500/-0.2500 0.4262/ 0.4262

8.00 300/ 112 0.0147/ 0.1103 0.0117/ 0.0140 -0.0946/-0.0730 0.4989/ 0.4989

"sPR Points Mean Variance Minimum Maximum

0.01 165/ 76 -0.1575/-0.2698 0.0208/ 0.0209 -0.5974/-0.5974 -0.0308/-0.0549

0.02 165/ 79 -0.1517/-0.2512 0.0223/ 0.0268 -0.5811/-0.5811 0.1923/ 0.1923

0.05 165/ 85 -0.1346/-0.2062 0.0283/ 0.0432 -0.5797/-0.5797 0.4110/ 0.4110

0.10 165/ 92 -0.1225/-0.1717 0.0278/ 0.0438 -0.5930/-0.5930 0.3184/ 0.3184

0.20 165/ 100 -0.1049/-0.1359 0.0279/ 0.0428 -0.5916/-0.5916 0.3126/ 0.3126

0.50 165/ 120 -0.0590/-0.0623 0.0215/ 0.0288 -0.5223/-0.5223 0.4072/ 0.4072

1.00 165/ 131 -0.0067/ 0.0001 0.0115/ 0.0137 -0.3395/-0.3395 0.4989/ 0.4989

2.00 165/ 147 0.0395/ 0.0443 0.0092/ 0.0094 -0.2571/-0.2571 0.4402/ 0.4402

5.00 165/ 163 0.0567/ 0.0553 0.0083/ 0.0083 -0.1921/-0.1921 0.4262/ 0.4262

10.00 165/ 165 0.0197/ 0.0197 0.0097/ 0.0097 -0.5172/-0.5172 0.3759/ 0.3759

Table V-2. Relative Error statistics for W^p^ , for both all p/p < .90 .

112
113

while the SPR shows a decreasing error for increasing R. For increasing u^pj^, the CPU shows an

increasing error, while the SPR first shows a decreasing error and then as u^pj^ gets large, it tends

to increase. Therefore, the wait time performance measure exhibits the greatest sensitivity of all

the performance measures. Although wait time possesses the lowest mean relative error, it also

possesses the highest variance, and demonstrates sensitivity to all parameters. This is reasonable

to expect since the wait time is a function of the other two performance measures and, therefore,

compounds their errors. In this case the variance was amplified while the mean was attenuated.

The interpretation of (16) implies that by increasing the processing rate of the SPR by Psp^/R

for each additional ICS in the resultant expanded system, the mean response time would be

preserved when compared to diat prior to the expansion. It is noted that p^pj^ < 1 and, therefore,

Pgpj^/R < 1. This means that the incremental increase in SPR processing rate (per additional ICS),

Pgpj^/R, is only a fractional increase. This is a significant improvement over the upper bound

derived in the previous section. In fact this is an improvement over the incremental increase of

unity conjectured in the preceding section.

The unity increase in processing rate is quite intuitively appealing. For each additional ICS

added, the SPR processing rate should increase by 1/R from the current processing rate. The

newly derived incemental increase of Pgp^/R seems intuitively correct. Condider the fact p^pj^

represents the current total traffic intensity to the SPR, Pspr/R represents the portion of that

traffic intensity generated by an ICS. Utilizing this perspective of traffic intensity, this fractional

increase seems more credible. Since each ICS generates traffic proportional to Pspr/R' ^^ch

additional ICS would genarate additional traffic also proportional to Pspr/^.- Therefore, if the

processing rate of the SPR is increased by that fractional increase in traffic, the response time

should not increase.

There is an additional implication to diis ft-actional increase in SPR processing rate,

proportional to the increase in ICSs. A system of this class may undergo one or more modular

expansions, encompassing a large increase in the number of ICSs. The extent of expansion will in

general be limited technically by the maximum attainable processing rate of the SPR, which is

dependent, for the most part, on the existing technology for that type of device. The processing

115
rate of applicable devices will generally span several orders of magnitude and may include a number of different technologies. Therefore, depending on a fractional processing rate increase,

rather than a unity or greater increase, will allow a given technology to support a larger range of

expansion. This minimizes, or at least delays, the implementaion and investment risk of changing

device technology in a given system. Additionally it will also allow for a far greater maximum

expansion range, since the overall existing technology limit will be approached at a much slower

rate.

C. Applications

Two examples of the SPR architecture are presented to illustrate the utility of the

approximate SCS model. The first example is a complex of multiple minicomputers linked to a common shared secondary memory subsystem by a local area network (LAN). This is applicable

to engineering and scientific envirormients. The second example is a point-of-sales (POS)

application. This is applicable to grocery and department stores, and has a direct analogy to

certain office automation envirormients.

Example 1

Suppose The current processing system of a technical organization consists of 2

minicomputers (ICSs); each has an average multiprogramming level of eight, and both share a common secondary storage subsystem. The minicomputers are identical and each has a CPU and

the same complement of four peripheral devices (PPU). These PPUs consist of (1) an input card

reader (CR), (2) an output line printer (LP), (3) a private local disk (disk), and (4) a set of

interactive devices (TTY).

116
operationally, each ICS functions independently, processing both batch and interactive jobs.

The composition of both types ofjobs is the same, so no distinction between them is necessary. The set of interactive devices, as a set, has been characterized as a single device with an

exponential service time distribution. Therefore, we may aggregate these interactive devices and

represent them as a single device in our model. The local disk has two functions, (1) The system

software resides there, and (2) during processing of a job it acts as a cache between the ICS and

the SPR.

The jobs exhibits an exponential service time distribution at each device. The CPU mean

service time of a job is 25 msec, which in the SCS model is normalized to 1. For each device the mean service time, its corresponding normalized \'alue, and its estimated transition probabilities

are as follows:

mean normalized estimated

service service transition

time time propabilities

^SPR~ 100 msec Uq= .25 Pq= .25 Uq)^j= 25 msec U]^= 1.0 p^= .05

"disk = 25 msec Uj^ 1.0 P2= -45 Ujjy=2.5sec U3= .01 P3= .05

Ujj, = 250 msec u^^ .10 .10 "CR ~ 250msec u^^ .10 .05

The installation is about to be modified. The organization is expanding and has determined a

requirement to expand the processing complex by eightfold. They have decided to implement a

local area network (LAN ) which will allow interactive device access to the central processing

complex from the desk of each employee. The bandwidth of the LAN is sufficiently high so that

it will not be a bottleneck or cause any significant delay, therefore, the LAN may be neglected in

our analysis. Due to existing software investment and staff familarity, the organization plans to

retain the existing two minicomputers and modularly expand by adding identical ones as required.

The shared common secondar>' storage subsystem has been very successful for sharing, rather

than duplicating, programs and data bases as well as providing an effective electronic mail system.

Therefore, the retention and expansion of this faciUty is also planned. The organization is

117
expected to grow over the next two years and the modular expansion of the processing facilities is

planned to coincide. The maximum planned processing expansion is for a complex of 16

minicomputers. Two minicomputers are currently being acquired to bring the complex to 4

minicomputers.

The current SPR does not have sufficient speed or capacity to handle the planned expansion.

It is desired to size the SPR so that its current mean response time is maintained. In addition,

there is potential for additional future organizational growth, which may result in a further

processing expansion to 32 minicomputers. This potential growth is 5 to 8 years away and no

definite planning is currently being done. It is desired to know if the SPR sized for the 16 ICS

system will be able to adequately service a 32 ICS system, and if not, is there one that will.

To determine the approximate job flow rate and traffic intensity of the current system we

solve (7) of chapter IV using the BIN algorithm and the system parameters listed above. These

values are then used to obtain the current approximate mean SPR response time by applying (13),

This results in pgpj^ = .3508 andW5pj^= 6.16. Repeating this procedure for the 4 ICS

configuration results in Wgpj^ = 13.2 . Similarly, the planned 16 ICS configuration yields Wgpj^ = 475, and the hypothesized 32 ICS configuration yields Wgpj^ = 992. Applying (14) and (16),

using the previously computed value of p^pj^ we obtain the /S's ft-om which the processing rate of

an SPR for each configuration is computed to be: m = 1-35

^(16) = 3.46 , and

iS(32) = 6.26

Processing rates for various secondary storage technologies [HOAGLA 79, TOOMBS 78,

WARNAR 79] indicate that an SPR subsystem using existing rotating disk technology can support

a 16 ICS configuration. This same SPR subsystem cannot adequately support a 32 ICS

configuration, although a faster SPR subsystem using this same technology can support a 32 ICS

configuration.

"sPR ^ ~ ••^•^^ "^^ ^^^^

^SPR ^^^^ ~ -^^^ ^^^^

Unpj^ (32) = 1.57 «- 16 msec

118
Example 2

For the second example a POS environment is considered. POS can generally be described as many small independent processors, each processing a single job, and accessing a shared inventory

data base subsystem (IDBS). The inventory data base may be implemented in several different

configurations. One is a distributed configuration, where each geographically distinct

organizational unit has its own local IDBS, which is shared among its own POS stations. Another

configuration is a centralized one, where a single IDBS is located at a single site and is shared by

all the POS stations. There are of course a spectrum of configurations in between these two

extremes. The centralized configuration requires additional communication faciUties fi-om the IDBS central site to each of the geographically distinct organizational units.

Structurally each POS station consists of a processor and a number of local I/O devices.

These I/O devices may include any of the following typical devices; (1) a digital display or two, (2)

a printer for a sales receipt, (3) an input scanner, (4) an input alphanumeric keyboard, and (5) an

auxiliary input device, for instance a scale.

A normal transaction consists of one or more human interactions to enter data through the

I/O devices. The station processor, once it accepts the data, requests service from the IDBS to

process this data. This request is serviced on a FCFS basis by the IDBS with an exponentially

distributed service time. Any time devoted to communication between a POS station and the

IDBS will be incorporated into the IDBS service time. It is assumed that the communication

subsystem is not a bottleneck and, therefore, this time may be accounted for by increasing the mean processing time of the IDBS. The processed data is returned to the POS station, which has

been idle while waiting, and it is then displayed. The cycle is then repeated.

There is only a single job at each station and the station processor is fast enough to service all

of its requests and manage all of its devices. Due to the nature of service requests the service time

of the station processor is generally constant for local operations, while the human interaction

through the devices is random and is assumed to be exponentially distributed. For a single job

there is no need to model each device within a station separately since there is no contention for

119
devices. Also, since the station processor has essentially a constant service time and is not a

bottleneck, the mean time of the human interaction distribution can be increased to account for it.

Therefore, it is assumed that all of these devices and the station processor can logically be thought

of as a single device with an exponentially distributed service time. A feedback loop to the POS

station provides for error conditions that arise, which mainly occur when entering data.

The processing rate of the POS station is normalized to 1. Each transaction requires one or

more service requests at the POS station followed by a single service request to the IDBS. Each

additional service request to the POS station represents a re-entry of data which was required by

an error on the previous attempt. The response as seen by the user is strictly a local one.

Therefore, the only time the IDBS affects the response time is when the data entry was successful.

Based on this descriptive model, an acceptable response time is on the order of 1/4 sec. The POS

mean processing time is 1 sec. Therefore, IDBSs which have processing rates many times faster

than the POS station must be considered. The range of potential IDBS processing rates is 5 to

2000 times faster than the POS station. At 2000 times faster, the IDBS would require a mean

processing time of .5 msec. This represents the upper limit of current secondary storage

subsystem technology [HOAGLA 79, TOOMBS 78, WARNAR 79], especially if a communication

subsystem is involved.

The jobs have an exponential service time at each device. The POS station mean service time

of a job is 1 sec. For this model the mean service times and their estimated transition

probabilities are as follows:

estimated

transition probabiUties

PlDBS=

Ppos=

It is desired to size the IDBS for the two configurations under consideration. The first

configuration being considered is a distributed configuration supporting 20 POS stations. The

second configuration is a centralized one supporting 1000 POS stations.

mean

service

time

"IDBSJ 5-2000

"pos~ '-

120
To determine the approximate job flow rate and traffic intensity of a 20 POS station

configuration we solve (7) of chapter IV using the BIN algorithm and the system parameters listed

above. These values are then used to obtain the corresponding approximate mean IDBS

response time by applying (13). This results in Pj£,bs =.6797 and Wjj^g^ = .250 for

Ujj)g3(20) = 12.5. Applying (14) and (16), using the previously computed value of pj^gg we

obtain the from which the processing rate of an IDBS to suppon a 1000 POS station

configuration is Uj^gg (1000 ) = Ujj^g^ = 428.9.

The local 20 POS station configuration requires a Ujj^gg = 80 msec, which is a reasonable

speed for disk technology. The 1000 POS station configuration requires a Uj^g^^ 2.33 msec. For

this configuration the IDBS is remotely located and at this speed the communications delay,

although not a bottleneck, must be accounted for. This communications delay has been measured

to be .75 msec, resulting in a IDBS with a mean processing time of 1.58 msec. This speed exceeds

the current capability of disk technology, but can be met using magnetic bubble technology.

An analysis of a modular expansion was performed using both models. One of the key design

aspects is the effect on performance due to a modular expansion, or conversely, the amount of

increased capability required by the shared resource to continue to deliver some threshold amount

of performance. The exact model yielded only an lower bound for the incremental increase in the

SPR processing rate required to maintain system response time. This lower bound was too high

to be of any practical use.

The analysis of the approximate model yielded a useful and intuitively satisfying relation

between the addition of ICSs and the incremental increase in SPR processing rate required to

maintain system response time. It indicated that for each ICS added to expand the system, the

required increase in incremental SPR processing rate was directly related to the incremental traffic

intensity caused by each additional ICS. The implication is that, for example, by doubling the

number of ICSs, an increase in the SPR processing rate of < 2 is required to maintain system

response time, since the traffic intensity for a stable system is always < 1. This result is verified

when compared to values predicted by the exact model. This result will be useful to designers

and analysts when they consider building new systems or augmenting existing systems which are

based on this class of architecture. Two examples illustrating the utility of the approximate model

were presented.

121
VI. SUMMARY AND RECOMMENDATIONS

A. Summary

The basis of resource sharing and its application to computer architecture has been discussedSome examples of architectures that support resource sharing were provided, and many more will

be constructed. It was our intention to investigate the performance of this class of computer

architecture which shares a single processing resource among multiple independent computing

systems through the use of analytic queueing models

Utilizing multi-class queueing network theory and the structure of this class of computer

architecture a specific queueing network model was developed. Two efficient computational

algorithms, SOP and FAC, were presented which could be used to evaluate the performance

measures of this model. Previously the evaluation of queueing network models required

memory-space and time complexity both growing exponentially with the size of the state-space, 0[

(Jj+ 1)^ ]. The algorithms developed here to evaluate the model require a memory-space which

grows linearly, 0[ R(Jj 4- 1) ], with the size of the state-space, although the time complexity still

grows exponentially. This provides the designer and analyst the ability to evaluate this model

when it has a large state-space if he or she is willing to invest the computation time. Whereas,

previously it may not have been possible to evaluate this model due to memory-space limitations.

Although the algorithms to evaluate this exact queueing network model are memory-space

efficient, they are still of exponential time complexity. This computational complexity limits the

utility of the model, as is generally the case for other multi-class queueing network models. In an

attempt to overcome this computational limitation, an approximate queueing model was

introduced. This approximate model consists of a set of independent M/M/1 single server

queues. The solution technique is based on approximating the job flow rate between these

queues. An efficient algorithm, predicated on a binary search technique, was presented to

evaluate the performance measures of this approximate model. The development and solution

form presented apply to balanced as well as unbalanced systems. The solution algorithm and the

error analysis considered only balanced systems

122
To determine the utility of this approximate model a comparison of results between it and the

exact model was made. A random sample space of the input parameters for these models was

generated, and the corresponding performance measures evaluated. The performance measures

predicted by this approximate model do result in a varying error, which is considered to be within

acceptable engineering limits. The efficiency gained in evaluation of the performance measures is,

for most applications, thought to be an acceptable compromise for the error incurred. For

situations with extremely large state-spaces, it may be the only analysis method possible. As a

result, designers and analysts are provided the capability to use the approximate model to obtain

estimates of the performance of a large number of system confiurations in a very short period of

time. Once a small number ofcandidate configurations are culled, the exact model may be

applied to obtain more accurate performance predictions.

An analysis of a modular expansion was performed using both models. One of the key design

aspects is the effect on performance due to a modular expansion, or conversely, the amount of

increased capability required by the shared resource to continue to deliver some threshold amount

of performance. The exact model yielded only a lower bound for the incremental increase in the SPR processing rate required to maintain system response time. This lower bound was too hi^

to be of any practical use.

The analysis of the approximate model yielded a useful and intuitively satisfying relation

between the addition of ICSs and the incremental increase in SPR processing rate required to

maintain system response time. It indicated that for each ICS added to expand the system, the

required increase in incremental SPR processing rate was directly related to the incremental traffic

intensity caused by each additional ICS. The implication is that, for example, by doubling the

number of ICSs, an increase in the SPR processing rate of < 2 is required to maintain system

response time, since the traffic intensity for a stable system is always < 1. This result is verified

when compared to values predicted by the exact model. This result will be useful to designers

and analysts when they consider building new systems or augmenting existing systems which are

based on this class of architecture. Two examples illustrating the utility of the approximate model

were presented.

123
B. Research Extensions

We have stated that our position in accepting this M/M/1 approximation was that it

"tracked" the performance measures predicted by the exact models, although the values predicted

were in error by a varying degree. Similar approximate models based on other independent

queueing systems or a mix of different systems may provide a better "fit" than the M/M/1. The

M/M/1 system was chosen because the simplicity of its mathematical formulation provides both

an expression diat yields insight and one that allows manipulation for analysis.

To provide insight to the designer and analyst as to the error incurred when they apply this

approximation an error analysis was presented. This analysis was meant to indicate parameter

sensitivity and trends. It was not an elaborate analysis, nor were the results conclusive. Further

work is needed to characterize the error incurred over a wider range of the parameter values,

especially the job allocation vector, J, and the number of ICSs, R.

The BIN algorithm presented in chapter IV, provided an efficient solution to the approximate

model when the system is balanced (identical ICSs). Additional work is needed to establish an

efficient algorithm for the general case of an unbalanced system, because this system requires

solution of a set of simultaneous nonlinear equations. Existing solution techniques should be

investigated, including converging iterative ones as is the BIN algorithm. Also, a similar error

analysis should be done to determine if an unbalanced system results in different accuracy

patterns or is any differently parameter sensitized than a balanced system.

In certain situations the error incurred by using the M/M/1 approximation is not satisfactory.

The alternative is to utilize the exact model, but the computation time required may be excessive.

Similar models, based on other queueing systems may provide results with a lower error tolerance

and less variation. It would be useful to formulate efficient solution algorithms and perform

similar error analyses for them, as was done for the M/M/1 approximation. Assuming these other

approximations yield values significantly closer to the exact values, the results of a modular

expansion analysis would be useful. The results of this analysis would be interesting to compare

to the results obtained from the M/M/1 approximation.

124
A greatest lower bound for the exact model should be pursued. The one established here is

too high to be of any practical value. A value of unity was conjectured for the exact model, but

not proven, in this dissertation. Proving either this conjecture or the fractional bound (p),

established through the analysis of these approximate models, is a useful endeavor.

There are other research areas that may be pursued based on these modeling techniques.

One is formulation of more efficient exact and approximate models for architectures with multiple

SPRs. These models would be especially applicable to architectures incorporating a LAN

allowing high speed access to multiple shared subsystems.

Another research direction would be to establish non-exponential approximate models.

These could be based on M/G/1 servers or M/G/l/K servers. The utility of these models could

be established by comparing their predictions to those of Shum's EPF model [SHUM 76,

SHUM 77]. The EPF model is an approximation based on a queueing network formulation, in

which the product terms are replaced by terms representing M/G/l/K servers. The computation

time and memory-space complexity of the EPF model are equivalent to those of general queueing

network theory. An approximate non-exponential model of time and space complexity

comparable to that of the approximate SCS model would be useful.

125
APPENDIX A

Review of Balance Equations for Queueing Networks

1. The Single Server Queue

To understand the balance, or flow equations we shall start with a simple single server queue.

Assume the service time distribution is exponential, with mean u , and assume the arrival process

is Poisson (i.e. has exponentially distributed interarrival intervals), with mean a . Let the

probability of n jobs in the queue at time t be

Pr[n(t)] = Pr[X(t) = n], t>0 ,

where X(t) is a random variable and n is the state of the system, which is the number ofjobs in the

queue (including any being serviced). Let us also assume that in a small time interval, At, at most

only one event can occur. Therefore, the state probability balance equation is

Pr[n(t+ At)] = Pr[n(t)] Pr[no arrv. + no departures in At / n at t] + Pr[n(t)-1] Pr[l arrv. + no departures in At / n-1 at t] + Pr[n(t)+ 1] Pr[no arrv. + 1 departure in At / n+ 1 at t] + Pr[At^]

2 where Pr[At ] is the collective probability that more than one event occurs during At. We

2 make At is small enough so that this probability is essentially zero, Pr[At ] = 0.

Since the arrival and departure processes are exponential (i.e. memoryless), we are able to

remove the conditions in the above equation which yields

Pr[n(t+ At)] = Pr[n(t)] Pr[no arrv. + no departures in At]

(1) + Pr[n(t)-1] Pr[l arrv. + no departures in At]

+ Pr[n(t)+ 1] Pr[no arrv. + 1 departure in At]

126
By definition the probability of each process occuring is

Pr[an arrival occurs in At] = 1 - e^ ^"^^^

, and

Pr[a departure occurs in At] = 1 - e^ "'^^^

.

Expanding the exponential by an infinite series and truncating after the second term yields

2 3 (aAt) (a At)

-aAt

e = 1 - aAt + - + ... _ 1 - aAt . 2 ! 3 !

This truncation may occur since for small At, At^ «At , and as At approaches zero in the limit, At^

approaches zero much more rapidly. Therefore, all the higher order terms are negligible

compared to the first order term. Substituting this back into the probability definitions we obtain

the following approximations

Pr[an arrival occurs in At] ^ aAt , and

Pr[a departure occurs in At} ^ uAt

and conversely

Pr[no arrivals occur in At] ^ 1 - aAt , and

Pr[no departures occur in At] 1-uAt.

Noting that the arrival and departure processes are independent of each other allows us to

express their joint probability as a product of the two probabilities, which as above may be

approximated by the first order term, as

Pr[no arriv. + no departures in At] = (1-aAt) (1-uAt) = 1 - aAt - uAt +au(At)^ ^ l-(a + u)At

Applying this truncation again allows us to express the following probabilities as

Pr[l arriv. + no departures in At] = aAt (1-uAt) = aAt - aAt(At)^ _ aAt , and

127
Pr[no arriv. + 1 departure in At] = (1-aAt) uAt

= uAt - au(At)^ _ uAt

Substituting these results into equation (1) yields

(2) Pr[n(t+At)] = Pr[n(t)] (l-(a + u)At) + Pr[n(t)-1] aAt + Pr[n(t) + 1] uAt

Assuming an infinite size queue and, therefore, no upper limit on the number ofjobs, a lower

limit must still be considered since it is physically impossible to have less than an empty queue.

This results in the following boundary equation for an empty queue (i.e. state = "0")

(3) Pr[0(t+At)] = Pr[0(t)] (1-aAt) + Pr[l(t)] uAt .

When the queue is empty no departures can occur and there exists no state = "-1".

Rearranging equations (2) and (3) algebraically yields

Pr[n(t+At)] = Pr[n(t) + l]uAt-Pr[n(t)](a+u)At + Pr[n(t)-l]aAt + Pr[n(t)] , and

Pr[0(t+ At)] = Pr[l(t)] uAt - Pr[0(t)] aAt + Pr[0(t)]

Then dividing by At and taking At to its limit results in

Pr[n(t+At)]-Pr[n(t)]

(4) lim = Pr[n(t) + l]u - Pr[n(t)] (a+u) + Pr[n(t)-1] a , and

At^O At

Pr[0(t+At)]-Pr[0(t)]

(5) lim = Pr[l(i)] u - Pr[0(t)]a

At-^0 At

Note diat these equations are the derivatives (Pr'[n], etc.) of the state probabilities (that is, the

state probabilistic rate of change). Assuming a stationary distribution implies

Pr[n(t)] = Pr[n]

The average rate of change must be zero, or an infinite accumulation in some state might

occur. Therefore, equations (4) and (5) are assumed to be identically zero, resulting in

128
Pr'[n] = 0 = Pr[n + 1] u - Pr[n] (a+u) + Pr[n-1] a , and

Pr'[0] = 0 = Pr[l] u - Pr[0] a

By rearranging these equations we obtain

(6) Pr[n] (a+u) = Pr[n + 1] u + Pr[n-1] a , and

(7) Pr[0] a = Pr[l] u

From studying these equations we realize that the left side is the (flow) rate out of a state, while

the right side is the rate into that state. Therefore, these equations represent the balance of flow

between states, hence the term balance (or flow) equations.

2. Open and Closed Queueing Networks

To obtain the balance equations for a network of queues (i.e. a Jacksonian network [JACKSO

63]) the same basic procedures are necessary. We now have an additional problem of many

independent queues connected to each other. This changes our scalar state n for one queue, to a

vector N = (nQ , ... , n^) to account for each of the s + 1 queues. The state equilibrium probability

distribution becomes

Pr[N] =Pr[no, ... , nj

where

K = 2 n. i=0

and nj is the number ofjobs in the i-th queue, and K is the total number ofjobs in the network.

Similarly, the mean arrival and departure rates become vectors also, one element for each queue,

a^ and Uj. To specify how these queues are connected, we use constant transition probabilities to

indicate the flow (transition) of one job from queue j to queue i, pj j. Without proceeding through

129
the tedious algebra (as in the previous section) we may write [JACKSO 63] the left side as

(I a. +\ u.y{n.) ) Pr[N]

i=0 i=0

where

0 , n. <0

y(ni) = {

1 , ni>0

Note that the extra factor y(n-) is equivalent to accounting for our "less than empty" boundary

conditions, since some queues may be empty while others are not. The right side is a little more

complex. We are looking for all the ways to reach die destination state N through a single

transition from a source state, N'. Any queue i may receive a job from any other queue j,

therefore, the source state must be of the form N' = (Hq, ... ,nj + l, ... , n^-l, ... .n^). All possible

combinations of source states of this form must be accounted for on the right side of the equation,

which yeilds

s s 2 s Uj y(n.) Pj jPr[no, ... , n^ + l, ... , n-l, ... , nj

j=0 i=0

s + 1 a. y(n.) Prfn^, ... , n^-l, ... , nj

1=0

These portions yield the following for an open queueing network with exponential service and

interarrival times, and an infinite queueing capacity [JACKSO 63]:

(8) [(i a,) + (s u.y{n.))] Pr[no, ... , nj

i = 0 i = 0

s s = [ 2 s u.p.^ y(n.) Pr[nQ, ... ,n. + l, ... , n^-l, ... , nj

1=0 j=0

s + [ I aj y{n.) PTin^, ... , n-1, ... , nj ] i=0

130
For a closed queueing network with a constant number of jobs, K, continually circulating

[GORDON 67] there is no arrival process, which implies a- =0, for all i. The resulting equation

is

(9) [ 2 Ujy(n.)] Pr[no, ... , n

J

i=0

s s = E z UjPj.y(nj)Pr[nQ, ... ,n: + l, ... ,n.-l, ... . i=0 j=0

It should be noted that our approach to arrive at equations (8) and (9) was an intuitive extension

of equations (6) and (7), the balance equations for a single server queue. A more rigorous

approach would require a procedure similar to that from which equations (6) and (7) were

derived [JACKSO 57, JACKSO 63, GORDON 67].

The solution to these equations is based on assuming a product form solution [GORDON 67]

of the form

(10a) Pr[no, ... , nj = 1 G(K)

(10b) Pr[no, ... ,n. + l, ... , n.-l,

where G(K) is a probability normalization factor and the Xj,'s are unknowns whose solution

must be obtained. Substituting the solution form of (10) back into (9) yields

s s s s s 2 U; y(n.) L n x^^^ = [ l 2 Uj Pj - y(n.) Xj. ] 1 0 x^"^

i=0 G(K) k=0 i=0 j=0 ' x. G(K) k=0

The term on the right-hand side of the equation, outside the brackets, is always non zero and

is a term common to both sides. This term is not dependent on the indices i or j and, therefore,

may be manipulated without effecting the summations. Extracting and cancelling this term results

in

n Xj^ , and

k=0

G(K) k-0

131
s2 u- y(n.)

i=0

s s 2 2

i=0 j=0

Uj Pj i y{n.) —

Further extracting the common term y(nj) yields

s s X- (11) 2 y(n^) [ u. - 2 Uj p. . — ] = 0

i = 0 j = 0

' XThe next step in the solution of this closed queueing network is based on the fact that at any time

it is possible for all but one queue to be empty. Let this single non-empty queue be the k-th

queue. In this case

0 , i^k

yin,) = {

1 , i = k

Hence, (11) is reduced to

Uj - 2 Uj Pj- — =0 , for i = 0, ... ,s j=0 ' X.

By rearranging the above the following results are obtained:

s X-Uj - 2 XjU. Pj . =0

Letting e- = Xj Uj ; then

(12) e.=2 ejPj.

j=0

132
which is the vector equation E = E[P], where the vector E = (Cq, ... , e^) and the matrix [P] = [p^ .]. The Cj's are usually called the relative visist frequencies. Finally we can solve for the probability

normalization factor, by using the fact that the probabilities must sum to unity. Hence, from (10) we may formulate

s 2 Pr[no , . .. , nj =1 = 1 i: n x^' N G(K) N i=o

Therefore,

s

(13) G(K) = S n Xj"^ . N i=0

where the summation over N implies all non-negative solutions to the equation

s2 nj = K

i=0

See [KLIENR 76], pg216.

In summary, the state equilibrium probabilities can be obtained from the following

s

Pr[nQ, ... ,nj = 1 11 x"' , where

G(K) i=0

s G(K) =2 n X N i=0

3. The Central Server Model

A simple, nontrival case of a closed queueing network is called the Cenu-al Server Model [BUZEN

71]. A diagram of this model is shown in figure A-1 and the corresponding transition probability

133
134
Po,o Po,i Po,2 Po,s

1 0 0 0

1 0

•

0 0

•

1

•

•0

•

0

•

• •0

urcA-2. Central Server model transition probability matrix.

135
matrix is structured as shown in figure A-2. This results in a simple solution to (12), which

consists of s+ 1 simultaneous equations with s+ 1 unknowns. In this case there are only s

independent equations. Therefore, one can solve all these equations in terms of one of the

unknowns, say eg. This does not result in a unique (absolute) solution, but rather a relative

solution. Consequently, any value substituted for eQ will yield a solution satisfying (12).

Therefore, this relative solution is related to the absolute solution by some multiplicative

constant. The relative solution for the Central Server Model is

E =(eo, CqPq -i^, ... , QqPqJ)

Note that the first subscript (j) of the Pj .'s denotes the source of the transition. There is only a

single source in this model, the central server. Therefore, this subscript may be dropped since it is

implied, resulting in

E= (eg, egPi, ... , egp^)

Letting Xq=1, which then implies eQ=UQXQ=UQ results in

and

UqPi UqP^

X = (l, , ... , ) .

The structure of the central server model results in a simple solution to (12). The evaluation

of (13), although straightforward, requires a summation over a state-space whose size increases

s exponentially, 0[ (K + 1) ]. Buzen [BUZEN 71] developed an iterative method for evaluating

s (13) has requires a computational complexity 0[ Ks ], vs. 0[ (K + 1) ]. This method is based on

an recursive partitioning technique. Define the following auxiliary function

j

(14) g(m,j) = X n x^"'

j i=0

2 nj=m

i=0

136
Note that when m = K and j = s, then G(K)=:g(K,s). By partitioning g(m,j) based on the

occupancy of the last queue, j, being either empty or not, yields

j-l j

(15) g(m,j) = s n X."* + X. 2 n X."* = g(m,j-l) + x^ g(m-l,j) , j-l i=0 j i=0

2nj=m 2nj=m-l

i=0 i=0

with the following boundary conditions

g(Oj)=l , 0<j<s

g(k,0)=Xo'' , 0<k<K.

Equation (14) can be evaluated for any values of m and j using the boundary conditions above, or

any other. By conceptualizing g(m,j) as a matrix, Buzen presents an efficient iterative algorithm

for evaluating (14). As a result, the normalization constant (13) and expressions based on it can be

evaluated much more efficiently than was previously possible.

Buzen also derived expressions for some performance measures which are based on a similar

product form structure and, therefore, may be efficiently evaluated by the above iterative

technique. These performance measures include the device busy probabilities and the mean

queue length for the central server model. The device busy probability, Aj, is the probability that

the j -til queue is not empty and can be expressed as

A= 2 Pr[no, ... ,nj =2 [ U x^']

s G(K) 1=0

2 n- = K Onj>l)

2 n X: NOnj>l) G(K) s i=0

i=0

2 nj = K-l

i=0

G(K)

G(K-l)

137
To derive the mean queue length of the j-th queue, Qj, first define Rpi) as the probability

that the j-th queue has k or more jobs (i.e. nj>k-l), expressed as

s s

Rj(k) =2 Pr[no, ... ,nj =l [ L n x.">] = s U x"' N(3nj>k) s G(K) i=0 G(K) s i=0

I n. = K Onj>k) 2 n. = K-k

i=0 i=0

Hence,

R/k) = G(K-k)

G(K)

Note that Rj(0)=l, Rj(l) = Aj, Rj(K + l) = 0, and the probabiUty that the j-th queue has

exactly k jobs is Rj(k)-Rj(k+1). Therefore, the mean queue length is

K K K

Qj = 1 k[ Rj(k)-Rj(k+1)] = 2 k Rj(k) - 2 kRj(k+l)

k=l k=l k^l

K K = 2 k Rj(k) -

[ 2 (k-1) Rj(k) +KRj(K + l)]

k=l k=l

K K

Rj(l) + 2 k Rj(k) - 2 (k-1) Rj(k)

k=2 k=2

K

Rj(l) + 2 [k-(k-l)] Rj(k)

k=^2

2 Rj(k)

k = l

K x-^ G(K-k)

2

k=:l G(K)

138
4. Closed Queueing Networks with Multiple Job Classes

Basket eL al. [BASKET 75] have extended the theory of queueing networks to include

multiple classes ofjobs, with other than exponential service time probability distributions. This

extended model is based on expanding the state description, the state transition probabilities, and

the mean service rates to include class distinction. Defme the following (Note: these definitions

differ somewhat from those used in the rest of this dissertation, see Appendix C, but they conform

to the definitions generally associated with multi-class queueing network theory);

N = (nQ , ... , n^) is the state-space vector description ; = (No,...,N,) = (\l'-'"0,R' - ' "s,1'-'\r)

J. = number of class r jobs at the i-th service center (both in service and in queue) ;

R

n. = 2 n^j. , the total number ofjobs (of all classes) at the i-th service center ; r=l

Nj = (Hj , ... , nj j^) is the job class distribution at the i-th service center ;

s ' s R

K =1 n- = s 2 n-j., the total number ofjobs in the network ; i=0 i=0 r=l

J = (J-i^ , ... , Jj^) is the job class allocation vector for the network ;

Jj. = the maximum number ofjobs that can be allocated to the r-th class ,

s = 2

J. is the total number of class r jobs in the network ; i=0

u^j. = the mean service rate of a class r job at the i-th service center ;

p. ^ = the probability of a class r job at the i-th service center transiting to the j-th

service center and becoming a class s job ;

R = the number of different job classes in the network

139
The state equilibrium probabilities are assumed to have the form

1 s Pr[no 1

, ... , n^ ^] = n f.(N.) , G(J) i=o

where

the product factors are given by

^ir

! n PS, FCFS, LCFS

n IS : ^=1 \r'-

the normalization constant is given by

G(J) =20 f.(Ni)

N i=0

where the summation over the state-space N means all non negative solutions to

s N. = J i=0

The relative visit frequency, e- j. , is given by the solution to

s R

\r = ^ ^ ^j.t Pj.t;i,r j=0 t = l

140
and the relative load factor, Xj j. , is given by

Buzen's efficient computational procedures have been generalized by Muntz and Wong

[MUNTZ 74], Giammo [GIAMMO 76], and Shum [SHUM 77] for networks with a constant number ofjobs in each of the R classes, specified by the vector J. The efficient iterative solution

technique of (15) for a single class ofjobs is based on a two dimensional conceptualization, jobs (a

scalar) by devices. A direct extension of this two dimensional technique for multiple classes of

jobs requires the substitution of a job class distribution vector for the previous scalar job

specification. Defining an auxiliary function, as in (14), results in

(16) g(M;k) =

kn

i=0

2 Nj=M

i=0

R

Uj! n

r=l

Following a recursive partitioning procedure similar to that used to obtain (15), yields the

following recursive defining relation for the auxiliary function [SHUM 76]

R

(17) g(M;k) = g(M;k-l) + 2 x-^ g(M-d/,k)

r=l

Equation (16) may also be expressed as [MUNTZ 74]

(18) g(M;k) = 2 1 fk(Nj^-M) g(M;k-l)

Vr=o

141
where M is a vector representing a job class distribution such that

M = (m-^ , ... , nij^) , m- = the number of class i jobs ^ nij<Jj

and dj. is a difference vector such that

0 i^T

d^ = (bi, ... ,bR) , bj = { , i=l,...,R . 1 i=r

The boundary conditions for this auxiliary function are

g(0;k) = 1 , 0<k< s , and

g(M;0) = fo( M) , 0<M<J

The probability normalization constant is obtained by summing over the entire state space,

which can be expressed in terms of die auxiliary function as [MUNTZ 74]

h Jr R^s,r ' R '^i.r

•

(19) G(J)= 2 [n,\n {i n njin }]

s,r

2 ; i=0N.=J-N3

= 2 2 [ UK) {g(J-N^;s-l) }]

\l~0 \r~o

g(J;s)

G(J)

142
where

g(No:0) = fo(No)

R

and

r=l

fi(0) =1

This completes the review of the basic equations for current queueing network theory.

The following is provided to demonstrate the details of the partitioning procedure used to

obtain (17). We will only use a two queue system to minimize the length of the presentation,

while still demonstrating the basic concepts. First, we expand the function definition of (16) to

obtain the recursive relation. Then as an alternative approach we expand the right-hand side of

(17) by substituting (18) , and show that the left-hand side of (17) is obtained.

From (16) we obtain

R

g(No;0) = fo(No) =no! n

r = l

R R = S [ (no-1) ! n

r=l t=i (no^-dr)!

Therefore,

R

g(No;0) = 2 Xq^ g(No-d^;0)

r=l

143
From (18), substituting this definition, we also obtain

rrij^ ^ ^Ir ^ ^ '^ir g(M;l) = s ... s {n^in } {s n nj! n _ r=l ni,! 0 i=0 r=l n, ,! "1,1=0 "1,R=0 '^-^ "l,r= " ' = -^ "l,r

i=0

= S ... X fi(Ni) g(M-Ni;0)

"1,1=0 "l,R=0

and

rrij.- 1 = 2 2 2

"1.1=0 "l,r = 0 "l,R = (

= S .. 2 2

"1,1=0 "l,r=l "1,R=0

= 2 ... 2 ... 2

"1,1 = 0 "l,r=l "l.R=0

^Is

s=i n^^^!

g(M-dr-N^;0)

g(M-Ni;0)

s=i (ds%,s-dr)'

2 fi(Ni-d,) g(M-Ni;0)

Restructuring the above yields

g(M;l) =fi(0)g(M;0) +2 f^CNj) g(M-NpO)

0<N^<M

R = g(M;0) + 2 [ 2 x^^ f^(Ni-d^) ] g(M-N^;0)

0<N^<M r=l

R rrij. rrij^ = g(M;0) + 2 [ 2 ... 2 ... 2 x^^ fi(Ni-dp g(M-Ni;0)

r=l n^^^=0 ni^=l n-^j^ = 0

144
= g(M;0) + s x^^ [2 ... 2 ... 2 fi(Ni-d^) g(M-Ni;0) ]

r=l n^^^=0 n^^=l n^_j^ = 0

R = g(M;0) + 2 x^^ g(M-d/,l)

r=l

which is also

g(M;l) ={fi(M)g(0;0) + fi(M-d^) g(O+d^;0) + ... + fi(0 + d,)g(M-d,;0)

+ fi(0)g(M;0) }

= {fl(M)g(0;0) +fi(M-d^)g(0+d^;0) + ... + fi(0 + d^)g(M-d^;0)

}

+ fi(0)g(M;0)

= g(M;0) + 2 x^^ g(M-d^;l)

r=l

As an alternative approach we will expand the right-hand side of (17), substituting (18) and

derive the equality of (17).

2 xj^_^ g(M-d^;l) = 2 x^^^ { 2 ... 2 ... 2 fi(Ni-di.) g(M-Ni;0) }

r=l ' r=l ' n,,=0

. 2 ... 2

"l,R =

R = 2 x^ j. {fi(M-dr)g(ftO) + ... + fi(0)g(M-d^;0) }

r=l

145
= {f^(M)g(0;0) +fi(M-d^)g(0+d^;0) + ... + fi(0 + dpg(M-d^;0) } ,

and by adding the final term to complete the series and by noting that

g(M;0) = fi(0)g(M;0) , and

fi(Q) = 1

we obtain

R

g(M;0) + s Xi^g(M-d,;l) = | f^CM) gCftO) + fi(M-d^)g(0 + d,;0)

r=l

+ ... +fi(0+d^)g(M-d^;0)}+g(M;0)

= g(M;l)

Following the above procedure it can be shown that the general case yields

R

g(M;k) =g(M;k-l) + 2 x^^ g{M-d^;k)

r=l

146
APPENDIX B

GLOSSARY

ASSIGN the assignment algorithm

BIN the BIN algorithm

balanced system each ICS is identical

C coefficient of variation

EPF extended product form model

FAC factorial expansion algorithm

FCFS first-come first-served scheduling policy

ICS independent computing system

IDBS inventory data base subsystem

IS scheduling policy consisting of an infinite number of servers, i.e. no

scheduling policy

iid statistically independent and indentically distributed

LAN local area network

LCFS last-come-first-served-preemptive-resume scheduling policy

LSI large scale (circuit) integration

M/G/1 a single server queue with Poisson arrival and general service time

distribution

147
M/G/l/K a single server queue with Poisson arrival and general service time

distribution, with a queueing limit of Kjobs

M/M/1 a single server queue with Poisson arrival and exponential service time

distribution

M/M/l/K a single server queue with Poisson arrival and exponential service time

distribution, with a queueing limit of K jobs

POS point-of-sales

PPU peripheral processing unit

PS processor sharing scheduling policy

Relative error (Exact value - Approximate value)/(Exact value)

SCS Shared Central Server

SOP sum-of-products expansion algorithm

SPR shared processing resource

148
APPENDIX C

MATHEMATICAL NOTATION

mean arrival rate for device (ij)

the busy probability of device (iJ)

assumed SPR increase processing rate factor

J.. jj relative visit frequency for device (iJ)

0 T^i

a unit vector, 3 bj. = { , r=l, ... ,R

1 r=i.

n PS, FCFS, LCFS

n IS

} product factors

normalization constant

auxiliary iterative function used in the computation of the

normaUzation constant

149
h(i,J. ) aggregate of the auxiliary iterative function

i,j index denoting device j within the i-th ICS

J = (J-l^ , ... , Jj^) is the job class allocation vector for the network

J. =2 iijj. the maximum number ofjobs that can be allocated to the i-th r=i ' class (i-th ICS)

Jj. = J- for i and r = 1, ... ,R when the network is balanced, and in Chapter IV

J is used as a generic scalar such that J = Jj

R s. K =2 J- = 2 2 n-j. the total number ofjobs in the network

i = l i = i r=0

K= RJ. , i = 1, ... ,R when the network is balanced

R

i=0

L= 2 Sj total number of devices in the network

M = (mj^, ... , is a dummy counting vector that may range over the job allocation vector , R R

3 0<m.<Ji , llMll =n (m. +1) , and |M| = 2 mi=l i=l

R

||M|| =n (m- -f 1) is the vector range (product)

i = l

R

|M| = 1 m- is the vector value (summation)

i=l

n = (n^^ , ... , n^) state vector description of the network

number of class i jobs at the r-th service center of the i-th ICS (both in service and in queue)

150
n- the total number ofjobs (of all classes) at the i-th ICS or the SPR

R

, = {

s n. ^ i>0 r=l

R

2

r=l

i = 0

Nq =(n^Q, ... , iIj^q) is the job class distribution at the SPR

0[ X ] the order of complexity of X

Pr[n^ Q

, ... , nj^

g

] state equilibrium probabilities

Pj J the probability of a class r job at the i-th service center transiting to thej-th service center and becoming a class tjob

pJ u^ansistion probability from the i-th CPU to the j-th device in the

i-th'ICS or to the SPR, where 0<j<Sj

Pj = Pij , i = l, ... ,R andj = 0, ... , Sj when network is balanced

P[nij>k] =2 P(n) themarginalprobability that device (i,j) is serving k or more jobs

n 3 n..>k

Q- : the mean queue length of device (i,j)

p traffic intensity of device ( i,j)

R number of ICSs in the network, which is equal to the number of

different classes in the network

S = (Sq, ... , Sj^) the device allocation vector

151
number of devices in the i-th ICS (i>0) or the SPR (i = 0)

, i=l, ... ,R when network is balanced

average throughput of device (i,j)

mean processing rate of device (i,j)

, i=l, ... ,R and j = 0, ... ,Sj when network is balanced

mean wait time at device (ij)

relative load factor of device (ij)

152
APPENDIX D

SAMPLE SPACE FROM ASSIGN ALGORITHM

S= 2,6, 11,

P(SPR)= 0.100, 0.250, 0.500, 0.750, 0.900,

TOTAL C OMBINATIONS = 15

1. P(SPR) = 0.100

S = 2

1 2 P(J)= 0.132 0.768

U(J)= 1.000 1.000

2. P(SPR) = 0.250

S = 2

1 2 P(J)= 0.182 0.568

U(J)= 1.000 0.020

3. P(SPR) = 0.500

S = 2

1 2

P(J)= 0.024 0.476

U(J)= 1.000 1.000

4. P(SPR) = 0.750

S = 2

1 2 P(J)= 0.010 0.240

U(J)= 1.000 0.100

5. P(SPR) = 0.900

S = 2

1 2 P(J)= 0.029 0.071

U(J)= 1.000 5.000

6. P(SPR) = 0.100

S = 6

1 2 3 4 5 6 P(J)= 0.276 0.374 0.006 0.125 0.026 0.093 U(J)= 1.000 0.200 0.020 0.100 0.020 0.020

153
7. P(SPR) = 0.250

S = 6

1 2 3 4 5 6

P(J)= 0.386 0.083 0.077 0.020 0.037 0.147

U(J)= 1.000 0.2001 0.000 0.200 0.010 0.100

8. P(SPR) = 0.500

S = 6

1 2 3 4 5 6 P(J)= 0.164 0.139 0.009 0.081 0.071 0.036

U(J)= 1.000 2.000 0.020 5.000 0.200 0.100

9. P(SPR) = 0.750

S = 6

1 2 3 4 5 6

P(J)= 0.054 0.051 0.025 0.011 0.068 0.041

U(J)= 1.000 0.020 10.000 0.100 0.200 0.500

10. P(SPR) = 0.900

S = 6

1 2 3 4 5 6 P(J)= 0.061 0.003 0.004 0.001 0.013 0.018

U(J)= 1.000 0.500 0.020 0.500 0.010 2.000

11. P(SPR) = 0.100

S = 11 1234 56789 10 II P(J)= 0.376 0.259 0.046 0.138 0.006 0.025 0.020 0.001 0.011 0.013 0.005

U(J)= 1.000 0.500 1.000 0.050 5.000 0.020 10.000 5.000 0.200 1.000 0.010

12. P(SPR) = 0.250

S = 11

1 2 3 4 5 6 7 8 9 10 11 P(J)= 0.551 0.040 0.017 0.089 0.035 0.007 0.003 0.001 0.005 0.001 0.001

U(J)= 1.000 2.000 10.000 10.000 10.000 2.000 0.010 0.200 0.020 0.200 0.020

13. P(SPR) = 0.500

S = 11

1 2 3 4 5 6 7 8 9 10 11 P(J)= 0.288 0.042 0.016 0.098 0.007 0.004 0.028 0.008 0.001 0.001 0.007

U(J)= 1.000 1.000 5.000 5.000 0.010 0.010 1.000 1.000 0.100 2.000 1.000

14. P(SPR) = 0.750

S = 11

1 2 3 4 5 6 7 8 9 10 11 P(J)= 0.088 0.113 0.006 0.013 0.012 0.004 0.006 0.005 0.001 0.001 0.001 U(J)= 1.000 0.020 10.000 0.020 0.100 2.000 0.050 10.000 0.200 2.000 0.020

P(SPR) = 0.900

S = 11

1 2 3 4 5 P(J)= 0.003 0.027 0.024 0.006 0.005 U(J)= 1.000 5.000 0.050 1.000 0.0106 7 8 9 10 11 0.020 0.006 0.001 0.006 0.001 0.001

1.000 10.000 5.000 0.100 5.000 0.500

154
BIBLIOGRAPHY

[ADIRI 69] Adiri, I. and Avi-Itzhak, B., "A Time-sharing Queue", Manag. Sci., Vol. 15 No. 1, pp 639-657, 1969.

[ADIRI 71A] Adiri, I., "A Dynamic Time-sharing Queue", J.ACM, VOL. 18 No. 4, pp

603-610, Oct. 1971.

[ADIRI 71B] Adiri, I., "A Note on Some Mathematical Models of time-sharing Systems",

J.ACM, VOL. 18 No. 4, pp603-610, Oct. 1971. [AHO 74] Aho, A. V., Hopcroft, J. E. and Ullman, J. D. "The Design and Analysis of

Computer Agorithms" Addison-Wesley Pub. Co., Reading, Mass., 1974.

[ALLEN 78] Allen, A. O. "Probability, Statistics, and Queuing Theory" Academic Press, New York, NY, 1978. [AVMT 73] Avi-itzhak, B. and Heyman, D., "Approximate Queueing Models for Multiprogramming Computer Systems", Opns. Res., Vol. 21 No. 6, pp

1212-1230, Dec. 1973.

[BAASE 78] Baase, S. "Computer Algorithms: Introduction to Design and Analysis"

Addison-Wesley Pub. Co., Reading, Mass., 1978.

[BAER 73] Baer, J. L., "A Survey of Some Theoretical Aspects of Multiprocessing",

Computer Surveys, Vol 5 No. 1, pp 31-80, Mar. 1973.

[BASKET 72A] Baskett, F. and Gomez, F. P., "Processor Sharing in a Central Server Queueing Model of Muldprogramming With Applications", Proc. 6-th Annual Princeton Conf. on Info. Sci. and Syst., Princeton, N.J., pp 589-603,

Mar. 1972.

[BASKET 72B] Basket, F. and Muntz, R., "Queueing Network Models with Different

Classes of Customers", Digest of Papers, COMPCON 72, San Francisco,

CA., pp 205-209, Sept. 1972.

[BASKET 75] Basket, F.; Chandy, K.; Muntz, R. and Placaios, F., "Open, Closed, and

Mixed Networks of Queues with Different Classes of Customers", J. ACM,

VOL. 22 No. 5, pp 248-260, Apr. 1975.

[BASKET 76] Baskett, F. and Smith, A. J. "Interference in Multiprocessor Computer

Systems with Interieaved Memory", CACM, Vol. 19, No. 6, pp 327-334,

June 1976.

[BHANDA 73] Bhandarkar, D. P. "Analytic Models for Memory Interference in Multiprocessor Computer Systems", Ph.D. Thesis, Carnegie-Mellon

University, Sept. 1973.

[BHAT 73] Bhat, U. N. and Nance, R. E., "Dynamic Quantum Allocation and SwapTime Variability in Time-sharing Operating Systems", Southern Methodist

University report No. TR-CP-73009, Apr. 1973.

[BHAT 78] Bhat, U. N., Fisher, M. J. and Shalaby, M. "Aproximation Techniques in the Solution of Queueing Problems", Southern Methodist University Rpt.,

NTIS #ADA053499, Mar. 1978.

155
[BRANDW 77] Brandwajn, A. " A Queueing Model of Muliprogramming Computer

Systems Under Full LOad Conditions", JACM, Vol. 24, No. 2, pp 222-240,

Apr. 1977.

[BRECHT 78] Brechtlein, R. "Comparing Disc Technologies", Datamation, pp 139-150,

June 1978.

[BROWNE 73] Browne, J. C, et. al. "The Effect on Throughput of Multiprocessing In a Multiprogramming Environment", IEEE Trans, on Comp., Vol. C22 No. 8, pp 728-735, Aug. 1973. [BROWNE 75] Browne, J. C, et. al. "Hierarchical Techniques for the Development of

Realistic Models of Complex Computer Systems", Proc. of the IEEE, Vol.

63, No. 6, pp 966-975, June 1975

[BUCCI 79] Bucci, G. and Streeter, D. "A Methodology for the Design of Distributed

Information Systems", CACM, Vol. 22, No. 4, pp 233-245, Apr. 1979. [BURKE 56] Burke, P. J. "The Output of a Queueing System", Opns. Res., Vol. 4, No. 6, pp 699-704, Dec. 1956. [BURKE 72] Burke, P. J. "Output Processes and Tandem Queues", Proc. of the

Symposium on Computer-Communications Networks and Teletraffic,

Polytechnic Institute of Brooklyn, N.Y., pp 419-428, Apr. 1972.

[BURNET 70] Burnett, G. J. and Coffman, E. G., "A Study of Interleaved Memory

Systems", Proc. of AFIPS SJCC, Vol. 36, pp 467-474, Spring 1970.

[BUZEN 71] Buzen, J. P. "Queueing Network Models of Multiprogramming", Ph.D.

Thesis, Harvard University, 1971.

[BUZEN 73] Buzen, J. P. "Computational Algorithms for Closed Queueing Networks

with Exponential Servers", CACM, Vol. 16 No. 9, pp 527-531, Sept. 1973.

[BUZEN 74] Buzen, J. P. and Goldberg, P. S. "Guidelines for the use of Infinite Service

Queuing Models in the Analysis of Computer System Performance", Proc. of AFIPS NCC 74, Vol 43, pp 371-374, 1974.

[BUZEN 76] Buzen, J. P. "Fundamental Laws of Computer System Performance", Proc. of the International Symposium on Computer Performance Modeling,

Measurement and Evaluation, Harvard Univ., Cambridge, Mass., pp 200-

210, Mar 1976.

[BUZEN 77] Buzen, J. P. and Potier, D. "Accuracy of Exponential Assumptions in Closed Queueing Models", Proc. of the SIGMETRICS Conf. on Computer

Performance: Modeling, Measurement, and Management, Wash., D.c, pp

53-63, Nov. 1977.

[BUZEN 78A] Buzen J. P. and Denning, P. J. "The Operational Analysis of Queuing

Network Models", ACM Computing Surveys, Vol. 10, No. 3, pp 225-262,

Sept 1978.

[BUZEN 78B] Buzen, J. P. "A Queuing Network Model of MVS", ACM Computing

Surveys, Vol. 10, No. 3, pp 319-332, Sept 1978.

156
[CADY 72]

[CARPEN 79]

[CDC 75]

[CHAMPI 79]

[CHAMPI 80]

[CHANDY 72A]

[CHANDY 72B]

[CHANDY 75A]

[CHANDY 75B]

[CHANDY 77]

[CHANDY 78]

[CHANG 79]

[CHANG 72]

[CHANG 66]

[CHLAMT 80]

Cady, G. M. "Computation and Communication Trade-off Studies, An

Analytical Model of Computer Networks", Proc. WESCON, Vol. 16 Section 7/2, pp 1-12, 1972.

Cartpenter, R. J. and Sokol, J. "Serving Users With a Local Area

Network", Proc. of the Local Area Communications Network Symposium,

Boston, Mass., pp 75-85, May 1979.

CDC "Scope 3.4.4 Multi-Mainframe Operations Programming systems

Bulletine", Control Data Corp., St. Paul, Minn., CDC #60493600, 1975.

Champine, G. A. "Current Trends in Data Base Systems", IEEE Computer,

Vol. 12, No. 5, pp 27-41, May 1979.

Champine, G. A. "Back-End Technology Trends", IEEE Computer, Vol,

13, No. 2, pp 50-58, Feb. 1980.

Chandy, K. M. "The Analysis and Solutions for General Queueing

Networks", Proc. 6-th Annual Princeton Conf. on Info. Sci. and Sysl.,

Princeton, N.J., pp 224-228, Mar. 1972.

Chandy, K. M. "Local Balance in Queueing Networks With Independent

Servers With Applications to Computer Systems", Proc. 10-th Allerton

Conf., University of III, Oct. 1972.

Chandy, K. M., Herzog, U., and Woo, L. "Performance Analysis of

Queueing Networks", IBM J. Res. Develop., Vol. 19, No. 1, pp 36-42, Jan. 1975.

Chandy,^. M., Herzog, U., and Woo, L. "Analysis of General Queueing

Networks", IBM J. Res. Develop., Vol. 19, No. 1, pp 43-49, Jan. 1975.

Chandy, K. M., Howard, J. H., and Towsley, D. F. "Product Form and

Local Balance in Queueing Networks", JACM, Vol. 24, No. 2, pp 250-263,

Apr. 1977.

Chandy, K. M. and Sauer, C. H. "Approximate Methods for Analyzing

Queuing Network Models of Computer Systems", ACM Computing

Surveys, Vol. 10 , No. 3, pp 281-318, Sept 1978. •

Chang, H. "Major Activity in Magnetic Bubble Technology", Computer

Design, Vol. 13, No. 12, pp 117-125, Nov 1979.

Chang, J. H. and Gorenstein, S. "A Disk File System Shared by Several

Computers in a Teleprocessing Envirnoment", Proc. of the Symposium on Computer-Communications Networks and Teletraffic, Polytechnic Institute of Brooklyn, N.Y., pp 177-185, Apr. 1972.

Chang, W. "A Queueing Model for a Simple Case of Time Sharing", IBM

Syst. J., Vol. 5, No. 2 pp 115-125, 1966.

Chlamtac, I. Franta, W. R., Patton, P. C. and Wells, B. "Performance Issues

in Back-End Storage Networks", IEEE Computer Vol. 13, No. 2, pp 18-31,

Feb 1980.

157
[CHIU 75]

[CHOW 75]

[CHOW 77]

[CITREN 72]

[COFFMA 68A]

[COFFMA 68B]

[COFFMA 69]

[COFFMA 70]

[COFFMA 73]

[CONWAY 67]

[COOPER 69]

[COTTON 79]

[COURTO 71]

[COX 55]

[DISNEY 73]

Chiu, W., Dumont, D., and Wood, R. "Performance Analysis of a Multiprogrammed Computer System", IBM J. Res. Develop., Vol. 19, No.

3, pp 263-271, May 1975

Chow, W. M. "Central Server Model for Multiprogrammed Computer

Systems with Different Classes of Jobs", IBM J. Res. Develop., Vol. 19, No.

3, pp 315-320, May 1975.

Chow, W. M. and Woo, L. "Buffer Performance Analysis of

Communication Processors During Slowdown at Network Control", IBM J. Res. Develop., Vol. 21, No. 3, pp 264-272, May 1977.

Citrenbaum, R. "AN On-line Model for Computation-Communication

Network Analysis and Trade-off Studies", Proc. of the Symposium on

Computer-Communications Networks and Teletraffic, Polytechnic Institute of Brooklyn, N.Y., pp 613-634, Apr. 1972.

Coffman, E. G. Jr. "Analysis of Two Time-Sharing Algorithms Designed

for Limited Swapping", J.ACM, Vol. 15 No. 3, pp 341-353, July 1968.

Coffman, E. G. Jr. and Kleinrock, L. "Feedback Queueing Models for Time-Shared Systems", J.ACM, Vol. 15 No. 4, pp 549-576, Oct. 1968.

Coffman, E. G. Jr. and Muntz, R. R. "Models of Resource Allocation Using

Pure Time-Sharing Disciplines", Proc. of the 24-th ACM National Conf.,

pp 217-228, 1969.

Coffman, E. G. Jr., Muntz, R. R., and Trotter, H. "Waiting Time

Distributions for Processor Sharing Systems", J.ACM, Vol. 17 No. 1, pp

123-130, Jan. 1970.

Coffman, E. G. Jr. and Denning, P. J. "Operating Systems Theory",

Printice-Hall, Inc., N.J., 1973.

Conway, R. W.; Maxwell, W. L. and Miller, L. W. "Theory of ScheduUng",

Addison-Wesley, Reading, MA., 1967.

Cooper, R. B. and Murray, G. "Queues Served in Cyclic Order", Bell Syst.

Tech. J., Vol. 48 No. 3, pp 675-689, Mar 1969.

Cotton, I. W. "Technologies For Local Area Computer Networks", Proc. of

the Local Area Communications Network Symposium, Boston, Mass., pp

25-45, May 1979.

Courtois, P. J. "On the Near-Complete-Decomposability of Networks of

Queues and of Stachasiic Models of Multiprogramming Computer

Systems", Ph.D. Thesis, Carnegie Mellon University, Nov. 1971.

Cox, D. R. "A Use of Complex Probabilities in the Theory of Stochastic

Processes", Proc. Cambridge Philos. Soc, Vol. 51, pp 313-319, 1955.

Disney, R. L. and Cherry, W. P. "Some Topics In Queueing Network

Theory", Proc. of the Sympoium on Mathematical Methods in Queueing

Theory, Kalamazoo, Mich., PP 23-44, May 1973.

158
[DISNEY 77] Disney, R. L. "Research into Queueing Network Theory", NTIS

#ADA047148, Sept. 1977. [DUDICK 71] Dudick, H. L. and Pack, C. D. "Round Robin Scheduling in a Computer

Communication System With Finite Swap-Time and Statistically

Multiplexed Arrivals", Proc. ACMTEEE 2nd Symposium on Problems in the Operations of Data Communication Systems, Oct 1971.

[FELLER 68] Feller, W. "An Introduction to Probability Theory and Its Applications",

Vol. 1, John Wiley ans Sons Inc., Ney York, N.Y., 1968.

[FENICH 69] Fenichel, R. R. and Grossman, A. J. "An Analytic Model of

Multiprogramming Computing", Proc. of AFIPS SJCC, Vol. 34, pp 771- 721, Spring 1969. [FERRAR 78] Ferrari, D. "Computer Systems Performance Evaluation", Prentice-Hall

Inc., Englewood Cliffs, N.J., 1978.

[FINCH 59] Finch, P. D. "The Output Process of the Queuing System M/G/1", J. Roy.

Stat. Soc, Ser B21, No. 2, pp 375-380, 1959. [FRANK 72] Frank, H.; Kahn, R. E. and Kleinrock, L. K. "Computer-Communication

Network Design-Experience With Theory and Practice", Proc. of AFIPS

SJCC, Vol 40, pp 255-270, Spring 1972.

[FRATTA 72] Fratta, L. and Gerla, M. "The Synthesis of Computer Networks: Properties

of the Optimum Solution", ACM International Computing Symposium,

Venice, Italy, 1972. [FREEMA 80] Freeman, H. A. "Great Editors's Introduction: Back-End Storage

Networks", IEEE Computer, Vol. 13, No. 2, pp 7-8, Feb 1980.

[FUCHS 70] Fuchs, E. and Jackson, P. E. "Estimates of Distributions of Random

Variables for Certain Computer Communications Traffic Models" C.ACM,

Vol. 13 No. 12, pp 752-757, Dec. 1970. [FUNG 79] Fung, F. T. and Torng, G. C. "In the Analysis of Memory Conflicts and Bus

Contentions in a Multiple - Microprocessor System", IEEE Trans, on Comp., Vol. C28, No. 1, pp 28-37, Jan 1979. [GAVER 67] Gaver, D. P. "Probability Models for Multiprogramming Computer

Systems", J.ACM, Vol. 14, No. 3, pp 423-438, July 1967.

[GAVER 73] Gaver, D. P. and Shedler, G. S. "Processor Utilization in Multiprogramming Systems Via Diffusion Approximations", Opns. Res., Vol. 21, No. 2, pp 569-576, Apr. 1973. [GAVER 76] Gaver, D. P. and Humfeld, G. "Multitype Multiprogramming Models",

Acta Informatica, Vol. 7, pp 111-121, 1976.

[GELENB 73] Gelenbe, E. "The Distibution of a Program in Primary and Fast Buffer

Storage", C.ACM, Vol. 16 No. 7, pp 431-434, July 1973.

[GERLA 73] Gerla, M. "The Design of Store-And-Forward (S/F) Networks for Computer Communication", Ph.D., UCLA, 1973.

159
[GIAMMO 76]

[GORDON 67A]

[GORDON 67B]

[GREENE 73]

[GROSS 75]

[HOOGEN 77]

[HOAGLA 79]

[IDC 76]

[JACKSO 57]

[JACKSO 63]

[JAFARI 77]

[KAHN 72]

[KAMOUN 76]

[KELLER 72]

[KIMBLE 73]

[KLEINR 64]

Giammo, T. "Extensions to Exponential Queuing Network Theory for Use

in a Planning Environment", Digest of Papers, COMPCON 76, Fall, Wash.,

D.C., pp 156-160, Sept. 1976.

Gordon, W. J. and Newell, G. F. "Closed Queueing Systems With

Exponential Servers", Opns. Res., Vol. 15 No. 2, pp 254-265, Apr. 1967.

Gordon, W. J. and Newell, G. F. "Cyclic Queuing Systems with Restricted

Length Queues", Opns. Res., Vol, 15 No. 2, pp 266-277, Apr. 1967

Greenberg, I. "Distribution- Free Analysis of M/G/1 and G/M/1 Queues",

Opns. Res., Vol. 21 No. 2, pp 629-635, Apr. 1973.

Gross, D. "Sensitivity of Queuing Models to the Assumption of

Exponentiality", Naval Res. Logistics Quarterly, Vol. 22, No. 2, pp 271-287,

June 1975.

Hoogendoorn, C. H. "A General Model for Memory Interference in Multiprocessors", IEEE Trans, on Comp., Vol C26, No. 10, pp 998-1005,

Oct 1977.

Hoagland, A. S. 'Storage Technology: Capabilities and Limitations", IEEE

Computer, Vol. 12, No. 5, pp 12-18, May 1979.

IDC "Distributed Processing", International Data Corp. Rpt #1763, 214

Third Ave., Waltham, Mass., 02154, Dec. 1976.

Jackson, J. R. "Networks of Waiting Lines", Opns. Res., Vol. 5, No. 4, pp

518-521, Aug. 1957.

Jackson, J. R. " Jobshop-Like Queueing Systems", Manag. Sci., Vol. 10 No.

1, pp 131-142, Oct. 1963.

Jafari, H. and Lewis, T. "A New Loop Structure for Distributed

Microcomputing Systems", Proc. of die 1st Annual Rocky Mountain

Symposium on Microcomputers Systems, Software and Architecture, Ft. Collins, Col., pp 121-141, Aug 1977.

Kahn, R. E. "Resource-Sharing Computer Networks", Proc. IEEE, Vol. 60,

pp 1397-1407, Nov. 1972.

Kamoun, F. and Kleinrock, L. "Analysis of Shared Storage in a Computer

Network Environment", Proc. of the Ninth Hawaii International

Conference on System Sciences, Honolulu, Hawaii, pp 89-92, Jan. 1976.

Keller, T. W.; Towsley, D. F.; Chandy, K. M. and Browne, J. C. "A Tool

for Network Design: The Automated Analysis of Stochastic Models of

Computer Networks", Digest of Papers, COMPCON 72, San Francisco,

CA., pp 151-153, Sept. 1972.

Kimbleton, S. R. "Computer Systems Models", University of Mich. Rpt.,

NTIS#AD774678, June 1973.

Kleinrock, L. "Communications Nets: Stochastic Message Flow and

Delay", McGraw-Hill, N.Y., 1964.

160
[KLEINR 67] Kleinrock, L. "Time-Shared Systems: A Theoretical Treatment", J. ACM,

Vol. 14 No. 2, pp 242-261, Apr. 1967.

[KLEINR 69] Kleinrock, L. "Models for Computer Networks", Proc. of die International

Communications Conf., Boulder, CO., Section 21, pp 9-16 Section 21, June

1969.

[KLEINR 70A] Kleinrock, L. "Analydc and Simulation Methods in Computer Network

Design", Proc.ofAFIPS SJCC, Vol 36, pp 569-579, Spring 1970.

[KLEINR 70B] Kleinrock, L. "A Continuum of Time-Sharing Scheduling Algorithms",

Proc. of AFIPS SJCC, Vol 36, pp 453-458, Spring 1970.

[KLEINR 75] Kleinrock, L. "Queueing Systems Volume I: Theory", John Wiley & Sons,

Inc., N.Y., 1975.

[KLEINR 76] Kleinrock, L. "Queueing Systems Volume II: Computer Applications",

John Wiley & Sons, Inc., N.Y., 1976.

[KOBAYA 74A] Kobayashi, H. "Application of the Diffusion Approximation to Queueing

Networks I: Equilibrium Queue Distributions", JACM, Vol. 21, No. 2, pp

316-328, Apr. 1974. [KOBAYA 74B] Kobayashi, H. "Application of the Diffusion Approximation to Queueing

Networks II: Nonequilibrium Distributions and Applications to Computer

Modeling", JACM, Vol. 21, No. 2, pp 459-469, Apr. 1974. [KOBAYA 75] Kobayashi, H. and Reiser, M. "On Generalization of Job Routing Behavior

in a Queueing Network Model", IBM Res. Rpt. RC5252 (#23079), Feb.

1975. [KOBAYA 76] Kobayashi, H., "A Computational Algorithm for Queue Distributions Via

Polyas' Theory of Enumeration", IBM Res. Rpt. RC6154 (#26522), Aug.

1976. [KOBAYA 77] Kobayashi, H. and Konheim, A. "Queuing Models for Computer

Communications System Analysis" IEEE Trans, on Comm., Vol COM-25,

No. 1, pp 2-28, Jan 1977. [KOBAYA 78] Kobayashi, H. "Modeling and Analysis: An Introduction to Systems

Performance Evaluation Methodology", Addison-Wesley Pub. Co.,

Reading, Mass., 1978.

[KONHEI 76] Konheim, A. G. and Reiser, M. "A Queueing Model with Finite Waiting

Room and Blocking", JACM, Vol. 23, No. 2, pp 328-341, Apr. 1976

[KRISHN 66] Krishnamoorthi, B. and Wood, P. C. "Time-Shared Computer Operations

With Both Interarrival and Service Time Exponential", J.ACM, Vol. 13,

No. 3, pp 317-338, July 1966.

[LAM 79] Lam, C. Y., "The Intelligent Memory System Architecture - Research

Directions", Mass. Inst, of Tech. Rpt., NTIS #ADA073485, Aug. 1979.

[LAM 77A] Lam, S. S., "Queuing Networks with Population Size Constraints", IBM J. Res. Develop., Vol. 21, No. 4, pp 370-378, July 1977.

161
[LAM 77B]

[LAMPSO 80]

[LEE 78]

[LEUNG 78]

[LEWIS 71]

[LIPSKY 77]

[McCRED 73]

[MCKINN 69]

[MONAHA 79]

[MOORE 72]

[MORSE 58]

[MUNTZ 72A]

[MUNTZ 72B]

[MUNTZ 73]

[MUNTZ 74]

Lam, S. S., "An Extension of Moore's Result for Closed Queuing

Networks", IBM J. Res. Develop., Vol. 21, No. 4, pp 384-387, July 1977.

Lampson, B. W. and Redell, D. D. "Experience with Processess and

Monitors in Mesa", CACM, Vol. 23, No. 2, pp 105-117, Feb. 1980.

Lee, C.M.B. "System Modeling - Where we are now and Where we have to go", Proc. of 17th Annual Tech. Symp.: Tools for Improved Computing in the 80's, NBS, Gaithersbur;g, MD., pp 211-220, June 1978.

Leung, S. K. "Architecture of a Modular Network - The BANCS

Network", Proc. COMPON 78: Computer Communications Networks,

Wash. D.C., pp 212-220, Setp. 1978.

Lewis, P. A. and Shedler, G. S. "A Cyclic-Queue Model of System

Overhead in Multiprogrammed Computer Systems", J.ACM, Vol. 18 No. 2, pp 199-220, Apr. 1971.

Lipsky, L. and Church, J., "Applications of a Queueing Network Model for a Computer System", ACM Computing Surveys, Vol. 9 No. 3, pp 205-221,

Sept. 1977.

McCredie, J. W. "Analytic Models as Aids in Multiprocessor Designs" Proc. Seventh Annual Princeton Conf. on Information Sciences and Systems,

Princeton, N.J., pp 186-191, March 1973.

McKinney, J. M. "A Survey of Analytical Time-Sharing Models",

Computer Surveys, Vol. 2, No. 2, pp 106-116, June 1969.

Monahan, J. H. "Opportunities and Challenges in the Evolution of Local

Area Communications Networks", Proc. of the Local Area

Communications Network Symposium, Boston, Mass., pp 15-24, May 1979.

Moore, F. R. "Computational Model of a Closed Queueing Network with

Exponential Servers", IBM J. Res. Develop., pp 567-572, Nov. 1972.

Morse, P. M. "Queues, Inventories and Maintenance", John Wiley & Sons,

Inc., N.Y., 1958.

Muntz, R. R. "Waiting Time Distribution for Round-Robin Queueing

Systems", Proc. of the Symposium on Computer-Communications

Networks and Teletraffic, Polytechnic Institute of Brooklyn, N.Y., pp 429-

440, Apr. 1972.

Muntz, R. R. "Poisson Departure Processes and Queueing Networks",

IBM T. J. Watson Res. Center, IBM Rpt.#RC4145, Sept. 1972.

Muntz, R. R. "Poisson Departure Processes and Queuing Networks", Proc. of the 7th Annual Princeton Conf on Info. Sci. and Syst., Princeton, N.J., pp 435-440, Mar 1973.

Muntz, R. R. and Wong, J. W., "Efficient Computational Procedures for Closed Queueing Network Models", Proc. of the Seventh Hawaii

International Conference on System Sciences, Honolulu, Hawaii, pp 33-36,

Jan. 1974.

162
[MUNTZ 78] Muntz, R. R. "Queuing Networks: A Critique of the State of the Art and

Directions for the Future", ACM Computing Survevs, Vol. 10, No. 3, pp

353-360, Sept 1978. [NAKARM 71] Nakarmura, G. "A Feedback Queueing Model for an Interactive Computer

System", Proc. of AFIPS FJCQ Vol. 39, pp 57-64, Fall 1971.

[NOETZE 76A] Noetzel, A. S., "Recent Generalizations of Queueing Networks with

Product-Form Solutions", Proc. of the 1976 Conference on Information

Sciences and Systems, The John Hopkins University, Bait., Md., pp 549-

552, Apr. 1976.

[NOETZE 76B] Noetzel, A. S., "Throughput In Locally Balanced Computer System

Models", Brookhaven National Laboratory RpL, Upton, N.Y„

NTIS#BNL-22531, Mar. 1977.

[OMAHEN 72] Omahen, K. and Schrage, L. "A Queueing Analysis of a Multiprocessor

System With Shared memory", Proc. of the Symposium on ComputerCommunications Networks and Teletraffic, Polytechnic Institute of

Brooklyn, N.Y., pp 77-88, Apr. 1972. [OSTERW 72] Osterweil, L. J. "A Stochastic Model of Multiprocessor Access to an

Interleaved Memor>'", Coloardo University Rpt., NTIS#PB-233695, Oct. 1972.

[OUSTER 80] Ousterhout, J. K., Scelza, D. A. and Sindhu, P. S. "Medusa: An

Experiment in Distributed Operating System Structure", CACM, Vol. 23,

No. 2, pp 92-104, Feb. 1980.

[PACK 73A] Pack, C. D. "The Effects of Multiplexing on a Computer-Communication

System", CACM, Vol. 16 No. 3, pp 161-168, Mar. 1973.

[PEARCE 78] Pearce, R. C. and Majitiiia, J. C. "Analysis of a Shared Resource MIMD

Computer Organization", IEEE Trans on Comp, Vol. C27, No. 1, pp 64-67,

Jan 1978.

[PETERS 77] Peterson. J. L. "Petri Nets", ACM Computer Surveys, Vol. 9, No. 3, pp

223-252, Sept. 1977.

[PRICE 74] Price, T. G. "Balanced Computer Systems", Stanford University Rpt.,

NTIS#AD/A001071, Apr. 1974.

[RAU 79] Rau, B. R. "Interleaved Memory Bandwidth in a Model of a Multiprocessor

Computer System". IEEE Trans on Comp.. Vol. C28, No. 9, pp 678-681,

Sept 1979.

[REGIS 73] Regis, R. C. "Multiserver Queueing Models of Multiprocessing Systems",

IEEE Trans, on Comp.. Vol. C22 No. 8, pp 736-744, Aug. 1973.

[REISER 74] Reiser, M and Kobayashi, H. "Accuracy of the Diffusion Approximation

for Some Queueing Systems", IBM J. Res. Develop.. Vol. 18 No. 2, pp 110-

124, Mar 1974.

[REISER 75] Reiser, M. and Kobayashi, H., "Queuing Networks witii Multiple Closed

Chains: Theor>' and Computational Algorithms", IBM J. Res. Develop.,

Vol. 19, pp 283-294, May 1975.

163
[REISER 76] Reiser, M. and Kobayashi, H., "On the Convolution Algorithm for Separable Queuing Networks", Proc. of the International Symposium on Computer Performance, Modeling, Measuement and Evaluation", pp 109-

117, Mar. 1976.

[ROBERT 70] Roberts, L. G. and Wessler, B. D. "Computer Network Development to Achieve Resource Sharing", Proc. AFIPS SJCC, Vol. 36, June 1970. [ROOME 74A] Roome, W. D. "Modeling and Design of the Communications and

Computation Aspects of Computer Networks", Ph.D. Thesis, Cornell

Universiy, 1974.

[ROOME 74B] Roome, W. D. and Tomg, H. C. "Modeling and Design of Computer

Networks With Distributed Computation Facilities", Proc. 1974

Symposium - Computer Networks: Trends & Applications, National

Bureau of Standards, Gaithersburg, Md., May 1974.

[ROSE 78] Rose, C. A. "A Measurement Procedure for Queuing Network Models of

Computer Systems", ACM Computing Surveys, Vol. 10, No. 3, pp 263-280,

Sept 1978.

[SAATY 73] Saaty, T. L. "Elements of Queueing Theory", McGraw-Hill Book Co., Inc., N.Y., 1961.

[SCHERR 66] Scherr, A. L. "An Analysis ofTime-Shared Computer Systems", MIT Press, Cambridge, MA., 1966. [SCHWAR 79] Schwartz, M. "Thoughput and Time Delay Analysis for a Common Queue

Configuration in a Multiprocessor Environment", IEEE Trans, on

Computers, Vol C-25, No 12, pp 939-941, Dec 79.

[SEGALL 76] Segall, A., "Basic Models for Dynamic Routing in ComputerCommunication Networks", Proc. of the Ninth Hawaii International

Conference on System Sciences, Honolulu, Hawaii, pp 77-79, Jan. 1976.

[SHEDLE 73] Shedler, G. S. "A Queueing Model of a Multiprogrammed Computer With

a Two Level Storage System", CACM, Vol. 16, No. 1, pp 3-10, Jan 1973. [SHEMER 67] Shemer, J. E. "Some Mathematic Considerations of Time-Sharing

Scheduhng Algorithms", JACM, Vol. 14, No. 2, pp 262-272, Apr. 1967. [SHEMER 69] Shemer, J. E. and Heying, D. W. "Performance Modeling and Empirical

Measurements in a System Designed for Batch & Time-Sharing Users", Proc. of AFIPS FJCC, Vol. 35, pp 17-26, Fall 1969. [SHERMA 72] Sherman, S.; Basket, F. and Browne, J. C. "Trace Driven Modeling &

Analysis of CPU Scheduling in a Multiprogramming System", CACM,

Vol. 15 No. 12, pp 1063-1069, Dec 1972. [SHUM 76] Shum, A. W. "Queuing Models for Computer Systems with General

Service Time Distribution" Ph.D. Thesis, Harvard Univ., Dec 1976. [SHUM 77] Shum, A. W. and Buzen, J. P. "The EPF Technique: A Method for Obtaining Approximate Solutions to Closed Queuing Networks with

General Service Times" in Measuring, Modeling, and Evaluating Computer

Systems, H. Beilner and E, Gelenbe (Eds.), North Holland Pub. Co., pp

201-220, 1977.

164
[SMITH 77] Smith, A. J. "Multiprocessor Memory Organization and Memory

Interferences", CACM, Vol. 20, No. 10, pp 754-761, Oct 1977.

[SMITH 79] Smith, A. J. "An Analytic and Experimental Study of Multiple Channel

Controllers", IEEE Trans, on Comp., Vol C28, No. 1, pp 38-49, Jan 1979.

[SPIRN 76] Spirn, J. R., "Multi-Queue Scheduling of Two Tasks", Proc. of the International Symposium on Computer Performance, Modeling,

Measurement and Evaluation, pp 102-108, Mar. 1976.

[SPIRN 79] Sprin, J. R. "Queuing Networks with Random Selection for Service", IEEE

Trans, on S. W. Eng., Vol. SE5, No. 3, pp 287-289, May 1979.

[SPRING 78] Spinger, J. F. "The Distributed Data Network, Its Architecture and

Operationk", Proc. COMPON 78: Computer Communications Networks,

Wash. D.C., pp 221-228, Setp. 1978. [STOYAN 78] Stoyan, D. "Queuing Networks - Insensitivity and a Heuristic

Approximation", Proc. of the Seventh Conference on Stockastic Processes and Their Applications, Twente University of Tech., The Netherlands, Aug

1977.

[TAKACS 62] Takacs, L. "Introduction to the Theorv of Queues", Oxford University

Press, N.Y., 1962.

[THEIS 78] Theis, D. J. "An Overview of Memory Technologies", Datamation, pp 113-

131, June 1978. [THORNT 80] Thornton, J. E. "Back-End Network Approaches", IEEE Computer, Vol.

13, No. 2, pp 10-77, Feb 1980. [TOOMBS 78A] Toombs, D. "CCD and Bubble Memories: System Implications," IEEE

Spectrum, pp 36-39, May 1978. (TOOMBS 78B] Toombs, D. "An update: CCD and Bubble Memories", IEEE Spectrum,

pp 22-30, May 1978. [VOTAW 73] Votaw, D.F. "A Theory of Storage Sizing", Mitre Corp. Rpt., NTIS # AD765175, July 1973. [WALLAC 66] Wallace, V. L. and Rosenberg, R. S. "Markovian Models and Numerical

Analysis of Computer System Behavior", Proc. AFIPS SJCC, Vol. 28, pp

141-148, 1966.

[WALLAC 72] Wallace, V. L. "Toward an Algebraic Theory of Markovian Networks",

Proc. of the Symposium on Computer-Communications Networks and

Teletraffic, Polytechnic Institute of Brooklyn, N.Y.. pp 397-407, Apr. 1972. [WALLAC 73] Wallace, V. L. "Algebraic Techniques for Numerical Solution of Queueing

Network Theory", Proc. of the Sympoium on Mathematical Methods in Queueing Theory, Kalamazoo, Mich., PP 295-305, May 1973.

[WARNAR 79] Warnar, R. B. J. , Calomeris, P. J. and Recicar, S. A. "Computer

Peripherial Memory Systems Forecast", National Bureau of Standards,

Wash. D.C., NBS #SP500-45, Apr 1979.

165
[WATSON 80] Watson, R. W. "Network Architecture Design for Back-End Storage

Networks", IEEE Computer, Vol. 13. No. 2, pp 32-48, Feb 1980. [WANG 78] Wang, J. W. "Queuing Network Modeling Computer Networks", ACM

Computing Surveys, Vol. 10, No. 3, pp 333-342, Sept. 1978. [WELCH 79] Welch, T. A. "Analysis of Memory Hierarchies for Sequential Data Access",

IEEE Computer, Vol. 12, No. 5, pp 19-26, May 1979.

[WILEY 77] Wiley, J. M. "Just Enough Queueing Theory", Datamation, pp 87-96, Feb.

1977.

[WILKES 79] Wilkes, M. V. and Wheeler, J. D. "The Cambridge Digital Communication

Ring", Proc. of the Local Area Communications Network Symposium,

Boston, Mass., pp 47-61, May 1979. [WONG 78] Wong, J. W. "Queueing Network Modeling of Computer Communication

Networks", ACM Computing Surveys, Vol. 10, No. 3, pp 333-342, Sept. 1978. [WYSZEW 74] Wyszewianski, R. J. "Feedback Queues in the Modeling of Computer

Systems: A Survey", University of Michigan Rpt., NTIS#AD782360, May

1974.

[ZUSSMA 77] Zussman, R. "Computer Queueing Analysis On a Handheld Calculator",

Computer Design, pp 85-94, Nov. 1977.

166 6 U. S. GOVERNMENT PRINTING OFFICE : 1980 340-997/298
NBS-114A iREv. 2-ac) U S DEPT OF COMM. 1 PIIRI IfATIDNJ DR y P e> r Tf\ rm i r\ a (l roan R^n^rt KJr» 3, Publication D3te

RIRI ui DLiuo IflRRAPHir r\nr n 1 V DATA unin

REPORT NO. SHEET (See instructions) NBS SP 500-69 November 1980

4. TITLE AND SUBTITLE

Cbrrputer Science and Tfechnology:

An Analytic Stuc^ of a Shared Device Annong Independent Conputing Systems

5. AUTHOR(S)

Alan Mink

6. PERFORMING ORGANIZATION (If joint or other than NBS, see ;n struct/on sj NATIONAL BUREAU OF STANDARDS

DEPARTMENT OF COMMERCE

WASHINGTON, D.C. 20234

7. Contract/Grant No.

8. Type of Report & Period Covered

Final

9. SPONSORING ORGANIZATION NAME AND COMPLETE ADDRESS (Street. City. State, ZIP)

Same as No. 6

10. SUPPLEMENTARY NOTES

Library of Congress Catalog Card Number: 80-600170

I I Document describes a computer program; SF-185, FlPS Software Summary, is attached.

11. ABSTRACT (A 200-word or less factual summary of most si gnificant information. If document includes a si gnificant

bi bl iography or literature survey, mention it here) Global queueing network performance models are developed for the increasingly

iitpDrtant class of ooirputer netavorks coitprising a number of independent conputing

systems sharing a single resource. An extensive bibliography and survey of prior

work relating to this topic are included. Analytic expressions of performance measures for this class of systems are derived from the general theory of mnalticlass queueing networks, and new computational algorithms for evaluating them are presented that are memory-space efficient (linear vs . exponential) corrpared with

known algorithms for the general theory. This exact analytic model, called the

Shared Central Server Model, incurs approximately the same exponential time

corrplexity in its evaluation as do all models based on the general theory; because

of this, a sinple heuristic approximate model of this class of systeins is also

presented that is coirputationally efficient in both time and space. Modular expansion

of this class of systems is investigated using the approximate model, and a useful relationship is derived betaveen the nimber of additional independent

conputing systems and the incremental increase in capability of the shared

resource required to maintain the existing level of system performance.

12. KEY WORDS (Six to twelve entries; alphabetical order; capitalize only proper names; and separate key words by semicolon s)

^proximate queueing models; computer architecture; modular expansion analysis;

performance evaluation; performance modeling; queueing models; queueing networks.

13.i. AVAILABILITY Iia Mr-, r>i=

Unlimited

I I For Official Distribution. Do Not Release to NTIS Kn Order From Superintendent of Documents, U.S. Government Printing Office, Washington, D.C. 20402.

Order From National Technical Information Service (NTIS), Springfield, VA. 22161

14. NO. OF

PRINTED PAGES

176

15. Price

$5.50

USCOMM-DC 6043-PeO

There's

anew

look

to...

. . . the monthly

magazine of the National Bureau of Standards.

Still featured are special articles of general interest on

current topics such as consumer product safety and building

technology. In addition^ new sections are designed to . . . PROVIDE

SCIENTISTS with illustrated discussions

of recent technical developments and

work in progress . . . INFORM INDUSTRIAL

MANAGERS of technology transfer activities in

Federal and private labs. . . DESCRIBE TO MANUFACTURERS advances in the field of voluntary and

mandatory standards. The new DIMENSIONS/NBS also

carries complete listings of upcoming conferences to be

held at NBS and reports on all the latest NBS publications,

with information on how to order. Finally, each issue carries a page of News Briefs, aimed at keeping scientist and consumalike up to date on major developments at the Nation's physical sciences and measurement laboratory.

(please detach here) SUBSCRIPTION ORDER FORM

Enter my Subscription To DIMENSIONS/NBS at S11.00. Add $2.75 for foreign mailing. No additional postage is required for mailing within the United States or its possessions. Domestic remittances should be made either by postal money order, express money order, or check. Foreign remittances should be made either by international money order, draft on an American bank, or by UNESCO

coupons. Send Subscription to: NAME-FIRST, LAST

I I I I I I I I I I I I I I I I I I I I I I I I I I I I I

O Remittance Enclosed (Make checks payable

to Superintendent of Documents)

D Charge to my Deposit Account No.

COMPANY NAME OR ADDITIONAL ADDRESS LINE

I I I I I I I II I I I I I I I I

STREET ADDRESS

I I I I I I I I I I I I I I I I I I I I I I I I

1

I I

I I I I I I I I I I I I I I I I

STALE

MAIL ORDER FORM TO:

Superintendent of Documents

Government Printing Office

Washington, D.C. 20402

PLEASE PRINT

It

NBS TECHNICAL PUBLICATIONS

PERIODICALS

JOURNAL OF RESEARCH—The Journal of Research of the National Bureau of Standards reports NBS research and develop- ment in those disciplines of the physical and engineering sciences in which the Bureau is active. These include physics, chemistry,

engineering, mathematics, and computer sciences. Papers cover a broad range of subjects, with major emphasis on measurement

methodology and the basic technology underlying standardization. Also included from time to time are survey articles on topics

closely related to the Bureau's technical and scientific programs. As a special service to subscribers each issue contains complete

citations to all recent Bureau publications in both NBS and non- NBS media. Issued six times a year. Annual subscription: domestic

$1.1; foreign $16.25. Single copy, $.1 domestic; $3.75 foreign. NOTE: The Journal was formerly published in two sections: Section A "Physics and Chemistry" and Section B "Mathematical

Sciences." DIMENSIONS/NBS—This monthly magazine is published to in- form scientists, engineers, business and industry leaders, teachers, students, and consumers of the latest advances in science and

technology, with primary emphasis on work at NBS. The magazine

highlights and reviews such issues as energy research, fire protection, building technology, metric conversion, pollution abatement,

health and safety, and consumer product performance. In addition, it reports the results of Bureau programs in measurement

standards and techniques, properties of matter and -materials, engineering standards and services, instrumentation, and

automatic data processing. Annual subscription: domestic $11;

foreign $13.75. NONPERIODICALS

Monographs—Major contributions to the technical literature on

various subjects related to the Bureau's scientific and technical activities. Handbooks—Recommended codes of engineering and industrial practice (including safety codes) developed in cooperation with in- terested industries, professional organizations, and regulatory

bodies. Special Publications—Include proceedings of conferences sponsored by NBS, NBS annual reports, and other special publications

appropriate to this grouping such as wall charts, pocket cards, and

bibliographies. Applied Mathematics Series—Mathematical tables, manuals, and

studies of special interest to physicists, engineers, chemists,

biologists, mathematicians, computer programmers, and others engaged in scientific and technical work.

National Standard Reference Data Series—Provides quantitative data on the physical and chemical properties of materials, compiled from the world's literature and critically evaluated. Developed under a worldwide program coordinated by NBS under

the authority of the National Standard Data Act (Public Law

90-396).

NOTE: The principal publication outlet for the foregoing data is the Journal of Physical and Chemical Reference Data (JPCRD)

published quarterly for NBS by the American Chemical Society

(ACS) and the American Institute of Physics (AIP). Subscriptions,

reprints, and supplements available from ACS, I 155 Sixteenth St., NW, Washington, DC 20056.

Building Science Series—Disseminates technical information developed at the Bureau on building materials, components,

systems, and whole structures. The series presents research results,

test methods, and performance criteria related to the structural and

environmental functions and the durability and safety characteristics of building elements and systems.

Technical Notes—Studies or reports which are complete in themselves but restrictive in their treatment of a subject. Analogous to monographs but not so comprehensive in scope or definitive in treatment of the subject area. Often serve as a vehicle for final reports of work performed at NBS under the sponsorship of other government agencies.

Voluntary Product Standards—Developed under procedures

published by the Department of Commerce in Part 10, Title 15, of

the Code of Federal Regulations. The standards establish nationally recognized requirements for products, and provide all concerned interests with a basis for common understanding of the

characteristics of the products. NBS administers this program as a supplement to the activities of the private sector standardizing

organizations. Consumer Information Series— Practical information, based on NBS research and experience, covering areas of interest to the con- sumer. Easily understandable language and illustrations provide

useful background knowledge for shopping in today's technological marketplace. Order the above NBS publications from: Superintendent of Documents, Government Printing Office, Washington, DC 20402. Order the following NBS publications—FlPS and NBSIR's—from

the National Technical Information Services, Springfield, VA 22161

.

Federal Information Processing Standards Publications (PIPS

PUB)—Publications in this series collectively constitute the Federal Information Processing Standards Register. The Register

serves as the official source of information in the Federal Govern- ment regarding standards issued by NBS pursuant to the Federal Property and Administrative Services Act of 1949 as amended.

Public Law 89-306 (79 Stat. 1127), and as implemented by Executive Order 1 1 7 1 7 (38 FR 1 23 1 5, dated May 11,1 973) and Part 6

of Title 15 CFR (Code of Federal Regulations).

NBS Interagency Reports (NBSIR)—A special series of interim or

final reports on work performed by NBS for outside sponsors

(both government and non-government). In general, initial dis- tribution is handled by the sponsor; public distribution is by the National Technical Information Services, Springfield, VA 22161.

in paper copy or microfiche form.
U.S. DEPARTMENT OF COMMERCE

National Bureau of Standards

Washington, D C. 20234

OFFICIAL BUSINESS

POSTAGE AND FEES PAID

U.S. DEPARTMENT OF COMMERCE COM-215

Penalty for Private Use, $300

SPECIAL FOURTH-CLASS RATE

BOOK