• DocumentCode
    175533
  • Title

    Efficient Utilization of Secondary Storage for Scalable Dynamic Slicing

  • Author

    Kargen, Ulf ; Shahmehri, Nahid

  • Author_Institution
    Dept. of Comput. & Inf. Sci., Linkoping Univ., Linkoping, Sweden
  • fYear
    2014
  • fDate
    28-29 Sept. 2014
  • Firstpage
    155
  • Lastpage
    164
  • Abstract
    Dynamic program slicing is widely recognized as a powerful aid for e.g. Program comprehension during debugging. However, its widespread use has been impeded in part by scalability issues that occur when constructing the dynamic dependence graph necessary to compute dynamic slices. A few seconds of execution time on a modern CPU can easily yield dynamic dependence graphs on the order of tens of gigabytes in size. Existing methods either produce imprecise slices, incur large time overheads during slice computation, or run out of memory for long program executions. By carefully designing our method to take advantage of locality, we are able to efficiently use secondary storage for dynamic dependence graphs, thus allowing our method to scale to long program executions. Our prototype implementation runs directly on x86 executables, eliminating problems with e.g. Binary-only libraries. We show in our experiments that graphs can be constructed for program runs with billions of executed instructions, at slowdowns ranging from 62x to 173x. Our optimized format also allows graphs to be traversed at speeds of several million dependence edges per second.
  • Keywords
    graph theory; program slicing; dynamic dependence graph; dynamic program slicing; executed instructions; scalable dynamic slicing; secondary storage utilization; Arrays; Buffer storage; Heuristic algorithms; Layout; Prototypes; Resource management; Scalability; binary analysis; debugging; dynamic dependence graph; dynamic slicing; x86;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Source Code Analysis and Manipulation (SCAM), 2014 IEEE 14th International Working Conference on
  • Conference_Location
    Victoria, BC
  • Type

    conf

  • DOI
    10.1109/SCAM.2014.24
  • Filename
    6975649