Skip to main navigation Skip to search Skip to main content

Detecting false sharing in OpenMP applications using the DARWIN framework

  • Besar Wicaksono
  • , Munara Tolubaeva
  • , Barbara Chapman
  • University of Houston

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

3 Scopus citations

Abstract

Writing a parallel shared memory application that achieves good performance and scales well as the number of threads increases can be challenging. One of the reasons is that as threads proliferate, the contention among shared resources increases and this may cause performance degradation. In particular, multi-threaded applications can suffer from the false sharing problem, which can degrade the performance of an application significantly. The work in this paper focuses on detecting performance bottlenecks caused by false sharing in OpenMP applications. We introduce a dynamic framework to help application developers detect instances of false sharing as well as identify the data objects in an OpenMP code that cause the problem. The framework that we have developed leverages features of the OpenMP collector API to interact with the OpenMP compiler's runtime library and utilizes the information from hardware counters. We demonstrate the usefulness of this framework on actual applications that exhibit poor scaling because of false sharing. To show the benefit of our technique, we manually modify the identified problem code by adjusting the alignment of the data that are causing false sharing; we then compare the performance with the original version.

Original languageEnglish
Title of host publicationLanguages and Compilers for Parallel Computing - 24th International Workshop, LCPC 2011, Revised Selected Papers
Pages283-297
Number of pages15
DOIs
StatePublished - 2013
Event24th International Workshop on Languages and Compilers for Parallel Computing, LCPC 2011 - Fort Collins, CO, United States
Duration: Sep 8 2011Sep 10 2011

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume7146 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference24th International Workshop on Languages and Compilers for Parallel Computing, LCPC 2011
Country/TerritoryUnited States
CityFort Collins, CO
Period09/8/1109/10/11

Keywords

  • Cache coherence
  • DARWIN
  • false sharing
  • hardware counter
  • OpenMP
  • OpenMP collector API

Fingerprint

Dive into the research topics of 'Detecting false sharing in OpenMP applications using the DARWIN framework'. Together they form a unique fingerprint.

Cite this