Make rr's scheduler more sophisticated
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 10.7k
- Forks
- 662
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 2
Description
With the exception of strict priority classes, rr's scheduler is about as simple as it could be. One way to improve things is with #799.
Another, potentially complementary, way is to make rr's scheduler more sophisticated. OS schedulers are pretty much a solved problem on the research side. State of the art is HFSC and derivatives (linux does something related called CFS), at least as of a few years ago. It's relatively simple to implement and would let rr's scheduler behave more like linux's. This might improve perf or perceived responsiveness on recorder workloads.
We would want this to be the default, but also allow rr to have another mode where it scheduled using random or directed heuristics, for bug finding.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading issue #799 and reviewing rr's current scheduler behavior. Research HFSC, CFS, and the existing random or directed scheduling needs described here. Done means a more sophisticated scheduler is the default while an alternate mode remains available for bug-finding heuristics.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- devtools, operating-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100