As memory systems continue to be a significant bottleneck for improving performance, architects have turned to application-aware memory systems to make more sophisticated decisions. Much of this work has focused on characterizing and inferring traits about memory requests from within the memory system itself. While such memory systems are self-sufficient, they only capture a limited view of overall system execution.
This talk focuses on memory systems that cooperate more directly with higher levels of the architecture stack. These higher levels assist in memory system decisions by providing hints about memory behavior to the memory system itself. For example, an out-of-order multicore processor can perform a simple characterization of which load requests are more critical to overall system execution, which can be used within the memory controller to prioritize DRAM scheduling decisions. We will discuss how cooperation can be exploited using low-complexity hardware for a number of memory system decisions, including scheduling, prefetching, and DRAM addressing, and can deliver performance improvements for both parallel applications and multiprogrammed workloads.
Saugata Ghose is a postdoctoral research associate with the SAFARI Research Group at CMU, advised by Onur Mutlu. His current research interests are in application-aware memory and storage systems. He received his Ph.D. from Cornell University in 2014, where he was the recipient of the NDSEG Fellowship and the ECE Director's Ph.D. Teaching Assistant Award.