Magiclock : Scalable detection ofpotential deadlocks in large- scalemultithreaded programs

Research output: Journal Publications and Reviews (RGC: 21, 22, 62)21_Publication in refereed journalpeer-review

37 Scopus Citations
View graph of relations


Related Research Unit(s)


Original languageEnglish
Article number6718069
Pages (from-to)266-281
Journal / PublicationIEEE Transactions on Software Engineering
Issue number3
Online published20 Jan 2014
Publication statusPublished - Mar 2014


We present Magiclock, a novel potential deadlock detection technique by analyzing execution traces (containing no deadlock occurrence) of large-scale multithreaded programs. Magiclock iteratively eliminates removable lock dependencies before potential deadlock localization. It divides lock dependencies into thread specific partitions, consolidates equivalent lock dependencies, and searches over the set of lock dependency chains without the need to examine any duplicated permutations of the same lock dependency chains. We validate Magiclock through a suite of real-world, large-scale multithreaded programs. The experimental results show that Magiclock is significantly more scalable and efficient than existing dynamic detectors in analyzing and detecting potential deadlocks in execution traces of large-scale multithreaded programs. © 2014 IEEE.

Research Area(s)

  • concurrency, Deadlock detection, lock order graph, multithreaded programs, scalability