Protecting Memory-Performance Critical Sections in Soft Real-Time Applications

02/08/2015
by   Heechul Yun, et al.
0

Soft real-time applications such as multimedia applications often show bursty memory access patterns—regularly requiring a high memory bandwidth for a short duration of time. Such a period is often critical for timely data processing. Hence, we call it a memory-performance critical section. Unfortunately, in multicore architecture, non-real-time applications on different cores may also demand high memory bandwidth at the same time, which can substantially increase the time spent on the memory performance critical sections. In this paper, we present BWLOCK, user-level APIs and a memory bandwidth control mechanism that can protect such memory performance critical sections of soft real-time applications. BWLOCK provides simple lock like APIs to declare memory-performance critical sections. If an application enters a memory-performance critical section, the memory bandwidth control system then dynamically limit other cores' memory access rates to protect memory performance of the application until the critical section finishes. From case studies with real-world soft real-time applications, we found (1) such memory-performance critical sections do exist and are often easy to identify; and (2) applying BWLOCK for memory critical sections significantly improve performance of the soft real-time applications at a small or no cost in throughput of non real-time applications.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/23/2017

HourGlass: Predictable Time-based Cache Coherence Protocol for Dual-Critical Multi-Core Systems

We present a hardware mechanism called HourGlass to predictably share da...
research
03/09/2021

MapVisual: A Visualization Tool for Memory Access Patterns

Memory bandwidth is strongly correlated to the complexity of the memory ...
research
01/12/2023

Neural Shadow Mapping

We present a neural extension of basic shadow mapping for fast, high qua...
research
12/31/2020

Data Criticality in Multi-Threaded Applications: An Insight for Many-Core Systems

Multi-threaded applications are capable of exploiting the full potential...
research
01/09/2014

Performance Impact of Lock-Free Algorithms on Multicore Communication APIs

Data race conditions in multi-tasking software applications are prevente...
research
04/25/2022

Analyze, Debug, Optimize: Real-Time Tracing for Perception and Mapping Systems in ROS 2

Perception and mapping systems are among the most computationally, memor...
research
04/01/2020

Assessing Impact of Data Partitioning for Approximate Memory in C/C++ Code

Approximate memory is a technique to mitigate the performance gap betwee...

Please sign up or login with your details

Forgot password? Click here to reset