Apparatus and method for profiling system events in a fine grain multi-threaded multi-core processor
First Claim
1. A computer-implemented method, comprising:
- a hardware processor sending a message to one or more system components in a computing system;
an event agent of the hardware processor receiving a reply to the message from one of the one or more system components, wherein the reply comprises data supplied by a source in response to the message and a source type indicator for the source of the data, and wherein the source type indicator is set to one of a plurality of values, wherein the plurality of values comprises two or more of;
a value that characterizes the source of the data as being a remote source, relative to the hardware processor,a value that characterizes the source of the data as being a local source, relative to the hardware processor,a value that characterizes the source of the data as being a private storage location,a value that characterizes the source of the data as being a shared storage location,a value that characterizes the source of the data as being in a different coherency domain than an originator of the message,a value that characterizes the source of the data as being in a same coherency domain as an originator of the message, ora value that indicates the data was supplied via a cache-to-cache transfer;
the event agent detecting a runtime system event in the computing system dependent on the reply, wherein the runtime system event is a system event that occurs as a result of executing a particular software application whose behavior during execution is being profiled and on whose behalf the message was sent; and
the event agent associating an indication of the source type with the detected event in an event set, wherein the indication is dependent on the source type indicator that was included in the reply.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for profiling runtime system events of a computer system may include associating a data source type with detected system events. The system events may be detected dependent on information included in a reply message received by a processor in response to a data request or other transaction request message. The reply message may include information characterizing a source type of a source of data included in the reply message. The source type information may indicate that the source is remote or local; that it is a shared or a private storage location; that the data is supplied via a cache-to-cache transfer; or that the data is sourced from a coherency domain other than that of the requesting process. Instructions, events, messages, and replies may be sampled, and extended address information corresponding to the samples may be stored in an event set database for performance analysis.
-
Citations
14 Claims
-
1. A computer-implemented method, comprising:
-
a hardware processor sending a message to one or more system components in a computing system; an event agent of the hardware processor receiving a reply to the message from one of the one or more system components, wherein the reply comprises data supplied by a source in response to the message and a source type indicator for the source of the data, and wherein the source type indicator is set to one of a plurality of values, wherein the plurality of values comprises two or more of; a value that characterizes the source of the data as being a remote source, relative to the hardware processor, a value that characterizes the source of the data as being a local source, relative to the hardware processor, a value that characterizes the source of the data as being a private storage location, a value that characterizes the source of the data as being a shared storage location, a value that characterizes the source of the data as being in a different coherency domain than an originator of the message, a value that characterizes the source of the data as being in a same coherency domain as an originator of the message, or a value that indicates the data was supplied via a cache-to-cache transfer; the event agent detecting a runtime system event in the computing system dependent on the reply, wherein the runtime system event is a system event that occurs as a result of executing a particular software application whose behavior during execution is being profiled and on whose behalf the message was sent; and the event agent associating an indication of the source type with the detected event in an event set, wherein the indication is dependent on the source type indicator that was included in the reply. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer-implemented method, comprising:
-
a system component receiving a message comprising a data request from a hardware processor; and the system component sending a reply message to the hardware processor in response to the data request, wherein the reply message comprises data supplied by a source satisfying the data request and a source type indicator for the source of the data, and wherein the source type indicator is set to one of a plurality of values, wherein the plurality of values comprises two or more of; a value that characterizes the source of the data as being a remote source, relative to the hardware processor, a value that characterizes the source of the data as being a local source, relative to the hardware processor, a value that characterizes the source of the data as being a private storage location, a value that characterizes the source of the data as being a shared storage location, a value that characterizes the source of the data as being in a different coherency domain than an originator of the data request, a value that characterizes the source of the data as being in a same coherency domain as an originator of the data request, or a value that indicates the data was supplied via a cache-to-cache transfer; wherein information included in the reply message is to be used by the hardware processor in detecting, in response to receiving the reply message, a system event that occurs as a result of executing a particular software application whose behavior during execution is being profiled and on whose behalf the message was sent; and wherein the source type indicator is to be used by the hardware processor for storing in association with the detected event in an event set. - View Dependent Claims (7, 8, 9)
-
-
10. A computing system, comprising:
-
a hardware processor; and a memory comprising program instructions executable by the hardware processor to implement a particular software application whose behavior during execution is to be profiled; wherein the program instructions are configured to implement; sending a message to one or more system components; receiving a reply to the message, wherein the reply comprises data supplied by a source in response to the message and a source type indicator for the source of the data, and wherein the source type indicator is set to one of a plurality of values, wherein the plurality of values comprises two or more of; a value that characterizes the source of the data as being a remote source, relative to the hardware processor, a value that characterizes the source of the data as being a local source, relative to the hardware processor, a value that characterizes the source of the data as being a private storage location, a value that characterizes the source of the data as being a shared storage location, a value that characterizes the source of the data as being in a different coherency domain than an originator of the message, a value that characterizes the source of the data as being in a same coherency domain as an originator of the message, or a value that indicates the data was supplied via a cache-to-cache transfer; detecting a runtime system event dependent on the reply, wherein the runtime system event is a system event that occurs as a result of executing the program instructions that implement the particular software application on whose behalf the message was sent; and associating an indication of the source type with the detected event in an event set, wherein the indication is dependent on the source type indicator that was included in the reply. - View Dependent Claims (11, 12, 13, 14)
-
Specification