I work in computer architecture, with experience in distributed operating systems. Currently I'm focused on reducing data movement in multicores, which takes over half of energy in current chips, by redesigning caches so they dynamically adopt an application-specific organization.
My PhD thesis, Design and Analysis of Spatially-Partitioned Shared Caches, received the 2015 Sprowls Doctoral Thesis Prize for the "best PhD thesis in computer science at MIT". This work exposes physical cache banks to software, letting the operating system schedule applications' working sets in nearby cache banks. This work spans cache partitioning, dynamic NUCA, heterogeneous memories, replacement policies, etc to reduce overall data movement. A common theme is the use of analytical models in software to control simple, efficient, but "dumb" hardware. This analytical approach yields robust performance and unexpected insights.
My PhD (2012-2015) was advised by Daniel Sanchez at MIT's Computer Science and Artificial Intelligence Laboratory (CSAIL). I stayed for a one-year postdoc with Daniel (2015-2016).
Before that, I worked in Anant Agarwal's group on fos, a distributed operating system for multicore and clouds (2008-2011). After Anant joined edX full-time, I briefly worked with Frans Kaashoek and Nickolai Zeldovich in the PDOS group (2011-2012). A long time ago, I also worked on Graphite, a distributed multicore simulator. My other interests include math and cryptography.
I received my masters degree in 2010 from MIT. My thesis, "Distributed Naming in a Factored Operating System", won the William A. Martin Memorial Thesis Award for an outstanding Master's thesis.
I got my Bachelors of Science from the University of California, Los Angeles. I graduated summa cum laude in Computer Science and Mathematics of Computation and was honored as the Bachelor of the Year (2008) in Computer Science.