Carnegie Mellon University
Naama Ben-David is a final-year PhD student at Carnegie Mellon University. Her primary research interests are in the intersection of theory and practice in distributed computing. More specifically, Naama strives to theoretically explain phenomena seen in modern concurrent machines, and to use this insight to design and analyze practical algorithms for concurrent settings. Naama’s research is supported by an NSERC postgraduate scholarship and a Microsoft Research PhD Fellowship.
Many large-scale computations are nowadays done using several processors, whether on a single multithreaded machine, or distributed over many machines. Thus, it is now more important than ever to understand distributed computation, and to make the best use of what such technology has to offer. To this end, it is important that the theory and practice of distributed computing complement each other, since theory could be used to reason about practical systems. Unfortunately, theory and practice in the study of multiprocessor systems, are still far apart; it is hard to abstract practical problems into approachable theoretical ones, leading to theoretical models that are too far removed from reality to be easily applied in practice. This is further complicated by ever changing technologies that offer new features, requiring theoretical models to adapt quickly, and be general enough to encompass multiple hardware generations. In my research, I aim to bridge this gap by building a solid theoretical foundation for practical distributed computing. I present a way to model contention in shared memory systems, thereby accounting for costs more accurately than before when designing concurrent algorithms. Furthermore, I have developed a general transformation that allows adapting many classic concurrent algorithms to a setting in which memory is non-volatile and is able to recover after a system crash. Finally, I’ve also studied replication in data centers, and showed that remote direct memory access allows for higher fault tolerance in such systems.