scispace - formally typeset
Search or ask a question

Showing papers on "Load balancing (computing) published in 1984"


Journal ArticleDOI
TL;DR: In this article, simulation results of three adaptive, decentralized controlled job scheduling algorithms which assume absolutely no a priori knowledge about jobs are presented, providing insight into the workings and relative effectiveness of the three algorithms, as well as insights into the performance of a special type of decentralized control.

99 citations


12 Jan 1984
TL;DR: The n+1 architecture, with individual cache memories and a 'bus-ownership protocol,' has overcome the problems which have prevented other designs from realising the increased performance a tightly coupled multiprocessor architecture should provide and offers linear increases of performance.
Abstract: A tightly coupled architecture of multiple processors automates the functions of expansion, system tuning, load balancing and data-base distribution-a major part of designing and implementing online systems. To reduce memory-access times significantly, the n+1 multiprocessor system for fault-tolerant transaction processing also combines individual cache memories for each processor with a data-sharing scheme. Thus it overcomes the problems which have prevented other designs from realising the increased performance a tightly coupled multiprocessor architecture should provide. The principal problem resulted from the use of a shared memory, because the individual processors contend for that memory and therefore waste much valuable processing time. The n+1 architecture, with individual cache memories and a 'bus-ownership protocol,' has overcome this impediment and offers linear increases of performance, with up to 28 processors sharing a common fault-tolerant memory system. The key to the synapse expansion architecture is a new look at bus arbitration and caching in tightly coupled systems.

99 citations


Journal ArticleDOI
TL;DR: Simulation results of three adaptive, decentralized controlled job scheduling algorithms which assume absolutely no a priori knowledge about jobs are presented, and it is observed that, if tuned correctly, the decentralized algorithms exhibit stable behavior and considerably improve performance at modest cost.
Abstract: Simulation results of three adaptive, decentralized controlled job scheduling algorithms which assume absolutely no a priori knowledge about jobs are presented. The results provide insight into the workings and relative effectiveness of the three algorithms, as well as insight into the performance of a special type of decentralized control. The simulation approach includes tuning the parameters of each algorithm, and then comparing the three algorithms based on response time, load balancing and the percentage of job movement. Each of the algorithm is compared under light, moderate, and heavy loads in the system, as well as a function of the traffic in the communication subnet and the scheduling interval. Modifications to the models are then introduced to further investigate the impact of various other parameters such as the cost of the scheduling algorithm itself, the effect of highly degraded state information and eliminating the movement of large (in size) jobs. Three simple analytical models are also presented and compared to the simulation results. A general observation is that, if tuned correctly, the decentralized algorithms exhibit stable behavior and considerably improve performance (response time and load balancing) at modest cost (percentage of job movement and algorithm execution cost).

63 citations




Book
01 Jan 1984
TL;DR: This dissertation investigates automatic partitioning, scheduling, and fault tolerance for distributed applications on a network of personal computers using a language and execution environment called STARDUST, which uses a single applicative language for both the task structure and the algorithm.
Abstract: This dissertation investigates automatic partitioning, scheduling, and fault tolerance for distributed applications on a network of personal computers. Previous distribution systems in loosely coupled environments have used a special process control language or special language features to describe the task structure of a program while the lower level algorithms were defined in a standard algorithmic language. Like many of the systems proposed for tightly coupled processors, we use a single applicative language for both the task structure and the algorithm, doing away with the distinction between tasks and functions by making every function a potential task. However, the network environment has deeply influenced the design: the long communication latencies commit the system to large grain parallelism and carefully planned communication strategies. The product of the research is a language and execution environment called STARDUST. STARDUST programs are written in a general-purpose applicative language and marked with an estimate of each function's execution time. The system partitions the programs by expanding user function calls with high execution time estimates and by breaking up calls to the system's list operators. The segments are scheduled on the available processors, taking into account both load balancing and the costs of message passing. Failed tasks can be restarted by moving them to surviving processors. Three sets of experiments run on Perq computers and an Ethernet gave two successes and one failure. The quick sort experiment failed to achieve significant speedups due to some poor scheduling heuristics and large amounts of overhead that could not be transferred to other processors. The six-processor versions of the signal processing and molecular modelling experiments showed speedups of about two when the exported function calls took one second to evaluate, and speedups of over three when the exported calls took five seconds. Message passing and interpreter overhead are the main reasons that such a large granularity is needed; partitioning and scheduling do not contribute significantly to overall execution time. The experimental results also include a demonstration of automatic failure recovery and run-time redundant subcomputation elimination.

16 citations


Journal ArticleDOI
TL;DR: Delays and blocking probability comparisons between this rule and three other adaptive load balancing rules, the JSQ (join-the-shortest-queue) rule, the GBQ (generalized biased queue)Rule, and the MRT (minimum response time) rule show that it is always superior under widely different conditions on a three-parallel-queue system.
Abstract: A new adaptive rule for balancing the load on many parallel queues is designed. The queueing system can accommodate different types of customers where each type is persistent in joining a particular set of queues. The rule makes use of a set of bias levels to compare the queue lengths and makes use of the majority-vote rule for propagating the routing decisions to the different types of customers. Delay and blocking probability comparisons between this rule and three other adaptive load balancing rules, the JSQ (join-the-shortest-queue) rule, the GBQ (generalized biased queue) rule, and the MRT (minimum response time) rule, show that it is always superior under widely different conditions on a three-parallel-queue system.

7 citations


Journal ArticleDOI
TL;DR: An adaptive scheduling algorithm which controls the input of the system in order to maximize a given performance criterion, such as the system throughput, is presented and provides useful information about the limits on the performance indexes that can be achieved with a multiclass workload.
Abstract: Applications of modeling techniques based on queueing theory to computer system performance analysis normally assume the existence of steady-state conditions. However, these conditions are often violated since the unpredictable composition of workload causes peaks having highly variable intensities and durations. Furthermore, computer system performance is highly dependent on how the system reacts to workload fluctuations. Automatic control mechanisms are required to take care of the high variance of resource demands. Real-time optimization of the overall performance of a computer system requires the introduction of adaptive control on the controlled functions, An adaptive scheduling algorithm which controls the input of the system in order to maximize a given performance criterion, such as the system throughput, is presented. The system load is adjusted depending on the characteristics of both the mix of jobs in execution and the mix of jobs submitted to the system and waiting in the input queue. The asymptotic analysis of the performance bounds provides useful information about the limits on the performance indexes that can be achieved with a multiclass workload. The evaluation of the adaptive control system is performed through simulation experiments using data collected from two real workloads. This technique could be used to optimize the throughput of a centralized system as well as for the automatic load balancing in a distributed environment.

6 citations


Proceedings Article
01 Jan 1984

5 citations


01 Jan 1984
TL;DR: This paper considers distributed recursive computations and proposes a class of processor networks that admits a homogeneous dist ribution of processes and trivial routing and identifies a subclass that admitting a planar embedding of the network.
Abstract: Distributed computations may be viewed as a set of communicating processes. If such a computation is to be executed by a multi-processor system, the processes have to be distributed over the processors and the communications have to be distributed over a network. This leads to the questions of load balancing and message routing. In this paper we consider distributed recursive computations and we propose a class of processor networks that admits a homogeneous dist ribution of processes and trivial routing. Furthermore, we identify a subclass that admits a planar embedding of the network.

1 citations