Three Dimensions of Scheduling
-
Author:
Frank Bellosa
-
Source:
Dissertation, University of Erlangen-Nürnberg, Germany, November 27, 1998
- Date: 27.11.1998
-
Abstract:
The research presented in this dissertation has concentrated on the gathering and usage of memory access patterns in the area of user-level as well as kernel-level scheduling, yet covering both time-sharing and real-time aspects. Beside the questions when a task has to be executed and which CPU should be used, the freedom of scheduling is enlarged to a third dimension, the speed of execution.
To alleviate the cache effects perceivable after a context switch, Follow-On Scheduling extracts information gathered by the virtual memory subsystem to identify threads which share many pages. These related threads are scheduled so that they follow upon each other when being executed.The benefit of using memory access patterns on the coarse level of page access lies in the reduction of the number of cache misses a thread experiences after the switch if a related thread has run on the same CPU before.
The trade-off between scheduling overhead and performance gain due to better locality of reference favors strategies using memory access patterns on the level of cache access in architectures with non-uniform memory access. A promising strategy using cache-miss information is based on a Markov model to estimate the cost to establish a thread’s footprint in the cache after restarting it. This strategy offers the best process reordering and makes a fine-grained architecture-independent programming style possible.
A novel approach, called Process Cruise Control, effectively isolates real-time threads from the timing and memory-access characteristics of other threads running on different processing units in a multiprocessor environment. Process Cruise Control avoids the malicious effects of memory preemption by a complete memorybandwidth reservation scheme based on information derived from memory-access counters in the hardware. The execution speed of soft real-time applications is maintained while other applications with high memory demands are throttled in their speed of execution.
BibTex:
@phdthesis{bellosa98scheduling,
author = {Frank Bellosa},
title = {Three Dimensions of Scheduling},
address = {University of Erlangen-N\"urnberg, Germany},
month = nov # "~27",
year = 1998
}