Back to problems

Design a Dependency-Aware Concurrent Tool Scheduler

Object-Oriented Programming · OpenAI · Medium

Sequential Topological Simulation The core challenge is to sequence tasks so that a task never begins before every one of its dependencies has finished. When the dependency graphs are guaranteed to be directed acyclic graphs (DAGs), topological ordering gives us a natural execution order. A task is ready when its in-degree (the number of unfinished upstream tasks) reaches zero. To respect the global execution limit, we process the DAG in waves. At each wave, we collect all…

Checking your access…