Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

A Cooperative Approach to TwoPhase Waiting Andrea C. ArpaciDusseau

Summary: A Cooperative Approach to Two­Phase Waiting
Andrea C. Arpaci­Dusseau
Stanford University
David E. Culler
University of California, Berkeley
Competitive analysis is traditionally used to bound the worst­case performance of two­phase waiting,
a common algorithm in multiprocessor environments. Despite the popularity of competitive algorithms,
we observe that their assumptions are not valid in closed systems in which processes can influence their
future waiting times. By evaluating implicit coscheduling on time­shared, communicating processes in a
distributedsystem, we show that spin­time should instead be calculated with cooperative methods. Rather
than reacting to a fixed stream of adversarial waiting times, our cooperative algorithm minimizes future
waiting times by keeping processes that belong to the same parallel job coordinated across machines.
Another common assumption in two­phase waiting is that the penalty of blocking is a fixed amount,
equal to the cost of a context­switch performed by the operating system scheduler. However, in implicit
coscheduling, the penalty of blocking is dynamic, related to the number of arriving messages. To handle
this complication, we leverage conditional two­phase waiting, a generalization in which spin­time may
be altered, depending upon events that occur while the process is waiting. Through simulations, we show


Source: Arpaci-Dusseau, Andrea - Department of Computer Sciences, University of Wisconsin at Madison


Collections: Computer Technologies and Information Sciences