发明名称 Modifying run-time-instrumentation controls from a lesser-privileged state
摘要 Embodiments of the invention relate to modifying run-time-instrumentation controls (MRIC) from a lesser-privileged state. The MRIC instruction is fetched. The MRIC instruction includes the address of a run-time-instrumentation control block (RICCB). The RICCB is fetched based on the address included in the MRIC instruction. The RICCB includes values for modifying a subset of the processor's run-time-instrumentation controls. The subset of run-time-instrumentation controls includes a runtime instrumentation program buffer current address (RCA) of a runtime instrumentation program buffer (RIB) location. The RIB holds run-time-instrumentation information of the events recognized by the processor during program execution. The values of the RICCB are loaded into the run-time-instrumentation controls. Event information is provided to the RIB based on the values that were loaded in the run-time-instrumentation control.
申请公布号 US9489285(B2) 申请公布日期 2016.11.08
申请号 US201313792283 申请日期 2013.03.11
申请人 International Business Machines Corporation 发明人 Farrell Mark S.;Gainey, Jr. Charles W.;Shum Chung-Lung K.;Slegel Timothy J.
分类号 G06F11/36;G06F9/30 主分类号 G06F11/36
代理机构 代理人 Kinnaman, Jr. William A.
主权项 1. A computer implemented method for executing a modifying run-time-instrumentation controls (MRIC) instruction from either a supervisor state or a lesser-privileged state, the MRIC instruction for setting only a subset of run-time-instrumentation controls, wherein all of said run-time-instrumentation controls are loadable by a privileged load run-time-instrumentation controls (LRIC) instruction, the method comprising: fetching the MRIC instruction, the MRIC instruction including an address of a run-time-instrumentation control block (RICCB); fetching, by a processor, the RICCB, the RICCB including a plurality of values for modifying said subset of run-time-instrumentation controls of the processor, the plurality of values of the RICCB comprising: a runtime instrumentation program buffer current address (RCA) of a runtime instrumentation program buffer (RIB) location, the RIB for holding runtime instrumentation information of events recognized by the processor during program execution; andone or more of: a control to manage details of run-time-instrumentation data sampling;a control to manage details of run-time-instrumentation data collection;a control to manage details of run-time-instrumentation data reporting into a program buffer;a control to manage detection of instruction-cache misses;a control to manage detection of data-cache misses;a control to manage a size of a reporting group;a control to manage a current address within an output program buffer at which a next reporting group is stored;controls to manage data collection of data on call-type, return-type, and transfer-type branches; andcontrols to manage data collection of branches that are correctly or incorrectly predicted as taken or not taken; loading the plurality of values into the run-time-instrumentation controls; and using the loaded plurality of values to provide run-time-instrumentation event information to the RIB.
地址 Armonk NY US