2nd-year PhD student in Computer Science at Princeton University
I work with Professors Wyatt Lloyd (Princeton University) and Ethan Katz-Bassett (Columbia University) on networks and distributed systems. I was previously part of the Networked Systems Lab at the University of Southern California. I am interested in high-performance network stacks, in particular for data centers, as well as disaggregated servers and operating systems for distributed systems.
I received a Master's degree in Computer Science from UCLA in 2016. While there, I worked with Professor Miodrag Potkonjak on energy-efficient wireless sensor networks. I also worked with visiting researcher Bastian Bloessl (then at University of Paderborn) on evaluating a software-defined radio implementation of 802.11p for vehicular ad-hoc networks. I earned a Bachelor's degree in Linguistics (!) from the University of Chicago in 2009.
When I'm not doing computer science, I can usually be found cycling, baking, bouldering, or hanging out with my cat.
My current projects target frequently-used or centralized components of distributed data center systems, where the performance of the entire system will improve substantially by improving the performance of these components.
Remote procedure call (RPC) is the glue that holds modern microservice architectures together. Because a single user request might require coordination among hundreds of machines, the network stack plays a large role in the overall latency, throughput, and CPU utilization of requests. RPCs are commonly run over TCP, which is general-purpose and provides nice guarantees, but has been shown to be inefficient. I am currently leading a project (in collaboration with Christopher Hodsdon) to design a transport layer tailored to the particular use patterns and needs of RPC. In doing so, we aim to reduce server-side CPU utilization, reduce end-to-end request latency, and increase overall application throughput for services that use RPC.
Sequencers are centralized servers that hand out numbered tokens to clients so that clients can order their operations in a distributed system. This project, led by fellow PhD student Christopher Hodsdon, uses a custom transport layer and sequencer design to serve clients at line rate and recover quickly from communication and sequencer failure.
Click here to download my CV.
Email: theano at princeton d0t edu