Synchronization Aware Conflict Resolution for Runtime Monitoring Using Transactional Memory,

C Tian, Vijay Nagarajan, R Gupta

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

There has been significant research on performing runtime monitoring of programs using dynamic binary translation (DBT) techniques for a variety of purposes including program profiling, debugging, and security. However, such software monitoring frameworks currently handle only sequential programs efficiently. When handling multithreaded programs, such tools often encounter racing problems and require serialization of threads for correctness. The races arise when application data and corresponding meta data stored in DBT tools are updated concurrently. To address this problem, transactional memory (TM) was recently proposed to enforce atomicity of updating of application data and
their corresponding meta data. However, enclosing legacy synchronization operations within transactions can cause livelocks, and thus degrade performance.

In this paper, we consider common forms of synchronizations and show how they can give rise to livelocks when TM is used to enable runtime monitoring. In order to avoid such livelocks, we implement a detector to dynamically detect
synchronizations and use this information in performing conflict resolution. Our experiments show that our synchronization aware strategy can efficiently avoid livelocks for the SPLASH-2 benchmarks.
Original languageEnglish
Title of host publicationWorkshop on Software Tools for Multicore Systems
Subtitle of host publicationcolocated with CGO, Boston, April 2008
Number of pages6
Publication statusPublished - 2008

Fingerprint Dive into the research topics of 'Synchronization Aware Conflict Resolution for Runtime Monitoring Using Transactional Memory,'. Together they form a unique fingerprint.

Cite this