Results 1  10
of
117
High Speed Switch Scheduling for Local Area Networks
 ACM Transactions on Computer Systems
, 1993
"... Current technology trends make it possible to build communication networks that can support high performance distributed computing. This paper describes issues in the design of a prototype switch for an arbitrary topology pointtopoint network with link speeds of up to one gigabit per second. The s ..."
Abstract

Cited by 201 (3 self)
 Add to MetaCart
Current technology trends make it possible to build communication networks that can support high performance distributed computing. This paper describes issues in the design of a prototype switch for an arbitrary topology pointtopoint network with link speeds of up to one gigabit per second. The switch deals in fixedlength ATMstyle cells, which it can process at a rate of 37 million cells per second. It provides high bandwidth and low latency for datagram traffic. In addition, it supports realtime traffic by providing bandwidth reservations with guaranteed latency bounds. The key to the switch's operation is a technique called parallel iterative matching, which can quickly identify a set of conflictfree cells for transmission in a time slot. Bandwidth reservations are accommodated in the switch by building a fixed schedule for transporting cells from reserved flows across the switch; parallel iterative matching can fill unused slots with datagram traffic. Finally, we note that pa...
The Power of Two Choices in Randomized Load Balancing
 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
, 1996
"... Suppose that n balls are placed into n bins, each ball being placed into a bin chosen independently and uniformly at random. Then, with high probability, the maximum load in any bin is approximately log n log log n . Suppose instead that each ball is placed sequentially into the least full of d ..."
Abstract

Cited by 201 (23 self)
 Add to MetaCart
Suppose that n balls are placed into n bins, each ball being placed into a bin chosen independently and uniformly at random. Then, with high probability, the maximum load in any bin is approximately log n log log n . Suppose instead that each ball is placed sequentially into the least full of d bins chosen independently and uniformly at random. It has recently been shown that the maximum load is then only log log n log d +O(1) with high probability. Thus giving each ball two choices instead of just one leads to an exponential improvement in the maximum load. This result demonstrates the power of two choices, and it has several applications to load balancing in distributed systems. In this thesis, we expand upon this result by examining related models and by developing techniques for stu...
Scheduling Algorithms for Inputqueued Cell Switches
, 1995
"... The algorithms described in this thesis are designed to schedule cells in a very highspeed, parallel, inputqueued crossbar switch. We present several novel scheduling algorithms that we have devised, each aims to match the set of inputs of an inputqueued switch to the set of outputs more effici ..."
Abstract

Cited by 138 (4 self)
 Add to MetaCart
The algorithms described in this thesis are designed to schedule cells in a very highspeed, parallel, inputqueued crossbar switch. We present several novel scheduling algorithms that we have devised, each aims to match the set of inputs of an inputqueued switch to the set of outputs more efficiently, fairly and quickly than existing techniques. In Chapter 2 we present the simplest and fastest of these algorithms: SLIP  a parallel algorithm that uses rotating priority ("roundrobin") arbitration. SLIP is simple: it is readily implemented in hardware and can operate at high speed. SLIP has high performance: for uniform i.i.d. Bernoulli arrivals, SLIP is stable for any admissible load, because the arbiters tend to desynchronize. We present analytical results to model this behavior. However, SLIP is not always stable and is not always monotonic: adding more traffic can actually make the algorithm operate more efficiently. We present an approximate analytical model of this behavior. SLIP prevents starvation: all contending inputs are eventually served. We present simulation results, indicating SLIP's performance. We argue that SLIP can be readily implemented for a 32x32 switch on a single chip. In Chapter 3 we present iSLIP, an iterative algorithm that improves upon SLIP by converging on a maximal size match. The performance of iSLIP improves with up to log 2 N iterations. We show that although it has a longer running time than SLIP, an iSLIP scheduler is little more complex to implement. In Chapter 4 we describe maximum or maximal weight matching algorithms based on the occupancy of queues, or waiting times of cells. These algorithms are stabl...
Competitive NonPreemptive Call Control
"... We deal with randomized competitive algorithms for nonpreemptive call control on treelike switching networks. We give an optimal O(log n) competitive algorithm for nonpreemptive call scheduling on trees. We then extend the problem to include variable call rates, call durations, and arbitrary call ..."
Abstract

Cited by 110 (8 self)
 Add to MetaCart
We deal with randomized competitive algorithms for nonpreemptive call control on treelike switching networks. We give an optimal O(log n) competitive algorithm for nonpreemptive call scheduling on trees. We then extend the problem to include variable call rates, call durations, and arbitrary call benefits, and obtain a polylog competitive algorithm. We also show that many similar algorithms for different problems that can deal with constant values of parameters such as rates and benefits can be transformed into randomized algorithms that can deal with varying values of the parameters.
Online Load Balancing
 Theoretical Computer Science
, 1992
"... . We survey online load balancing on various models. 1 Introduction General: The machine load balancing problem is defined as follows: There are n parallel machines and a number of independent tasks (jobs); the tasks arrive at arbitrary times, where each task has an associated load vector and dur ..."
Abstract

Cited by 100 (15 self)
 Add to MetaCart
. We survey online load balancing on various models. 1 Introduction General: The machine load balancing problem is defined as follows: There are n parallel machines and a number of independent tasks (jobs); the tasks arrive at arbitrary times, where each task has an associated load vector and duration. A task has to be assigned immediately to exactly one of the machines, thereby increasing the load on this machine by the amount specified by the corresponding coordinate of the load vector for the duration of the task. All tasks must be assigned, i.e., no admission control is allowed. The goal is usually to minimize the maximumload, but we also consider other goal functions. We mainly consider nonpreemptive load balancing, but in some cases we may allow preemption i.e., reassignments of tasks. All the decisions are made by a centralized controller. The online load balancing problem naturally arises in many applications involving allocation of resources. As a simple concrete example,...
The Power of Two Random Choices: A Survey of Techniques and Results
 in Handbook of Randomized Computing
