Abstract
Memory bandwidth in modern multi-core platforms is highly variable for many reasons and it is a big challenge in designing real-time systems as applications are increasingly becoming more memory intensive. In this work, we proposed, designed, and implemented an efficient memory bandwidth reservation system, that we call MemGuard. MemGuard separates memory bandwidth in two parts: guaranteed and best effort. It provides bandwidth reservation for the guaranteed bandwidth for temporal isolation, with efficient reclaiming to maximally utilize the reserved bandwidth. It further improves performance by exploiting the best effort bandwidth after satisfying each core's reserved bandwidth. MemGuard is evaluated with SPEC2006 benchmarks on a real hardware platform, and the results demonstrate that it is able to provide memory performance isolation with minimal impact on overall throughput.
Original language | English (US) |
---|---|
Article number | 7093151 |
Pages (from-to) | 562-576 |
Number of pages | 15 |
Journal | IEEE Transactions on Computers |
Volume | 65 |
Issue number | 2 |
DOIs | |
State | Published - Feb 1 2016 |
Keywords
- Bandwidth
- Benchmark testing
- Memory management
- Multicore processing
- Random access memory
- Real-time systems
- Regulators
ASJC Scopus subject areas
- Software
- Theoretical Computer Science
- Hardware and Architecture
- Computational Theory and Mathematics