Result: Futex based locks for C11's generic atomics (extended abstract)
Title:
Futex based locks for C11's generic atomics (extended abstract)
Verrous basés sur futex pour les opérations atomiques génériques de C11 (résumé étendue)
Verrous basés sur futex pour les opérations atomiques génériques de C11 (résumé étendue)
Authors:
Contributors:
Compilation pour les Architectures MUlti-coeurS (CAMUS), Centre Inria de l'Université de Lorraine, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-Laboratoire des sciences de l'ingénieur, de l'informatique et de l'imagerie (ICube), École Nationale du Génie de l'Eau et de l'Environnement de Strasbourg (ENGEES)-Université de Strasbourg (UNISTRA)-Hôpitaux Universitaires de Strasbourg (HUS)-Institut National des Sciences Appliquées - Strasbourg (INSA Strasbourg), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Centre National de la Recherche Scientifique (CNRS)-Matériaux et Nanosciences Grand-Est (MNGE), Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Institut National de la Santé et de la Recherche Médicale (INSERM)-Institut de Chimie - CNRS Chimie (INC-CNRS)-Centre National de la Recherche Scientifique (CNRS)-Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Institut National de la Santé et de la Recherche Médicale (INSERM)-Institut de Chimie - CNRS Chimie (INC-CNRS)-Centre National de la Recherche Scientifique (CNRS)-Réseau nanophotonique et optique, Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Centre National de la Recherche Scientifique (CNRS)-Université de Strasbourg (UNISTRA)-Centre National de la Recherche Scientifique (CNRS)-École Nationale du Génie de l'Eau et de l'Environnement de Strasbourg (ENGEES)-Université de Strasbourg (UNISTRA)-Hôpitaux Universitaires de Strasbourg (HUS)-Institut National des Sciences Appliquées - Strasbourg (INSA Strasbourg), Université de Strasbourg (UNISTRA)-Université de Haute-Alsace (UHA) Mulhouse - Colmar (Université de Haute-Alsace (UHA))-Centre National de la Recherche Scientifique (CNRS)-Université de Strasbourg (UNISTRA)-Centre National de la Recherche Scientifique (CNRS)
Source:
The 31st Annual ACM Symposium on Applied Computing, Apr 2016, Pisa, Italy. ⟨10.1145/2851613.2851956⟩
Publisher Information:
CCSD, 2016.
Publication Year:
2016
Collection:
collection:CNRS
collection:INRIA
collection:ENGEES
collection:UNIV-STRASBG
collection:INRIA_TEST
collection:INRIA-NANCY-GRAND-EST
collection:INSA-STRASBOURG
collection:TESTALAIN1
collection:UNIV-LORRAINE
collection:INRIA2
collection:INC-CNRS
collection:AGREENIUM
collection:SITE-ALSACE
collection:INSA-GROUPE
collection:TEST2-HALCNRS
collection:UNIVOAK
collection:UMR7357
collection:INRIA
collection:ENGEES
collection:UNIV-STRASBG
collection:INRIA_TEST
collection:INRIA-NANCY-GRAND-EST
collection:INSA-STRASBOURG
collection:TESTALAIN1
collection:UNIV-LORRAINE
collection:INRIA2
collection:INC-CNRS
collection:AGREENIUM
collection:SITE-ALSACE
collection:INSA-GROUPE
collection:TEST2-HALCNRS
collection:UNIVOAK
collection:UMR7357
Subject Terms:
Linux, futex, C11, atomics, lock primitives, ACM: D.: Software, D.1: PROGRAMMING TECHNIQUES, D.1.3: Concurrent Programming, D.1.3.1: Parallel programming, [INFO.INFO-DS]Computer Science [cs], Data Structures and Algorithms [cs.DS], [INFO.INFO-DC]Computer Science [cs], Distributed, Parallel, and Cluster Computing [cs.DC]
Subject Geographic:
Original Identifier:
HAL: hal-01304108
Document Type:
Conference
conferenceObject<br />Conference papers
Language:
English
Relation:
info:eu-repo/semantics/altIdentifier/doi/10.1145/2851613.2851956
DOI:
10.1145/2851613.2851956
Access URL:
Rights:
info:eu-repo/semantics/OpenAccess
Accession Number:
edshal.hal.01304108v1
Database:
HAL
Further Information
We present a new algorithm and implementation of a lock primitive thatis based on Linux' native lock interface, the futex systemcall. It allows us to assemble compiler support for atomic datastructures that can not be handled through specific hardwareinstructions. Such a tool is needed for C11's atomicsinterface because here an _Atomic qualification can be attachedto almost any data type. Our lock data structure for that purposemeets very specific criteria concerning its field of operation and itsperformance. By that we are able to outperform gcc'slibatomic library by around 60%.