Run-time instrumentation indirect sampling by address
First Claim
1. A computer program product for implementing run-time instrumentation indirect sampling by address, the computer program product comprising:
- a tangible non-transitory storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising;
initializing a run-time-instrumentation control based on executing a load run-time instrumentation controls (LRIC) instruction, the LRIC instruction establishing a sampling mode and a sample-point address (SPA) control according to a sampling control block included as an operand of the LRIC instruction, the sampling mode selectable to enable an indirect sampling by address mode in combination with a directed sampling mode that triggers sampling upon execution of a next sequential instruction following a run-time instrumentation next instruction, and/or an interval-based sampling mode that triggers sampling at specified intervals;
collecting into a collection buffer that is internal to a processor, a plurality of run-time instrumentation information comprising events and data associated with execution of an instruction stream while the instruction stream is executing on the processor;
reading sample-point addresses from a sample-point address array in a register that is internal to the processor;
comparing, by the processor, the sample-point addresses to an address associated with an instruction from an instruction stream executing on the processor;
recognizing a sample point upon execution of the instruction associated with the address matching one of the sample-point addresses, wherein run-time instrumentation information is obtained from the sample point; and
triggering a transfer of the run-time instrumentation information from the collection buffer to a run-time instrumentation program buffer as a reporting group based on recognizing the sample point, wherein the run-time instrumentation program buffer is located in memory that is external to the processor.
2 Assignments
0 Petitions
Accused Products
Abstract
The invention relates to implementing run-time instrumentation indirect sampling by address. An aspect of the invention includes a method for implementing run-time instrumentation indirect sampling by address. The method includes reading sample-point addresses from a sample-point address array, and comparing, by a processor, the sample-point addresses to an address associated with an instruction from an instruction stream executing on the processor. The method further includes recognizing a sample point upon execution of the instruction associated with the address matching one of the sample-point addresses. Run-time instrumentation information is obtained from the sample point. The method also includes storing the run-time instrumentation information in a run-time instrumentation program buffer as a reporting group.
-
Citations
11 Claims
-
1. A computer program product for implementing run-time instrumentation indirect sampling by address, the computer program product comprising:
a tangible non-transitory storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising; initializing a run-time-instrumentation control based on executing a load run-time instrumentation controls (LRIC) instruction, the LRIC instruction establishing a sampling mode and a sample-point address (SPA) control according to a sampling control block included as an operand of the LRIC instruction, the sampling mode selectable to enable an indirect sampling by address mode in combination with a directed sampling mode that triggers sampling upon execution of a next sequential instruction following a run-time instrumentation next instruction, and/or an interval-based sampling mode that triggers sampling at specified intervals; collecting into a collection buffer that is internal to a processor, a plurality of run-time instrumentation information comprising events and data associated with execution of an instruction stream while the instruction stream is executing on the processor; reading sample-point addresses from a sample-point address array in a register that is internal to the processor; comparing, by the processor, the sample-point addresses to an address associated with an instruction from an instruction stream executing on the processor; recognizing a sample point upon execution of the instruction associated with the address matching one of the sample-point addresses, wherein run-time instrumentation information is obtained from the sample point; and triggering a transfer of the run-time instrumentation information from the collection buffer to a run-time instrumentation program buffer as a reporting group based on recognizing the sample point, wherein the run-time instrumentation program buffer is located in memory that is external to the processor. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
8. A system for implementing run-time instrumentation indirect sampling by address, the system comprising:
-
a memory; and a processor comprising a run-time instrumentation module, the run-time instrumentation module configured to perform a method comprising; initializing a run-time-instrumentation control based on executing a load run-time instrumentation controls (LRIC) instruction, the LRIC instruction establishing a sampling mode and a sample-point address (SPA) control according to a sampling control block included as an operand of the LRIC instruction, the sampling mode selectable to enable an indirect sampling by address mode in combination with a directed sampling mode that triggers sampling upon execution of a next sequential instruction following a run-time instrumentation next instruction, and/or an interval-based sampling mode that triggers sampling at specified intervals; collecting into a collection buffer that is internal to the processor, a plurality of run-time instrumentation information comprising events and data associated with execution of an instruction stream while the instruction stream is executing on the processor; reading sample-point addresses from a sample-point address array in a register that is internal to the processor; comparing, by the processor, the sample-point addresses to an address associated with an instruction from an instruction stream executing on the processor; recognizing a sample point upon execution of the instruction associated with the address matching one of the sample-point addresses, wherein run-time instrumentation information is obtained from the sample point; and triggering a transfer of the run-time instrumentation information from the collection buffer to a run-time instrumentation program buffer as a reporting group based on recognizing the sample point, wherein the run-time instrumentation program buffer is located in memory that is external to the processor. - View Dependent Claims (9, 10, 11)
-
Specification