IMMD-IV UP HELP Feb 13, 2004

Process Cruise Control: Throttling Memory Access in a Soft Real-Time Environment

Technical Report TR-I4-97-02

Process Cruise Control: Throttling Memory Access in a Soft Real-Time Environment
Frank Bellosa
english July 1997, 14 pages
TR-I4-97-02
[Abstract] [Full Paper (ps,http) , 53 kB] [Full Paper (pdf) , 50 kB]

Abstract: The advances in memory technology concerning performance have not been able to keep pace with those in processor technology. Processors clocked with hundreds of megahertz exceed the speed of affordable memory by factors. Caches can decouple the speed of the processing unit from the speed of the memory system if applications show a high locality of reference. Unfor tunately, operations on data streams ­ frequently found in soft real-time multimedia applications ­ do not show this benign behavior. Thus, applications working on data streams rely heavily upon a guaranteed memory bandwidth to meet specific timing requirements. In multiprocessor systems the available memory bandwidth is shared by all processing units and DMA devices. Consequently, the processing units can interfere and slow each other down when accessing memory. Up to now, this effect, called memory preemption, is not covered by real- time operating systems using timer and I/O related information. Our novel approach to resource management is based on knowledge derived from counters in the memory subsystem. We demonstrate that the use of information related to cache- and main- memory access opens new dimensions of resource management in shared-memory architec tures. The introduction of memory-bandwidth guarantees adds a further resource to capacity- reservation models and therefore enhances the quality of service. Soft real-time processes can request memory bandwidth guarantees. Processes without guaran tees are throttled, so that they do not withhold valuable main memory bandwidth from real-time applications. To dynamically slow down processes that exceed a certain number of main mem ory operations per time frame, the TLB-miss handler executes additional NOP instructions. Thus, the TLB-fill will be delayed, fewer memory pages can be touched and fewer cache misses per time frame will occur. This new mechanism, called Process Cruise Control, maintains the execution speed of soft real-time applications in a multiprocessor environment. Applications of other scheduling classes (e.g., Time-Sharing), which operate with low memory demands, run at full speed, whereas applications with high memory demands will be throttled in their speed of execution and executed with lower priority. Measurements conducted on a prototype implementation using the Solaris operating system clearly demonstrate the benefit of the memory throttle for a video conferencing application running in a multiprogrammed multiprocessor environment.


Generated by tr2html V1.3 - © 1998-1999 Michael Golm.