Overview of AIMS
Hans Sherburne
UPC Group
HCS Research Laboratory
University of Florida
Color encoding key:
Blue: Information
Red: Negative note
Green: Positive note
2
Basic Information Name: Automated Instrumentation and Monitoring
System Developer: NAS (NASA) Current Version:
AIMS V3.7.2 (last updated in ’99)
Website: http://www.nas.nasa.gov/Groups/Tools/Projects/AIMS/
Contact: ?
3
AIMS Overview
AIMS was not chosen for a full evaluation Not updated since ’99 Support for MPI and PVM programs written in C and
FORTRAN Unfortunately support for C programs and Linux seems to
have only been in initial stages (According to website and README files)
Some tools are mentioned in various publications, but seem to be absent in latest release and user’s guide Xisk MK – modeling kernel
4
AIMS Major Software Components xinstrument
Source code instrumentation monitor
Runtime performance monitoring library Various tools to process and display performance
data View Kernel
Displays performance data, primarily through an interactive Gantt-chart style view
Tally Derives statistics from collected performance data
Sysconfig Maps physical paths of network traffic
5
Instrumentation AIMS data collection is facilitated by source code
instrumentation User may select to gather trace data or profile (summary)
data xinstrument – GUI for inserting instrumentation
User selects all subroutines, all communication, all i/o User may also select constructs by name
All functions of loaded files are instrumented Only selected events are “triggered” based on profile Profile is read at the beginning of execution This approach eliminates the need for recompilation after
changing selected constructs for monitoring
6
Measurement monitor – library used to record
performance data Events recorded at each node: state
entrance/exit, communication, I/O, barriers, data-structure definitions, markers
The library attempts to correct clock skew and drift of timestamps for recorded events
makefile must me modified to accommodate the modified source files
7
Analysis tracesort – sorting utility to improve viewing
performance (mandatory for Intel iPSC/860 and Paragon versions of AIMS)
pc -“intrusion correction” component Uses a simple model to predict message transmission time Accounts for overhead introduced by each even recorded Processes sorted traces, and attempts to maintain:
Causality of communication Correct partial ordering along threads of control No false deadlocks introduced in trace
8
More Analysis Tally
Generation of statistical data, organized into several tables Data for each function
Routine name, busy time, global blocking time, send blocking time, receive blocking time, inclusive execution time, percentage of time in communication, index of communication compared to other functions
Aggregated data per node Node number, busy time, global blocking time, send blocking time, receive
blocking time, inclusive execution time, percentage of time in communication, percentage of communication time caused by contention
NCPU “The NCPU for a given subroutine and a given k is the amount of CPU
time used by that subroutine when k processors are busy, divided by k. “[1]
Routine Concurrency “…indicates the amount of time spent by each subroutine when k copies
were executing simultaneously “ [1] Tabular data can be fed into various 3rd party statistical drawing
packages (i.e. Excel) for visualization
9
Presentation “View Kernel” (VK) is responsible for visualization Main view is a Gantt-chart timeline (OverVIEW)
Variants with color-coded information embedded are available lseek, io_wait, read, write time lseek, io_wait, read, write sizes Message sizes
Additional functionality, available via pop-up dialogs Source code correlation Construct-tree correlation
Other views Spokes - A view processes displayed arranged in a circle,
messages as lines connecting processes SysConfig - A view showing network interconnections and paths
of messages corresponding to selections in main view
10
References
[1] AIMS User Manual: http://www.nas.nasa.gov/Software/AIMS/manual/c1LM.html
[2] J. C. Yan, S. R. Sarukkai, and P. Mehra. "Performance Measurement, Visualization and Modeling of Parallel and Distributed Programs using the AIMS Toolkit". Software Practice & Experience. April 1995. Vol. 25, No. 4, pages 429- 461