• DocumentCode
    3457536
  • Title

    Quantifying the Potential of Program Analysis Peripherals

  • Author

    Tiwari, Mohit ; Mysore, Shashidhar ; Sherwood, Timothy

  • Author_Institution
    Dept. of Comput. Sci., Univ. of California, Santa Barbara, CA, USA
  • fYear
    2009
  • fDate
    12-16 Sept. 2009
  • Firstpage
    53
  • Lastpage
    63
  • Abstract
    Tools such as multi-threaded data race detectors, memory bounds checkers, dynamic type analyzers, data flight recorders, and various performance profilers are becoming increasingly vital aids to software developers. Rather than performing all the instrumentation and analysis on the main processor, we exploit the fact that increasingly high-throughput board level interconnect is available on many systems, a fact we use to off-load analysis to an off-chip accelerator. We characterize the potential of such a system to both accelerate existing software development tools and enable a new class of heavyweight tools. There are many non-trivial technical issues in taking such an approach that may not appear in simulation, and to flush them out we have developed a prototype system that maps a DMA based analysis engine, sitting on a PCI-mounted FPGA, into the Valgrind instrumentation framework. With our novel instrumentation methods, we demonstrate that program analysis speedups of 29% to 440% could be achieved today with strictly off-the-shelf components on some of the state-of-the-art tools, and we carefully quantify the bottlenecks to illuminate several new opportunities for further architectural innovation.
  • Keywords
    program debugging; program diagnostics; security of data; software quality; software tools; DMA based analysis engine; PCI-mounted FPGA; Valgrind instrumentation framework; data flight recorder; dynamic type analyzer; high-throughput board level interconnect; memory bounds checker; multithreaded data race detector; off-chip accelerator; off-load analysis; program analysis peripheral; program debugging; software developer; software development tool; software quality; software security; Acceleration; Analytical models; Data analysis; Detectors; Instruments; Performance analysis; Programming; Software performance; Software prototyping; Software tools; Debugging and Security; Dynamic program analysis; Hardware support; Offchip accelerator;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Architectures and Compilation Techniques, 2009. PACT '09. 18th International Conference on
  • Conference_Location
    Raleigh, NC
  • ISSN
    1089-795X
  • Print_ISBN
    978-0-7695-3771-9
  • Type

    conf

  • DOI
    10.1109/PACT.2009.38
  • Filename
    5260550