Litcius/Paper detail

RLQ: Workload Allocation With Reinforcement Learning in Distributed Queues

Alessandro Staffolani, Victor-Alexandru Darvariu, Paolo Bellavista, Mirco Musolesi

2023IEEE Transactions on Parallel and Distributed Systems17 citationsDOIOpen Access PDF

Abstract

Distributed workload queues are nowadays widely used due to their significant advantages in terms of decoupling, resilience, and scaling. Task allocation to worker nodes in distributed queue systems is typically simplistic (e.g., Least Recently Used) or uses hand-crafted heuristics that require task-specific information (e.g., task resource demands or expected time of execution). When such task information is not available and worker node capabilities are not homogeneous, the existing placement strategies may lead to unnecessarily large execution timings and usage costs. In this work, we formulate the task allocation problem in the <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">Markov Decision Process</i> framework, in which an agent assigns tasks to an available resource, and receives a numerical reward signal upon task completion. Our adaptive and learning-based task allocation solution, Reinforcement Learning based Queues ( <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">RLQ</i> ), is implemented and integrated with the popular Celery task queuing system for Python. We compare <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">RLQ</i> against traditional solutions using both synthetic and real workload traces. On average, using synthetic workloads, <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">RLQ</i> reduces the execution cost by approximately 70%, the execution time by a factor of at least 3×, and the waiting time by almost 7×. Using real traces, we observe an improvement of about 20% for execution cost, around 70% improvement for execution time, and a reduction of approximately 20× in waiting time. We also compare <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">RLQ</i> with a strategy inspired by E-PVM, a state-of-the-art solution used in Google's Borg cluster manager, showing we are able to outperform it in five out of six scenarios.

Topics & Concepts

Computer scienceWorkloadReinforcement learningQueueHeuristicsScheduling (production processes)Task (project management)Artificial intelligenceDistributed computingMachine learningMathematical optimizationOperating systemProgramming languageMathematicsManagementEconomicsAge of Information OptimizationAdvanced Queuing Theory AnalysisReal-Time Systems Scheduling
RLQ: Workload Allocation With Reinforcement Learning in Distributed Queues | Litcius