MSR India 2012 Summer School on Distributed Algorithms, Systems, and Programming

About

The MSR India Summer School series, held in collaboration with the Indian Institute of Science, consists of lectures in a chosen area by leading experts from around the world. The aim is to introduce students and researchers to important new areas and the latest results and to provide a forum for Indian and international researchers to interact.

The 2012 Summer School was held between May 28 – June 08 at the Indian Institute of Science, Bangalore in the area of Distributed Algorithms, Systems and Programming.

Distributed Computing is the backbone of most modern internet-scale services and forms the basis for their high availability and scalability. However, achieving these features while ensuring the correctness and consistency of shared and replicated mutable state maintained by these services is a huge challenge, due to process, machine and network failures. The summer school focused on these and other related aspects of Distributed Computing.

The School addressed both theoretical as well as practical aspects of building distributed systems and was targeted at senior undergraduates, graduate students, research scholars and faculty members. The School had over 80 attendees from leading institutions representing almost all the leading research in India.

The speakers at the School were renowned researchers in the field delivering lectures over a period of two weeks. Details on the speakers, topics and agenda of the Summer School are as below

Agenda

Week 1

Day 1 Day 2 Day 3 Day 4 Day 5
28-May 29-May 30-May 31-May 01-Jun
Monday Tuesday Wednesday Thursday Friday
Travel to IISc Campus
Distributed Computing: Introduction and Background Material (Part I), G. Ramalingam Peter Druschel: Distributed Hash Tables: Part I Miguel Castro: Practical Consensus Miguel Castro: Byzantine Fault Tolerance Prof. S. Sudarshan: Concurrency and Consistency in Distributed Database/Storage Systems: Part 2
 Break  Break  Break  Break  Break

Distributed Computing: Introduction and Background Material (Part II), Kaushik Rajan

Robbert van Renesse: Group membership, atomic broadcast, gossip protocols Part II (A) Rebecca Isaacs: BarrellFish: A Study in Distributed Operating Systems on Multicore architectures (A) Tim Harris: Transactional memory: composability & basic algorithms  Peter Druschel: Special topic: Accountability
Lunch Lunch Lunch Lunch Lunch
Robbert van Renesse: Group membership, atomic broadcast, gossip protocols Part I (A) Robbert van Renesse: Group membership, atomic broadcast, gossip protocols Part II (B) Rebecca Isaacs: BarrellFish: A Study in Distributed Operating Systems on Multicore architectures (B) Tim Harris: Transactional memory: language integration Tim Harris: Special topic: AC – composable asynchronous IO for native languages
Break Break Break Break Break
Robbert van Renesse: Group membership, atomic broadcast, gossip protocols Part I (B) Rebecca Isaacs: Distributed Operating Systems on loosely and tightly coupled architectures Peter Druschel: Distributed Hash Tables: Part II Prof. S. Sudarshan: Concurrency and Consistency in Distributed Database/Storage Systems: Part 1 Rebecca Isaacs: Special topic: Naiad
Travel to Hotel Miguel Castro: Special topic: Annotations on multi-threaded C programs

 

Week 2

Day 6 Day 7 Day 8 Day 9 Day 10
04-Jun 05-Jun 06-Jun 07-Jun 08-Jun
Monday Tuesday Wednesday Thursday Friday
Travel to IISc Campus Travel to IISc Campus Travel to IISc Campus Travel to IISc Campus Travel to IISc Campus
Marcos K. Aguilera: Fundamental Algorithms in Distributed Computing: Part I Marcos K. Aguilera: Fundamental Algorithms in Distributed Computing: Part II Mike Dahlin: Distributed File Systems: Part I Kapil Vaswani – Generalized Lattice Agreement Mike Dahlin: Distributed File Systems: Part II
 Break  Break  Break  Break  Break
Lorenzo Alvisi: Reasoning with MAD Distributed Systems: Part I (A) Lorenzo Alvisi: Reasoning with MAD Distributed Systems: Part I (A) Liuba Shrira: Concurrency and transactions in distributed Object Systems: Part II (A) Lorenzo Alvisi: Reasoning with MAD Distributed Systems: Part II (A) Marcos K. Aguilera: Geo-Replication
Lunch Lunch Lunch Lunch Lunch
Tim Harris: Transactional memory: STM in the small Lorenzo Alvisi: Reasoning with MAD Distributed Systems: Part I (B) Liuba Shrira : Concurrency and transactions in distributed Object Systems: Part II (B) Lorenzo Alvisi: Reasoning with MAD Distributed Systems: Part II (B) free time / travel back to hotel / flights / trains etc.
Break Break Travel to MSRI Lab Break
Maurice Herlihy: Linearizability, lock-/wait-/obstruction-free data structures: Part I Liuba Shrira: Concurrency and transactions in distributed Object Systems: Part I MSRI Lab Visit + high tea Maurice Herlihy: Linearizability, lock-/wait-/obstruction-free data structures: Part II
Travel to Hotel Travel to Hotel Travel to Hotel Travel to Hotel

Videos

Week 1

Peter Druschel | Distributed Hash Tables: Part I

Miguel Castro | Practical Consensus

Miguel Castro | Byzantine Fault Tolerance

Prof. S. Sudarshan | Concurrency and Consistency in Distributed Database/Storage Systems: Part 2

G. Ramalingam | Distributed Computing: Introduction and Background Material (Part I)

Robbert van Renesse | Group Membership, Atomic Broadcast, Gossip Protocols Part II (A)

Rebecca Isaacs | BarrellFish: A Study in Distributed Operating Systems on Multicore architectures (A)

Tim Harris | Transactional Memory: Composability & Basic Algorithms

Robbert van Renesse | Group membership, Atomic Broadcast, Gossip Protocols Part I (A)

Robbert van Renesse | Group Membership, Atomic Broadcast, Gossip Protocols Part II (B)

Rebecca Isaacs | BarrellFish: A Study in Distributed Operating Systems on Multicore Architectures (B)

Tim Harris | Transactional Memory: Language Integration

Tim Harris | Special Topic: AC – Composable Asynchronous IO for Native Languages

Robbert van Renesse | Group Membership, Atomic Broadcast, Gossip Protocols Part I (B)

Rebecca Isaacs | Distributed Operating Systems on Loosely and Tightly Coupled Architectures

Peter Druschel | Distributed Hash Tables: Part II

Prof. S. Sudarshan | Concurrency and Consistency in Distributed Database/Storage Systems: Part 1

Week 2

Marcos K. Aguilera | Fundamental Algorithms in Distributed Computing: Part I

Marcos K. Aguilera | Fundamental Algorithms in Distributed Computing: Part II

Mike Dahlin | Distributed File Systems: Part I

Kapil Vaswani | Generalized Lattice Agreement

Mike Dahlin | Distributed File Systems: Part II

Tim Harris | Transactional Memory: Semantics & Performance

Lorenzo Alvisi | Reasoning with MAD Distributed Systems: Part I (A)

Lorenzo Alvisi | Reasoning with MAD Distributed Systems: Part II (A)

Marcos K. Aguilera | Geo-Replication

Tim Harris | Transactional Memory: STM in the Small

Lorenzo Alvisi | Reasoning with MAD Distributed Systems: Part I (B)

Lorenzo Alvisi | Reasoning with MAD Distributed Systems: Part II (B)