Analyzing Distributed Join-Idle-Queue: A Fluid Limit Approach
  In the context of load balancing, Lu et al. introduced the distributed Join-Idle-Queue algorithm, where a group of dispatchers distribute jobs to a cluster of parallel servers. Each dispatcher maintains a queue of idle servers; when a job arrives to a dispatcher, it sends it to a server on its queue, or to a random server if the queue is empty. In turn, when a server has no jobs, it requests to be placed on the idle queue of a randomly chosen dispatcher.   Although this algorithm was shown to be quite effective, the original asymptotic analysis makes simplifying assumptions that become increasingly inaccurate as the system load increases. Further, the analysis does not naturally generalize to interesting variations, such as having a server request to be placed on the idle queue of a dispatcher before it has completed all jobs, which can be beneficial under high loads.   We provide a new asymptotic analysis of Join-Idle-Queue systems based on mean field fluid limit methods, deriving families of differential equations that describe these systems. Our analysis avoids previous simplifying assumptions, is empirically more accurate, and generalizes naturally to the variation described above, as well as other simple variations. Our theoretical and empirical analyses shed further light on the performance of Join-Idle-Queue, including potential performance pitfalls under high load. 
Michael Mitzenmacher
cs.DC cs.DS cs.NI cs.PF