Posted by Rob Knies

 Inside Microsoft Research

Distributed computing is critical for most modern, Internet-scale services, enabling high availability and the ability to scale to massive, worldwide audiences. The web as we now know it is unimaginable without advances achieved in distributed computing.

It is challenging, though, to attain these capabilities while ensuring the correctness and the consistency of the shared and replicated mutable state offered by such services, because of the potential for failures of various kinds, such as server and network failures.

Introducing students and researchers to such challenges is the goal of Microsoft Research India’s 2012 Summer School on Distributed Algorithms, Systems, and Programming, to be held from May 28 to June 8 in the Supercomputer Education and Research Center (SERC) Auditorium of the Indian Institute of Science, located in Bangalore.

The summer-school series, held each year, presents lectures in a chosen area by leading experts from around the world, introducing participants to important new research areas and the latest results. The series is intended to provide a forum for Indian and international researchers to interact.

“The school has a mix of attendees,” explains G. Ramalingam, principal researcher at Microsoft Research India, “including faculty members, Ph.D. students, master’s students, and some undergraduate students. Our goals are to strengthen the research ecosystem and the educational ecosystem in matters related to distributed computing.”

Ramalingam is a member of the school’s program committee, along with Chandu Thekkath, director and principal researcher at Microsoft Research Silicon Valley; R. Govindarajan, professor with SERC and in the Department of Computer Science and Automation at the Indian Institute of Science; and S. Sudarshan, Institute Chair Professor in the Department of Computer Science and Engineering at the Indian Institute of Technology Bombay.

The school will address theoretical and practical aspects of constructing distributed systems. The lectures offer self-contained introductions to specific topics, with statements of open research problems in those topic areas.

“There is a convergence of multiple factors that makes distributed computing very relevant and topical today,” Ramalingam says. “The need for distributed computing—to meet performance requirements at a reasonable cost—is on an upswing at the same time providers such as Amazon, Microsoft, and Google are making virtual distributed computing affordable and convenient.

“I can bring up a virtual distributed-computing system and start programming it with my laptop in my living room—or garage—with a credit card.”

Among the presenters for the two-week course are three from Microsoft Research, including Rebecca Isaacs and Marcos K. Aguilera, senior researchers at Microsoft Research Silicon Valley, and Miguel Castro, principal researcher at Microsoft Research Cambridge.

Sudarshan also will serve as one of the lecturers. Other instructors come from a variety of institutions:
 

  • Lorenzo Alvisi, professor in the Department of Computer Science at The University of Texas at Austin.
  • Mike Dahlin, professor in the Department of Computer Science at The University of Texas at Austin.
  • Peter Druschel, founding director of the Max Planck Institute for Software Services, where he leads the Distributed Systems Group.
  • Tim Harris, researcher in the Cambridge Systems and Networking and Programming, Principles and Tools groups at Microsoft Research Cambridge.
  • Maurice Herlihy, professor in the Computer Science Department at Brown University.
  • Liuba Shrira, professor in the Computer Science Department at Brandeis University.
  • Robbert van Renesse, principal research scientist in the Department of Computer Scence at Cornell University.

The summer-school syllabus will be challenging, but that has not deterred applicants from top-tier Indian institutions. Admission to the summer school has been very selective.

“Distributed programming is nontrivial,” Ramalingam says, “with a number of technical challenges that have been addressed by researchers over the last three decades or so. Traditionally, only a small number of experts had to worry about these challenges, but as distributed computing becomes more mainstream, more and more programmers will have to become familiar with this topic.

“We hope that some of the undergrad and master’s students will be attracted to distributed computing as a research area and consider further studies in this area. We hope Ph.D. students who are in this area will learn interesting techniques or problems that might spark their own work. And we hope faculty members will benefit from either a research or an educational perspective.”