The Facebook Fellowship program supports Ph.D. students doing groundbreaking computer science research for one academic year. Over the past two months, the 2011-2012 Facebook Fellows have been gearing up for the end of their year with visits to Facebook HQ to present their research and meet the team. Here's a look into one Facebook Fellow's experience in Palo Alto.
Massachusetts Institute of Technology, 5th year Ph.D. candidate in the CSAIL Commit Group
Area of Focus: Compiler Technology
Q: What was your presentation about?
In this talk, I introduced Kendo, a new software-only prototype system that provides a deterministic multithreading programming model to parallel programmers. Although multicore processors have become the industry standard, developing parallel applications that target them remains a daunting task. Non-determinism, inherent in threaded applications, causes significant challenges for parallel programmers by hindering their ability to create parallel applications with repeatable results. As a consequence, parallel applications are significantly harder to debug, test, and maintain than sequential programs.
Kendo enforces a deterministic interleaving of synchronization operations through a novel distributed scheduling algorithm. The algorithm tracks the progress of each thread using performance counters to construct a set of deterministic logical clocks, which are used to compute a synchronization schedule that is both deterministic and provides good load balancing.
Kendo runs on today's commodity hardware while incurring only a modest performance cost, allowing Kendo programs to execute deterministically even after they are deployed. As a result, Kendo simplifies the development of parallel programs that require repeatable results. Moreover, Kendo simplifies debugging of multithreaded applications by providing a systematic debugging methodology that allows programmers to deterministically reproduce or detect all classes of bugs.
Q: Who at Facebook connected with your research?
I met with a number of infrastructure engineers to talk about general systems, compiler work and Hip Hop VM.
Q: What surprised you most about your visit to Facebook?
I talked to Bobby Johnson about company culture and how things are done here. I was surprised by how "get it done" oriented engineers are here and the freedom they have. Bobby shared that Facebook tries not to keep the same people working on a project for more than 18 months which means there's a lot of new and interesting stuff to work on.
Q: What's next for you?
I'm presenting my research at ASPLOS in London.
Interested in becoming a Facebook Fellow? The 2012-2013 program has 12 slots, two of which are designated for women and those from underrepresented groups. Apply here by December 16.
We also invite faculty and students interested in the program to like the Facebook Fellowship Page for updates on the program, details about the submission process and answers to frequently asked questions.