IOSTATSTABLE(1) NAME IOstatsTable - Produce tables summarizing information about I/O operations from I/O detail trace records SYNOPSIS IOstatsTable [-processor number] [-fileID id] tracefile DESCRIPTION IOstatsTable generates a report containing two tables of information about application I/O activity summarized by request type from detailed I/O trace records in the input SDDF trace file. The necessary trace event records are produced by the I/O extension to the Pablo trace library by default whenever the I/O extension has been initialized and individual I/O calls have been instrumented. As IOstatsTable is running, it periodically displays the number of input trace packets (records) processed to stan- dard error. The report output is directed to standard out. If the input file does not include any I/O detail trace records, the report will be generated without error but will contain all zeros. For the report to work as intended, there must be I/O detail trace records in the input SDDF file. If the programmer elects not to collect I/O detail trace records for the entire application execu- tion, the report must be interpreted with that in mind. OPTIONS -processor number Only I/O activity occurring on the specified pro- cessor is included in the report. A comment con- taining the processor number is written to standard error when IOstatsTable begins execution. The pro- cessor number is also included in the report itself after the heading "Reported Processor:". The default behavior is to include I/O activity from all processors. -fileID id Only I/O activity associated with the specified file, as identified by id, is included in the report. A comment containing the file ID is writ- ten to standard error when IOstatsTable begins exe- cution. The file ID and file name are also included in the report itself after the headings "Reported File ID:" and "Reported File:". If the input trace uses the same fileID to refer to multiple files, the information from all files associated with the selected ID will be included in the report. However, the name of only one of the files will be listed. See the section below on "BEFORE RUNNING THE PROGRAM" and also Syn- cIOfileIDs(1) for further discussion on how to avoid this file ID to file name mismatch problem. The default behavior is to include I/O activity for all files in the report. BEFORE RUNNING THE PROGRAM The application to be studied must be instrumented with the I/O extension to the Pablo trace library and should NOT call the function disableIOdetail(). The instrumented application is run and one or more trace files are gener- ated - the number of trace files depends on the number of processors used to run the application. If there are multiple trace files, they should be merged with the MergePabloTraces(1) program to produce a single trace file for the execution including information from all processors. It is possible to run IOstatsTable on unmerged trace files, but the output will only contain information for the single processor reported in the input trace file. After the trace files have been merged, you should run the program AdjustTime(1) on the merged trace file if you linked the application with the the raw clock version of the Pablo trace library. If you intend to use the -fileID option to report only accesses to individual files, the program SyncIOfileIDs(1) should be run on the input trace file to synchronize IDs for files that were opened more than once by the applica- tion. The file generated by SyncIOfileIDs ending in ".syncFiles" can be used as input to IOstatsTable. The file ending in ".syncFiles.map" can be used to identify the file ID of the particular file whose I/O you are interested in viewing. If I/O detail trace records were not produced for all I/O operations in the application, either because some calls were not instrumented or because detail tracing was dis- abled for part of the execution, the report will include only those operations for which detail records were pro- duced and should be interpreted with that in mind. THE REPORT The report tabulates information from detailed I/O event trace records. Every I/O operation for the processor(s) and file(s) in the input tracefile that is not filtered out by a command line -fileID or -processor switch is treated separately - there is no attempt to correlate operations that take place concurrently on individual nodes of a multiprocessor system. Said another way, the processor and file ID information in the trace event records is used for filtering purposes, but is not consid- ered beyond that as the statistics are generated for this report. The input trace file is listed near the top of the report. The reported first and last I/O operation timestamps are based on I/O requests from every processor included in the report. The number of nodes reported is one plus the highest processor identifier appearing in the trace file. The reported wall-clock time is the greatest timestamp in the trace file, and the execution time is the wall-clock time multiplied by the number of nodes. The first table in the report shows the following informa- tion for each I/O request type and a summary line for all I/O requests: o Count: count of occurances o %Count: percentage of occurances relative to all reported I/O requests o IO time: total time spent (in seconds) o %IOtim: percentage of time spent relative to all reported I/O requests o %EXtim: percentage of time spent relative to exe- cution time o Bytes: total bytes transferred o %Bytes: percentage of bytes transferred relative to bytes transferred for all reported I/O requests The second table provides a distribution of read and write requests based on request size. For systems which include Asynch Read and Asynch Write information, the durations reported are for the asyn- chronous read or asynchronous write calls and do not include the actual time required to transfer the requested bytes. SEE ALSO AdjustTime(1), FileRegionIOstats(1), IOstats(1), IOtotalsByPE(1), MergePabloTraces(1), LifetimeIOstats(1), SyncIOfileIDs(1), TimeWindowIOstats(1) Ruth A. Aydt, A User's Guide to Pablo I/O Instrumentation Ruth A. Aydt, The Pablo Self-Defining Data Format COPYRIGHT Copyright 1996, The University of Illinois Board of Trustees. AUTHOR Ruth A. Aydt, University of Illinois Pablo Environment Feb 22, 1996