DocumentCode :
3658013
Title :
MEDUSA: A Predictable and High-Performance DRAM Controller for Multicore Based Embedded Systems
Author :
Prathap Kumar Valsan;Heechul Yun
Author_Institution :
Univ. of Kansas, Lawrence, KS, USA
fYear :
2015
Firstpage :
86
Lastpage :
93
Abstract :
Commercial-Off-The-Shelf (COTS) DRAM controllers are optimized for high memory throughput, but they do not provide predictable timing among memory requests from different cores in multicore systems. Therefore, memory requests from a critical real-time task on one core can be substantially delayed by memory requests from on-real-time tasks on the other cores. In this work, we propose a DRAM controller design, called MEDUSA, to provide predictable memory performance in multicore based real-time systems. MEDUSA can provide high time predictability when needed for real-time tasks but also strive to provide high average performance for non-real-time tasks through a close collaboration between the OSand the DRAM controller. In our approach, the OS partially partitions DRAM banks into two groups: reserved banks and shared banks. The reserved banks are exclusive to each core to provide predictable timing while the shared banks are shared by all cores to efficiently utilize the resources. MEDUSA has two separate queues for read and write requests, and it prioritizes reads over writes. In processing read requests, MEDUSA employs a two-level scheduling algorithm that prioritizes the memory requests to the reserved banks in a Round Robin fashion to provide strong timing predictability. In processing write requests, MEDUSA largely relies on the FR-FCFS for high throughput but makes an immediate switch to read upon arrival of read requests to the reserved banks. We implemented MEDUSA in a Gem5 full-system simulator and a Linux kernel and performed experiments using a set of synthetic and SPEC2006 benchmarks to analyze the performance impact of MEDUSA on both real-time and non-real-time tasks. The results show that MEDUSA achieves up to 95% better worst-case performance for real-time tasks while achieving up to 31% throughput improvement for non-real-time tasks.
Keywords :
"Random access memory","Real-time systems","Delays","Multicore processing","Benchmark testing","Throughput"
Publisher :
ieee
Conference_Titel :
Cyber-Physical Systems, Networks, and Applications (CPSNA), 2015 IEEE 3rd International Conference on
Type :
conf
DOI :
10.1109/CPSNA.2015.24
Filename :
7272690
Link To Document :
بازگشت