Check out the new USENIX Web site. next up previous
Next: Idleness detector and automatic Up: Implementation Previous: Task type group file

Task manager and sample queue

RSTask keeps track of ongoing tasks and makes appropriate calls to the scheduler when tasks begin and end. Also, when a task ends, the task manager queues the information about how long this task took in the sample queue. It does not immediately invoke the PACE calculator since PACE calculation is best done when the CPU is otherwise idle.

As stated in Section 4.7, when no tasks are ongoing, we wait for a short period then initiate an interval-based scheduler. We do this on the Transmeta system in the following way. When RSTask detects the departure of the last ongoing task, it switches to the lowest available speed and sets a 50 ms timer. When the timer expires, it enters the LongRun $ ^{\text {TM}}$ automatic speed scheduling mode, which uses an interval-based strategy. We chose 50 ms because this is further backward than LongRun $ ^{\text {TM}}$'s scheduler ever looks. We have not yet implemented a scheme using an interval-based scheduler on the AMD system.



Jay Lorch 2003-02-19