DOPPLER: Dual-Policy Learning for Device Assignment in Asynchronous Dataflow Graphs
The paper introduces Doppler, a three-stage dual-policy learning framework that optimizes device assignment for asynchronous dataflow graphs by combining operation selection and placement policies to outperform existing learning-based and heuristic methods in reducing execution time and improving training efficiency.
Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer
Imagine you are the manager of a massive, high-speed kitchen with eight chefs (GPUs) working together to prepare a giant, complex meal (a machine learning task).
The Problem: The "Wait-for-Everyone" Rule
In most current kitchens (like standard AI systems), the chefs work in strict, synchronized steps.
- Step 1: All eight chefs chop their vegetables.
- Step 2: They must all stop and wait until the slowest chef finishes chopping.
- Step 3: Only then can they start cooking the next part.
This is inefficient. If Chef #7 is slow, the other seven chefs stand around doing nothing, wasting time and energy. This is called a "synchronous" system.
The Goal: The "Work-Conserving" Kitchen
The paper proposes a better way called a Work-Conserving (WC) system. In this kitchen, as soon as a chef finishes a task, they immediately grab the next available task. They don't wait for the group; they just keep working.
- The Challenge: Without a strict schedule, chaos can happen. Chefs might fight over the same ingredients, or one chef might get buried in work while another sits idle. Figuring out who does what and when in this chaotic, fast-paced environment is incredibly hard.
The Solution: DOPPLER
The authors created a smart AI manager named DOPPLER to solve this assignment problem. Instead of trying to solve the whole puzzle at once, DOPPLER uses a "dual-policy" approach, which is like having two specialized assistants:
- The Selector (SEL): This assistant looks at the recipe (the dataflow graph) and decides which task should be picked next. It figures out the best order to grab tasks, similar to a conductor deciding which instrument plays next in a jazz improvisation.
- The Placer (PLC): Once the task is picked, this assistant decides which chef should do it. It looks at who is currently busy, who is free, and which chef is closest to the ingredients to minimize running back and forth (communication).
How DOPPLER Learns (The Three-Stage Training)
You can't just throw a new manager into a busy kitchen and expect them to be perfect immediately. DOPPLER learns in three stages:
- Stage 1: The Internship (Imitation Learning): DOPPLER watches an experienced human manager (a standard rule-based algorithm) and copies their moves. It learns the basics of "good behavior" without making expensive mistakes.
- Stage 2: The Simulation (Simulation-Based RL): DOPPLER practices in a virtual kitchen (a computer simulator). It tries different strategies, sees what happens, and learns from its mistakes. If it causes a traffic jam in the simulation, it learns not to do that again.
- Stage 3: The Real Job (Real-System RL): Finally, DOPPLER is deployed in the actual kitchen. It continues to learn on the fly. If a specific chef is slower than expected or a specific ingredient takes longer to prep, DOPPLER adjusts its strategy in real-time to keep things moving fast.
The Results
The paper tested DOPPLER on various complex "recipes" (like matrix multiplications and large language models).
- Speed: DOPPLER made the kitchen run significantly faster. In some cases, it reduced the total cooking time by 52.7% compared to the best existing methods.
- Efficiency: It kept the chefs busy much more often, reducing the time they spent waiting or running back and forth.
- Adaptability: Even when the kitchen setup changed (different number of chefs or different types of tasks), DOPPLER could adapt quickly, often performing as well as a fully trained manager with very little extra practice.
In short, DOPPLER is a smart, two-part AI system that learns to manage a chaotic, fast-paced computing environment by first copying experts, then practicing in a simulator, and finally fine-tuning itself in the real world to save massive amounts of time and computing power.
Drowning in papers in your field?
Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.