Technical Perspective: Unexpected Connections

Marc Shapiro 1
1 Regal - Large-Scale Distributed Systems and Applications
LIP6 - Laboratoire d'Informatique de Paris 6, Inria de Paris
Abstract : To improve program performance on today's clusters, clouds and multicore computers requires the developer to pay serious attention to scalability. When a thread updates some shared datum, and another thread wants to read or write the most recent version of that datum (they \emph{conflict}), they must synchronise, which constitutes a sequential bottleneck. This is a general result that does not depend on any particular implementation, even with efficient hardware support for cache coherence, as explained in the paper. Here comes the paper's main insight. If two concurrent procedure calls \emph{commute} with each other (i.e., executing them in either order is equivalent), this means that neither one depends on the result of the other. Therefore, \emph{there is no inherent reason why these calls should conflict}; and, hence, \emph{it is possible to implement them in a way that scales well}.
Type de document :
Article dans une revue
Communications- ACM, Association for Computing Machinery, 2017, 60 (8), pp.82--82. 〈〉. 〈10.1145/3068768〉
Liste complète des métadonnées
Contributeur : Marc Shapiro <>
Soumis le : lundi 31 juillet 2017 - 18:11:46
Dernière modification le : jeudi 11 janvier 2018 - 06:28:03


Fichiers produits par l'(les) auteur(s)




Marc Shapiro. Technical Perspective: Unexpected Connections. Communications- ACM, Association for Computing Machinery, 2017, 60 (8), pp.82--82. 〈〉. 〈10.1145/3068768〉. 〈hal-01570845〉



Consultations de la notice


Téléchargements de fichiers