Byzantine agreement (part 1)

Leslie Lamport

Microsoft

Day 3 / 10:00
/ Track 1 /
EN
/

The Paxos algorithm or how to win a Turing Award (part 1)

How to think about concurrent systems mathematically is explained using the Paxos consensus algorithm as an example. First, the problem to be solved is precisely specified. Then, a "shared memory" voting algorithm is specified and shown to implement the problem specification. Finally, the Paxos algorithm is specified and shown to implement the voting algorithm. How mathematical thinking is used in industry is then briefly discussed.

Ittai Abraham

In the first part of this tutorial we will provide a new general framework that can be used to explain many consensus protocol variants, and in the second — touch upon the deep connections between Byzantine fault-tolerance and blockchains.

Dan Alistarh

IST Austria

Day 2 / 10:00
/ Track 1 /
EN
/

Distributed and concurrent optimization for machine learning (part 1)

The goal of this tutorial lecture is to provide the audience with an overview of standard distribution techniques in machine learning, with an eye towards the intriguing trade-offs between synchronization and communication costs of distributed machine learning algorithms, on the one hand, and their convergence, on the other.

Trevor Brown

University of Waterloo

Day 5 / 12:00
/ Track 1 /
EN
/

Practical aspects of multicore programming (part 2)

A brief introduction to concurrent data structures, including what it means for concurrent data structures to be correct, and how they should be implemented to achieve high performance on real systems.

Nonblocking data structures (part 2)

Eliezer Gafni

The coordination power of distributed computing models (part 2)

Maurice Herlihy

Brown University Computer Science Dept

Day 5 / 14:30
/ Track 1 /
EN
/

Cross-chain deals: blockchains on ACID (part 1)

Modern distributed data management systems face a new challenge: how to allow autonomous, mutually-distrusting parties to co-operate safely and effectively. This challenge presents many questions familiar from classical distributed systems: how to combine multiple steps into a single atomic action, how to recover from failures, how to synchronize concurrent access to data, and what it means for that action to be correct. This lecture describes how each of these notions requires rethinking when participants are autonomous and potentially adversarial.

Leslie Lamport

Microsoft

Day 3 / 12:00
/ Track 1 /
EN
/

The Paxos algorithm or how to win a Turing Award (part 2)

How to think about concurrent systems mathematically is explained using the Paxos consensus algorithm as an example. First, the problem to be solved is precisely specified. Then, a "shared memory" voting algorithm is specified and shown to implement the problem specification. Finally, the Paxos algorithm is specified and shown to implement the voting algorithm. How mathematical thinking is used in industry is then briefly discussed.

Trevor Brown

University of Waterloo

Day 5 / 10:00
/ Track 1 /
EN
/

Practical aspects of multicore programming (part 1)

A brief introduction to concurrent data structures, including what it means for concurrent data structures to be correct, and how they should be implemented to achieve high performance on real systems.

Eliezer Gafni

The coordination power of distributed computing models (part 1)

Dan Alistarh

IST Austria

Day 2 / 12:00
/ Track 1 /
EN
/

Distributed and concurrent optimization for machine learning (part 2)

The goal of this tutorial lecture is to provide the audience with an overview of standard distribution techniques in machine learning, with an eye towards the intriguing trade-offs between synchronization and communication costs of distributed machine learning algorithms, on the one hand, and their convergence, on the other.

Ittai Abraham

In the first part of this tutorial we will provide a new general framework that can be used to explain many consensus protocol variants, and in the second — touch upon the deep connections between Byzantine fault-tolerance and blockchains.