Load balancing requires &OHgr;(log*n) expected time

  • Authors:
  • Philip D. MacKenzie

  • Affiliations:
  • -

  • Venue:
  • SODA '92 Proceedings of the third annual ACM-SIAM symposium on Discrete algorithms
  • Year:
  • 1992

Quantified Score

Hi-index 0.00

Visualization

Abstract

In order to obtain very fast parallel algorithms, it is almost always necessary to have some sort of load balancing procedure, so that processors which have finished their required tasks can help processors which have not. If the overloaded processors are not helped, then the expected time of the entire algorithm suffers. In general, we would like to distribute the remaining work as evenly as possible among the processors, or more formally, given at most n independent tasks distributed in an arbitrary way among n processors, we would like to redistribute the tasks so that each processor contains O(1) tasks. We show here that even on the strongest randomized CRCW PRAM model, for a simple random distribution tasks load balancing requires &OHgr;(log* n) expected time. Gil, Matias, and Vishkin [9] give an O(log* n) expected time randomized algorithm which solves the load balancing problem in the worst case, so the lower bound is tight.By reduction we show that both Padded Sort [12], and Linear Approximate Compaction [13] require &OHgr;(log* n) expected time. We note that our basic technique is one of the few parallel lower bound techniques known which only require 0/1 inputs. We also note that the bounds given in this paper do not place any restriction on the instruction set of the machine, the amount of information which can be stored in a memory cell, or on the number of memory cells.