Remote Core Locking: Migrating Critical-Section Execution to Improve the Performance of Multithreaded Applications

Abstract : The scalability of multithreaded applications on current multicore systems is hampered by the performance of lock algorithms, due to the costs of access contention and cache misses. In this paper, we propose a new lock algorithm, Remote Core Locking (RCL), that aims to improve the performance of critical sections in legacy applications on multicore architectures. The idea of RCL is to replace lock acquisitions by optimized remote procedure calls to a dedicated server core. RCL limits the performance collapse observed with other lock algorithms when many threads try to acquire a lock concurrently and removes the need to transfer lock-protected shared data to the core acquiring the lock because such data can typically remain in the server core's cache. We have developed a profiler that identifies the locks that are the bottlenecks in multithreaded applications and that can thus benefit from RCL, and a reengineering tool that transforms POSIX locks into RCL locks. We have evaluated our approach on 18 applications: Memcached, Berkeley DB, the 9 applications of the SPLASH-2 benchmark suite and the 7 applications of the Phoenix2 benchmark suite. 10 of these applications, including Memcached and Berkeley DB, are unable to scale because of locks, and benefit from RCL. Using RCL locks, we get performance improvements of up to 2.6 times with respect to POSIX locks on Memcached, and up to 14 times with respect to Berkeley DB.
Type de document :
Documents associés à des manifestations scientifiques -- Hal-inria+
ComPAS 2014 : conférence en parallélisme, architecture et systèmes, Apr 2014, Neuchâtel, Switzerland. 2014
Liste complète des métadonnées

https://hal.inria.fr/hal-00991709
Contributeur : Jean-Pierre Lozi <>
Soumis le : vendredi 16 mai 2014 - 16:16:29
Dernière modification le : lundi 29 mai 2017 - 14:26:04
Document(s) archivé(s) le : samedi 16 août 2014 - 11:05:26

Fichier

lozi_atc12_slides.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

  • HAL Id : hal-00991709, version 1

Collections

Citation

Jean-Pierre Lozi, Florian David, Gaël Thomas, Julia Lawall, Gilles Muller. Remote Core Locking: Migrating Critical-Section Execution to Improve the Performance of Multithreaded Applications. ComPAS 2014 : conférence en parallélisme, architecture et systèmes, Apr 2014, Neuchâtel, Switzerland. 2014. 〈hal-00991709〉

Partager

Métriques

Consultations de la notice

339

Téléchargements de fichiers

149