Title :
Analyzing Parallel Programs with PIN
Author :
Bach, M. ; Charney, M. ; Cohn, R. ; Demikhovsky, E. ; Devor, T. ; Hazelwood, K. ; Jaleel, A. ; Chi-Keung Luk ; Lyons, G. ; Patil, H. ; Tal, A.
Author_Institution :
Intel Corp, Santa Clara, CA, USA
fDate :
3/1/2010 12:00:00 AM
Abstract :
Software instrumentation provides the means to collect information on and efficiently analyze parallel programs. Using Pin, developers can build tools to detect and examine dynamic behavior including data races, memory system behavior, and parallelizable loops. Pin is a software system that performs runtime binary instrumentation of Linux and Microsoft Windows applications. Pin´s aim is to provide an instrumentation platform for building a wide variety of program analysis tools, called pintools. By performing the instrumentation on the binary at runtime, Pin eliminates the need to modify or recompile the application´s source and supports the instrumentation of programs that dynamically generate code.
Keywords :
Linux; parallel programming; program compilers; program diagnostics; Linux; Microsoft Windows applications; Pin; code generation; data races; memory system behavior; parallel program analyzation; parallelizable loops; pintools; program analysis tools; runtime binary instrumentation; software developer; software instrumentation; Application software; Information analysis; Instruments; Linux; Runtime; Software systems; Computer architectures; Computer systems organization; Multiple processor systems; Operating systems; Processor architectures; Software engineering;