摘要:
An apparatus and method for cataloging symbolic data for use in performance analysis of computer programs is provided. The apparatus and method stores symbolic data for loaded modules during or shortly after a performance trace and utilizes the stored symbolic data when performing a performance analysis at a later time. A merged symbol file is generated for a computer program, or application, under trace. The merged symbol file contains information useful in performing symbolic resolution of address information in trace files for each instance of a module. During post processing of the trace information generated by a performance trace of a computer program, symbolic information stored in the merged symbol file is compared to the trace information stored in the trace file. The correct symbolic information in the merged symbol file for loaded modules is identified based on a number of validating criteria. The correct symbolic information for the loaded modules may then be stored as an indexed database that is used to resolve address information into corresponding symbolic information when providing the trace information to a display for use by a user.
摘要:
An apparatus and method for cataloging symbolic data for use in performance analysis of computer programs is provided. The apparatus and method stores symbolic data for loaded modules during or shortly after a performance trace and utilizes the stored symbolic data when performing a performance analysis at a later time. A merged symbol file is generated for a computer program, or application, under trace. The merged symbol file contains information useful in performing symbolic resolution of address information in trace files for each instance of a module. During post processing of the trace information generated by a performance trace of a computer program, symbolic information stored in the merged symbol file is compared to the trace information stored in the trace file. The correct symbolic information in the merged symbol file for loaded modules is identified based a number of validating criteria. The correct symbolic information for the loaded modules may then be stored as an indexed database that is used to resolve address information into corresponding symbolic information when providing the trace information to a display for use by a user.
摘要:
An apparatus and method for cataloging symbolic data for use in performance analysis of computer programs is provided. The apparatus and method stores symbolic data for loaded modules during or shortly after a performance trace and utilizes the stored symbolic data when performing a performance analysis at a later time. A merged symbol file is generated for a computer program, or application, under trace. The merged symbol file contains information useful in performing symbolic resolution of address information in trace files for each instance of a module. During post processing of the trace information generated by a performance trace of a computer program, symbolic information stored in the merged symbol file is compared to the trace information stored in the trace file. The correct symbolic information in the merged symbol file for loaded modules is identified based a number of validating criteria. The correct symbolic information for the loaded modules may then be stored as an indexed database that is used to resolve address information into corresponding symbolic information when providing the trace information to a display for use by a user.
摘要:
An apparatus and method for cataloging symbolic data for use in performance analysis of computer programs is provided. The apparatus and method stores symbolic data for loaded modules during or shortly after a performance trace and utilizes the stored symbolic data when performing a performance analysis at a later time. A merged symbol file is generated for a computer program, or application, under trace. The merged symbol file contains information useful in performing symbolic resolution of address information in trace files for each instance of a module. During post processing of the trace information generated by a performance trace of a computer program, symbolic information stored in the merged symbol file is compared to the trace information stored in the trace file. The correct symbolic information in the merged symbol file for loaded modules is identified based a number of validating criteria. The correct symbolic information for the loaded modules may then be stored as an indexed database that is used to resolve address information into corresponding symbolic information when providing the trace information to a display for use by a user.
摘要:
A method and system for profiling a program using periodic trace sampling is provided. During the execution of the program, sample-based profiling of the executing program is performed—for a predetermined period, a profiler performs trace processing for the program, after which the profiler pauses and does not perform trace processing for a predetermined period. The periods controlling the profiler may be selected by a user, and the periods may be measured by temporal or non-temporal metrics. The profiler cycles through these periods, during which selected events are processed to generate a profile of the execution flows within the program. For each sample period, a tree data structure is generated in which nodes of the tree data structure represent the routines of the program that execute during the sample period, as may be indicated by entry and exit events caused by the execution of the routines. When the execution of the program is complete, the tree data structures from each sample period are merged into a resulting tree data structure.
摘要:
A method and system for profiling a program using periodic trace sampling is provided. During the execution of the program, sample-based profiling of the executing program is performed—for a predetermined period, a profiler performs trace processing for the program, after which the profiler pauses and does not perform trace processing for a predetermined period or only performs lightweight processing for a predetermined period. The periods controlling the profiler may be selected by a user, and the periods may be measured by temporal or non-temporal metrics. The user may also specify parameters that are used to filter events so that profiling is performed only for specified threads or methods. The profiler cycles through these periods, during which selected events are processed to generate a profile of the execution flows within the program. For each sample period, a tree data structure is generated in which nodes of the tree data structure represent the routines of the program that execute during the sample period, as may be indicated by entry and exit events caused by the execution of the routines. At the start of each sample period, execution flow information may be used to create an initial tree data structure. When the execution of the program is complete, the tree data structures from each sample period are merged into a resulting tree data structure.
摘要:
During the recording of events occurring within the operation of a data processing system, a user-selected metric of interest is recorded along with the trace data for each recorded event. The metric of interest is a monotonically increasing variable that provides a non-time relationship between the recorded events. This relationship may be time or non-time based.
摘要:
A method and apparatus in a data processing system for profiling code for processes executing in a data processing system. Trace data is recorded in response to a selected interrupt, wherein the trace data includes an indication of which code is being interrupted. The trace data is processed to identify whether the interrupted code is interpreted code.
摘要:
A user may specify a vector of metrics to be used while profiling a program. The vector of metrics may optionally be thread-relative. In response to a notification of an occurrence of the current event, a thread-relative elapsed metric is computed by: determining a current thread; retrieving a stored reference metric for the preceding event of the current thread; obtaining a current reference metric; and computing the thread-relative elapsed metric as a difference between the current reference metric and the stored reference metric. In order to prevent the generation of redundant metric information, the information associated with the vector of metrics maybe placed into the trace records in several different space-saving formats.
摘要:
When building an image for a JavaOS client, a date/time stamp is inserted into the symbolic image produced. When a trace program is initiated against this image, the same Build Identifier is inserted into the produced trace data. A comparison is made between the Build Identifiers to ensure that the trace file is analyzed using the correct symbolic image.