Computer Architecture

I worked with Nathan Beckmann on hardware-software co-design projects developing polymorphic memory hierarchies.
We introduced Memory Services, a flexible programming model that enables data-centric computing throughout the memory hierarchy. A high-level API allows applications express functionality as graphs of simple tasks, each task indicating the data it operates on.
Livia was out first system architecture for Memory Services; it dynamically schedules tasks and data at the location in the memory hierarchy that minimizes overall data movement.
Publications
Elliot Lockerman, Axel Feldmann, Mohammad Bakhshalipour, Alexandru Stanescu, Shashwat Gupta, Daniel Sanchez, Nathan Beckmann. 2020. Livia: Data-Centric Computing Throughout the Memory Hierarchy. In Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS ’20), March 16–20, 2020, Lausanne, Switzerland. ACM, New York, NY, USA, 17 pages. 10.1145/3373376.3378497