Arachne Priorities and Starvation
PRIORITY DESIGN QUESTIONS
Are two priorities sufficient?
How do we manage starvation?
What is the performance cost of having arbitrary priority levels?
HOW TO PREVENT STARVATION
In a priority system, do we want to starve the low priority threads?
Consider specific actual or expected use cases.
Idea 1: Ensure that the number of CPU-bound high priority threads is lower than the number of cores.
Idea 2: Ensure there is at least one core to run only low priority threads, even if that means putting more than one high-priority thread on the same core.