We consider the max-min fair resource allocation problem. The best-known solutions use either a sequence of optimizations or waterfilling, which only applies to a narrow set of cases. These solutions have become a practical bottleneck in WAN traffic engineering and cluster scheduling, especially at larger problem sizes. We improve both approaches: (1) we show how to convert the optimization sequence into a single fast optimization, and (2) we generalize waterfilling to the multi-path case. We empirically show our new algorithms Pareto-dominate prior techniques: they produce faster, fairer, and more efficient allocations. Some of our allocators also have theoretical guarantees: they trade off a bounded amount of unfairness for faster allocation. We have deployed our allocators in Azure's WAN traffic engineering pipeline, where we preserve solution quality and achieve a roughly $3\times$ speedup.
翻译:我们考虑最大最小公平资源分配问题。现有最优解法要么使用一系列优化步骤,要么采用仅适用于狭隘场景的水填充法。这些解法已成为广域网流量工程和集群调度中的实际瓶颈,尤其在问题规模较大时更为突出。我们改进了这两种方法:(1)展示了如何将优化序列转化为单次快速优化;(2)将水填充法推广至多路径场景。实验表明,我们的新算法在帕累托意义上优于先前技术:能产生更快、更公平且更高效的分配方案。部分分配器还具备理论保证——通过牺牲有界的不公平性来换取更快的分配速度。我们已将分配器部署于Azure的广域网流量工程流水线中,在保持解质量的同时实现了约3倍的加速。