CORGi @ CMU

Logo

Computer Organization Research Group led by Prof. Nathan Beckmann

Navigate to

Funded by


CMU Affiliates

Programmable Memory Hierarchy for Memory Services

This project is developing a new system architecture that lets applications re-program the memory hierarchy to specialize its operation. We are developing a new data-centric model called Memory Services and new hardware to give programmers unprecedented control over the memory hierarchy.

We have begun by developing several exemplar services to demonstrate the potential of Memory Services and learn their common design patterns. Thus far, we have built Memory Services that improve performance and energy-efficiency by 2X on challenging irregular computations (e.g., graph processing and linked data structures). We are now building a programmable memory hierarchy called Livia to support these services, as well as many others. Livia distributes reconfigurable Memory Service Engines throughout the memory hierarchy, which can perform computation or other actions within the memory hierarchy as demanded by each Memory Service.

CORGi Members


Publications

Livia: Data-Centric Computing Throughout the Memory Hierarchy [pdf]

Elliot Lockerman, Axel Feldmann, Mohammad Bakhshalipour, Alexandru Stanescu, Shashwat Gupta, Daniel Sanchez, Nathan Beckmann. ASPLOS 2020.

PHI: Architectural Support for Synchronization- and Bandwidth-Efficient Commutative Scatter Updates [pdf]

Anurag Mukkara, Nathan Beckmann, Daniel Sanchez. MICRO 2019.

Improving the Locality of Graph Processing through Hardware-Accelerated Traversal Scheduling [pdf]

Anurag Mukkara, Nathan Beckmann, Maleen Abeydeera, Xiaosong Ma, Daniel Sanchez. MICRO 2018.

Cache-Guided Scheduling: Exploiting Caches to Maximize Locality in Graph Processing [pdf]

Anurag Mukkara, Nathan Beckmann, Daniel Sanchez. AGP at ISCA 2017.

Funding