Tuning mechanism for the Lifeline GLB
In the lifeline-based global load balancer library, workers on a host perform a certain amount of work before checking the runtime and performing load-balance operations if needed. The granularity is the amount of work performed is defined by an integer. If this value is too small, overhead will appear. On the contrary if it is too large, starvation will occur. Both are detrimental to the performance of the system, it is therefore critical to find a good compromise.
Given that the adequate value to use will depend on the computation being run with the lifeline-based GLB, it is not possible to know “a priori” what a good value will be. The tuning mechanism we developped monitors the most recent situation (last ~500ms) to make a determination on whether the grain currently in use is either too large or too small [1], [2]. It then adjusts the value dynamically throughout the computation.
See the tuning mechanism in action:

External links
References
Enjoy Reading This Article?
Here are some more articles you might like to read next: