This is a list of important publications in concurrent, parallel, and distributed computing, organized by field.
Contents
Some reasons why a particular publication might be regarded as important:
Consensus, synchronization, and mutual exclusion
Synchronizing concurrent processes. Achieving consensus in a distributed system in the presence of faulty nodes, or in a wait-free manner. Mutual exclusion in concurrent systems.
Dijkstra: “Solution of a problem in concurrent programming control”
Dijkstra, E. W. (1965). "Solution of a problem in concurrent programming control". Communications of the ACM. 8 (9): 569. doi:10.1145/365559.365617. This paper presented the first solution to the mutual exclusion problem. Leslie Lamport writes that this work “started the field of concurrent and distributed algorithms”.Pease, Shostak, Lamport: “Reaching agreement in the presence of faults”
Lamport, Shostak, Pease: “The Byzantine generals problem”
Herlihy, Shavit: “The topological structure of asynchronous computation”
Saks, Zaharoglou: “Wait-free k-set agreement is impossible …”
Foundations of distributed systems
Fundamental concepts such as time and knowledge in distributed systems.
Halpern, Moses: “Knowledge and common knowledge in a distributed environment”
Halpern, Joseph; Moses, Yoram (1990), "Knowledge and common knowledge in a distributed environment", Journal of the ACM, 37 (3): 549–587, doi:10.1145/79147.79161 . This paper formalized the notion of “knowledge” in distributed systems, demonstrated the importance of the concept of “common knowledge” in distributed systems, and also proved that common knowledge cannot be achieved if communication is not guaranteed. The paper received the Gödel Prize in 1997 and the Edsger W. Dijkstra Prize in Distributed Computing in 2009.