Presentation is loading. Please wait.

Presentation is loading. Please wait.

ATOM: A System for Building Customized Program Analysis Tools.

Similar presentations


Presentation on theme: "ATOM: A System for Building Customized Program Analysis Tools."— Presentation transcript:

1 ATOM: A System for Building Customized Program Analysis Tools

2 2 Papers on ATOM  A. Srivastava and D. Wall. A Practical System for Intermodule Code Optimization at Link-Time. Journal of Programming Language, 1(1), pp 1-18, March 1993.  A. Eustace and A. Srivastava. ATOM: A Flexible Interface for Building High Performance Program Analysis Tools. In Proceedings USENIX Technical Conference, pp 303-314, January 1995.  Digital Equipment Corporation. ATOM Reference Manual, 1993  Digital Equipment Corporation. ATOM User Manual, 1993

3 3 Limitations of Existing Tools 1.Similar tools are designed for profiling a single task 2.Difficult to modify most other tools 3.Most address tracing tools compute much too detailed information and this can render the tool inefficient for the user 4.Tools based solely on instruction-level profiling add a large overhead to the profiling time 5.Tools that instrument assembly language code may change the application program’s heap addresses 6.Data in the form of address traces is communicated to the data analysis routines through inter-process communication, or files on disk…both are expensive!

4 4 How ATOM overcomes the limitations of previous systems  ATOM is a tool building system  ATOM allows selective instrumentation The user simply has to specify the tool details  Communication of data is through procedure calls  Precise information about the application program is presented to analysis routines at all times  ATOM compiler and language independent

5 5 How ATOM Works

6 6 How to Run ATOM  atom prog inst.c anal.c –o prog.atom 1.Application program object module that is to be instrumented 2.The instrumentation routines specify where the program is to be instrumented and the procedure calls to be made 3.The analysis routines provide the code for the procedures in the instrumentation routines

7 7 ATOM Example: Instruction Profiling

8 8 Key Features of ATOM  Provides hardware and software designers with the power to build selective profiling tools  Less expensive than most other tools due to using procedure calls for communication between application program and analysis routines  Easy to build new tools Instrumentation can be inserted using a few lines of code Most analysis tools can be built in a few pages of code


Download ppt "ATOM: A System for Building Customized Program Analysis Tools."

Similar presentations


Ads by Google