• Documents
  • Authors
  • Tables
  • Log in
  • Sign up
  • MetaCart
  • DMCA
  • Donate

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

DMCA

Gadara: Dynamic Deadlock Avoidance for Multithreaded Programs

Cached

  • Download as a PDF

Download Links

  • [www.usenix.org]
  • [ai.eecs.umich.edu]
  • [cccp.eecs.umich.edu]
  • [www.eecs.umich.edu]
  • [www.usenix.org]
  • [www.usenix.org]
  • [www.usenix.org]
  • [web.eecs.umich.edu]
  • [ai.eecs.umich.edu]
  • [web.eecs.umich.edu]
  • [web.eecs.umich.edu]

  • Save to List
  • Add to Collection
  • Correct Errors
  • Monitor Changes
by Yin Wang
Citations:47 - 8 self
  • Summary
  • Citations
  • Active Bibliography
  • Co-citation
  • Clustered Documents
  • Version History

BibTeX

@MISC{Wang_gadara:dynamic,
    author = {Yin Wang},
    title = {Gadara: Dynamic Deadlock Avoidance for Multithreaded Programs},
    year = {}
}

Share

Facebook Twitter Reddit Bibsonomy

OpenURL

 

Abstract

Deadlock is an increasingly pressing concern as the multicore revolution forces parallel programming upon the average programmer. Existing approaches to deadlock impose onerous burdens on developers, entail high runtime performance overheads, or offer no help for unmodified legacy code. Gadara automates dynamic deadlock avoidance for conventional multithreaded programs. It employs whole-program static analysis to model programs, and Discrete Control Theory to synthesize lightweight, decentralized, highly concurrent logic that controls them at runtime. Gadara is safe, and can be applied to legacy code with modest programmer effort. Gadara is efficient because it performs expensive deadlock-avoidance computations offline rather than online. We have implemented Gadara for C/Pthreads programs. In benchmark tests, Gadara successfully avoids injected deadlock faults, imposes negligible to modest performance overheads (at most 18%), and outperforms a software transactional memory system. Tests on a real application show that Gadara identifies and avoids both previously known and unknown deadlocks while adding performance overheads ranging from negligible to 10%. 1

Keyphrases

dynamic deadlock avoidance    multithreaded program    average programmer    unknown deadlock    pthreads program    performance overhead    model program    high runtime performance overhead    benchmark test    multicore revolution force    concurrent logic    expensive deadlock-avoidance computation    real application show    whole-program static analysis    unmodified legacy code    modest performance overhead    gadara identifies    conventional multithreaded program    injected deadlock fault    onerous burden    software transactional memory system    modest programmer effort    discrete control theory   

Powered by: Apache Solr
  • About CiteSeerX
  • Submit and Index Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2019 The Pennsylvania State University