Feature/probinso/fast schedule dependents#183
Conversation
This reverts commit b24c45b86f44b78afaf6a82bfc272061889c9b3f.
| return | ||
|
|
||
| Production schedulers also need logging, retry behavior, group-output handling, | ||
| periodic reports, and a cheap "work remains" check. The example shows the |
There was a problem hiding this comment.
It looks like we could use start_available for step() but right now step also returns true if there is still work to do. Can ready_count be used for this or do we still need to maintain a list of groups and check for CREATED (or something similar)?
There was a problem hiding this comment.
If I'm understanding your question, ready_count would exclude tests that are CREATED but blocked by dependencies, which I think would be different than what you're referring to.
There was a problem hiding this comment.
I might be looking too far ahead but I was thinking about this loop and probably trying to prematurely optimize. I was wondering if we could use ready_count to determine if work still needed to be done. That is, since the dependencies are being counted then would 0 ready_count indicate all work finished?
|
This looks like good infrastructure for future work. |
Summary
Adds reusable ATS ready-queue helpers for schedulers that cache structurally
ready work and choose the largest priority bucket that meets a user defined readiness criteria.
Changes
ats.ready_queue.ReadyWorkSetfor priority-binned ready work.including a copyable minimal scheduler example.
comments
This is the first of ~6 upcoming branches enabling reduction in scheduling overheads.