• DocumentCode
    2442620
  • Title

    MagicFuzzer: Scalable deadlock detection for large-scale applications

  • Author

    Cai, Yan ; Chan, W.K.

  • Author_Institution
    Dept. of Comput. Sci., City Univ. of Hong Kong, Hong Kong, China
  • fYear
    2012
  • fDate
    2-9 June 2012
  • Firstpage
    606
  • Lastpage
    616
  • Abstract
    We present MagicFuzzer, a novel dynamic deadlock detection technique. Unlike existing techniques to locate potential deadlock cycles from an execution, it iteratively prunes lock dependencies that each has no incoming or outgoing edge. Combining with a novel thread-specific strategy, it dramatically shrinks the size of lock dependency set for cycle detection, improving the efficiency and scalability of such a detection significantly. In the real deadlock confirmation phase, it uses a new strategy to actively schedule threads of an execution against the whole set of potential deadlock cycles. We have implemented a prototype and evaluated it on large-scale C/C++ programs. The experimental results confirm that our technique is significantly more effective and efficient than existing techniques.
  • Keywords
    C++ language; concurrency control; multi-threading; scheduling; MagicFuzzer; cycle detection; deadlock confirmation phase; dynamic deadlock detection technique; execution thread scheduling; large-scale C-C++ programs; large-scale applications; lock dependency set; thread-specific strategy; Classification algorithms; Image edge detection; Instruction sets; Message systems; Monitoring; Multicore processing; System recovery; deadlock detection; multithreaded programs;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering (ICSE), 2012 34th International Conference on
  • Conference_Location
    Zurich
  • ISSN
    0270-5257
  • Print_ISBN
    978-1-4673-1066-6
  • Electronic_ISBN
    0270-5257
  • Type

    conf

  • DOI
    10.1109/ICSE.2012.6227156
  • Filename
    6227156