, 2000
"... ITo motivate this survey, we begin with a simple problem that demonstrates a powerful fundamental idea. Suppose that n balls are thrown into n bins, with each ball choosing a bin independently and uniformly at random. Then the maximum load, or the largest number of balls in any bin, is approximately ..."
Abstract

Cited by 99 (2 self)
 Add to MetaCart
ITo motivate this survey, we begin with a simple problem that demonstrates a powerful fundamental idea. Suppose that n balls are thrown into n bins, with each ball choosing a bin independently and uniformly at random. Then the maximum load, or the largest number of balls in any bin, is approximately log n= log log n with high probability. Now suppose instead that the balls are placed sequentially, and each ball is placed in the least loaded of d 2 bins chosen independently and uniformly at random. Azar, Broder, Karlin, and Upfal showed that in this case, the maximum load is log log n= log d + (1) with high probability [ABKU99]. The important implication of this result is that even a small amount of choice can lead to drastically different results in load balancing. Indeed, having just two random choices (i.e.,...
Adwords and generalized online matching
 In FOCS ’05: Proceedings of the 46th Annual IEEE Symposium on Foundations of Computer Science
, 2005
"... How does a search engine company decide what ads to display with each query so as to maximize its revenue? This turns out to be a generalization of the online bipartite matching problem. We introduce the notion of a tradeoff revealing LP and use it to derive two optimal algorithms achieving competit ..."
Abstract

Cited by 99 (5 self)
 Add to MetaCart
How does a search engine company decide what ads to display with each query so as to maximize its revenue? This turns out to be a generalization of the online bipartite matching problem. We introduce the notion of a tradeoff revealing LP and use it to derive two optimal algorithms achieving competitive ratios of 1 − 1/e for this problem. 1
The Competitiveness of OnLine Assignments
, 1992
"... Consider the online problem where a number of servers are ready to provide service to a set of customers. Each customer's job can be handled by any of a subset of the servers. Customers arrive onebyone and the problem is to assign each customer to an appropriate server in a manner that will balan ..."
Abstract

Cited by 99 (18 self)
 Add to MetaCart
Consider the online problem where a number of servers are ready to provide service to a set of customers. Each customer's job can be handled by any of a subset of the servers. Customers arrive onebyone and the problem is to assign each customer to an appropriate server in a manner that will balance the load on the servers. This problem can be modeled in a natural way by a bipartite graph where the vertices of one side (customers) appear one at a time and the vertices of the other side (servers) are known in advance. We derive tight bounds on the competitive ratio in both deterministic and randomized cases. Let n denote the number of servers. In the deterministic case we provide an online algorithm that achieves a competitive ratio of k = dlog 2 ne (up to an additive 1) and prove that this is the best competitive ratio that can be achieved by any deterministic online algorithm. In a similar way we prove that the competitive ratio for the randomized case is k 0 = ln(n) (up to an a...
Approximation algorithms for combinatorial auctions with complementfree bidders
 In Proceedings of the 37th Annual ACM Symposium on Theory of Computing (STOC
, 2005
"... We exhibit three approximation algorithms for the allocation problem in combinatorial auctions with complement free bidders. The running time of these algorithms is polynomial in the number of items m and in the number of bidders n, even though the “input size ” is exponential in m. The first algori ..."
Abstract

Cited by 94 (22 self)
 Add to MetaCart
We exhibit three approximation algorithms for the allocation problem in combinatorial auctions with complement free bidders. The running time of these algorithms is polynomial in the number of items m and in the number of bidders n, even though the “input size ” is exponential in m. The first algorithm provides an O(log m) approximation. The second algorithm provides an O ( √ m) approximation in the weaker model of value oracles. This algorithm is also incentive compatible. The third algorithm provides an improved 2approximation for the more restricted case of “XOS bidders”, a class which strictly contains submodular bidders. We also prove lower bounds on the possible approximations achievable for these classes of bidders. These bounds are not tight and we leave the gaps as open problems. 1
OnLine Routing of Virtual Circuits with Applications to Load Balancing and Machine Scheduling
, 1993
"... In this paper we study the problem of online allocation of routes to virtual circuits (both pointtopoint and multicast) where the goal is to minimize the required bandwidth. We concentrate on the case of permanent virtual circuits (i.e., once a circuit is established, it exists forever), and descr ..."
Abstract

Cited by 72 (7 self)
 Add to MetaCart
In this paper we study the problem of online allocation of routes to virtual circuits (both pointtopoint and multicast) where the goal is to minimize the required bandwidth. We concentrate on the case of permanent virtual circuits (i.e., once a circuit is established, it exists forever), and describe an algorithm that achieves an O(log n) competitive ratio with respect to maximum congestion, where n is the number of nodes in the network. Informally, our results show that instead of knowing all of the future requests, it is sufficient to increase the bandwidth of the communication links by an O(log n) factor. We also show that this result is tight, i.e. for any online algorithm there exists a scenario in which O(log n) increase in bandwidth is necessary. We view virtual circuit routing as a generalization of an online load balancing problem, defined as follows: jobs arrive on line and each job must be assigned to one of the machines immediately upon arrival. Assigning a job to a machine increases this machine’s load by an amount that depends both on the job and on the machine. The goal is to minimize the maximum load. For the related machines case, we describe the first algorithm that achieves constant competitive ratio. For the unrelated case (with n machines), we describe a new method that yields O(log n)competitive