JP6095682B2 - プログラム・イベント記録イベントのランタイム計装イベントへの変換 - Google Patents
プログラム・イベント記録イベントのランタイム計装イベントへの変換 Download PDFInfo
- Publication number
- JP6095682B2 JP6095682B2 JP2014543664A JP2014543664A JP6095682B2 JP 6095682 B2 JP6095682 B2 JP 6095682B2 JP 2014543664 A JP2014543664 A JP 2014543664A JP 2014543664 A JP2014543664 A JP 2014543664A JP 6095682 B2 JP6095682 B2 JP 6095682B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- per
- event
- bit
- runtime
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3644—Software debugging by instrumenting at runtime
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Debugging And Monitoring (AREA)
Description
a.割り込み可能命令の場合、部分的に完了したすべての動作単位、カウントが減分される1つのカウント済み単位を表す。
b.割り込み可能命令の場合、最も新しい部分的完了から最終完了までのすべての動作単位は、カウントが減分される1つのカウント済み単位を表す。
c.命令のパラメータによって指定された処理のうちCPUが決定した部分を実行した後に完了する命令の場合、完了は、カウントが減分される1つのカウント済み単位を表す。
d.複数の動作単位を実行した後に完了するが、上記a〜cのカテゴリに入らない命令の場合、最終動作単位の完了は、カウントが減分される1つのカウント済み単位を表す。
命令は、命令の任意のカウント済み単位についてカウントがゼロまで減分された場合、サンプル命令である。ゼロなどのしきい値に達すると、カウントはSF740の値に再初期化され、上記a〜dに記載されたようにカウントダウンを開始する。カウント・モードのすべてのケースにおいて、報告は、サンプル命令の最終動作単位の完了後に、適宜発生する。
RCB≧(RRG−RNC)
ビット32:正常な分岐イベント
ビット33:命令フェッチ・イベント
ビット34:ストレージ変更イベント
ビット36:実アドレス使用ストア・イベント(ビット34も1でなければならない)
ビット39:命令フェッチ無効化イベント(ビット33も1でなければならない)
CR9のビット32〜34およびビット36は、1の場合、対応するイベントのタイプがPERイベントとして認識されることを指定する。しかしながらビット36は、ビット34も1の場合にのみ、この目的に対して有効である。ビット34が1の場合、ストレージ変更イベントが認識される。ビット34および36が1の場合、ストレージ変更イベントおよび実アドレス使用ストア・イベントの両方が認識される。ビットがゼロの場合、対応するイベントのタイプは認識されない。ビット34がゼロの場合、ストレージ変更イベントおよび実アドレス使用ストア・イベントの両方が認識されない。
のブロック内に指定された機能/動作を実装する命令を含む製品を生成することになる。
Claims (20)
- プログラム・イベント記録イベントをランタイム計装イベントに変換するための、コンピュータ・プログラムであって、
コンピュータに、
実行される命令ストリームの計装情報を収集するためのランタイム計装を使用可能にする手順と、
前記命令ストリームに関連付けられるプログラム・イベント記録(PER)イベントを検出する手順と、
前記PERイベントの検出に基づいて、前記PERイベントを識別する情報を含むPERイベント記録をランタイム計装イベントとして収集バッファに書き込む手順と、
を実行させる、コンピュータ・プログラム。 - 前記PERイベントを検出する手順は、
前記命令ストリームがPER割り込み条件に関連付けられたPER割り込みによって割り込まれないように、前記PERイベントに関連付けられたPER割り込み条件をインターセプトする手順、
をさらに含む、請求項1に記載のコンピュータ・プログラム。 - ランタイム計装制御ロード(LRIC)命令の実行に基づいて、ランタイム計装制御を構成する手順をさらに前記コンピュータに実行させ、前記LRIC命令はランタイム計装PER制御を有効化する、請求項1に記載のコンピュータ・プログラム。
- 低特権プログラムからのランタイム計装制御値を構成するために、前記LRIC命令の実行に基づいてランタイム計装制御修正(MRIC)命令の実行を許可するように、Kビットを設定する手順、および、
前記ランタイム計装PER制御が有効化され、Kビットが設定された場合、前記低特権プログラムからのPER制御レジスタを構成するために、前記LRIC命令の実行に基づいて前記MRIC命令の実行を許可するように、PKビットを設定する手順、
をさらに前記コンピュータに実行させる、請求項3に記載のコンピュータ・プログラム。 - 前記MRIC命令は、ランタイム計装プログラム・バッファ現行アドレス(RCA)フィールド、ランタイム計装プログラム・バッファ起点アドレス(ROA)フィールド、およびランタイム計装プログラム・バッファ限界アドレス(RLA)フィールドを含む、制御フロックを更新し、
前記MRIC命令の実行に基づいて、ランタイム計装プログラム・バッファを構成するために、前記ROAフィールドおよび前記RLAフィールド内のアドレス値を設定する手順であって、前記PKビットはクリアされ、前記Kビットは設定される、設定する手順、および、
後続のMRIC命令の実行に基づいて、PER制御レジスタを構成するために、前記RCAフィールド、前記ROAフィールド、および前記RLAフィールドのうちの1つまたは複数を再マッピングする手順であって、前記PKビットは設定され、前記Kビットは設定される、再マッピングする手順、
をさらに前記コンピュータに実行させる、請求項4に記載のコンピュータ・プログラム。 - 前記ランタイム計装PER制御が有効化される場合、前記PERイベントを発生させる命令をサンプル命令として認識するために、前記LRIC命令の実行に基づいてPIビットを設定する手順、および、
前記PERイベント記録と、前記PERイベントを発生させる命令を前記サンプル命令として識別する命令タイプ記録とを含む報告グループをランタイム計装プログラム・バッファに記憶する手順、
をさらに前記コンピュータに実行させる、請求項3に記載のコンピュータ・プログラム。 - 前記PERイベント記録は、
前記PERイベントを識別するPERコードであって、前記PERイベントは、正常分岐、命令フェッチ、ストレージ変更、実アドレス使用ストア、および命令フェッチ無効化のうちの1つである、PERコードと、
前記PERイベントを発生させた参照を変換するために使用される、PERアドレス・スペース制御要素識別と、
PERアクセス識別と、
命令フィールドのPER長さと、
前記PERイベントについての責務を負う前記命令をフェッチするために使用される命令アドレスを含む、PERアドレスと、
を含む、請求項1に記載のコンピュータ・プログラム。 - プログラム・イベント記録イベントをランタイム計装イベントに変換するための、コンピュータ実装方法であって、
プロセッサ上で実行する命令ストリームの計装情報を収集するためのランタイム計装を有効化すること、
前記プロセッサによって、前記命令ストリームに関連付けられるプログラム・イベント記録(PER)イベントを検出すること、および、
前記PERイベントの検出に基づいて、前記PERイベントを識別する情報を含むPERイベント記録をランタイム計装イベントとして収集バッファに書き込むこと、
を含む、方法。 - 前記PERイベントを検出することは、
前記プロセッサ上で実行する前記命令ストリームがPER割り込み条件に関連付けられたPER割り込みによって割り込まれないように、前記PERイベントに関連付けられたPER割り込み条件をインターセプトすること、
をさらに含む、請求項8に記載の方法。 - ランタイム計装制御ロード(LRIC)命令の実行に基づいて、ランタイム計装制御を構成することをさらに含み、前記LRIC命令はランタイム計装PER制御を有効化する、請求項8に記載の方法。
- 低特権プログラムからのランタイム計装制御値を構成するために、前記LRIC命令の実行に基づいてランタイム計装制御修正(MRIC)命令の実行を許可するように、Kビットを設定すること、および、
前記ランタイム計装PER制御が有効化され、Kビットが設定された場合、前記低特権プログラムからのPER制御レジスタを構成するために、前記LRIC命令の実行に基づいて前記MRIC命令の実行を許可するように、PKビットを設定すること、
をさらに含む、請求項10に記載の方法。 - 前記MRIC命令は、ランタイム計装プログラム・バッファ現行アドレス(RCA)フィールド、ランタイム計装プログラム・バッファ起点アドレス(ROA)フィールド、およびランタイム計装プログラム・バッファ限界アドレス(RLA)フィールドを含む、制御フロックを更新し、
前記MRIC命令の実行に基づいて、ランタイム計装プログラム・バッファを構成するために、前記ROAフィールドおよび前記RLAフィールド内のアドレス値を設定することであって、前記PKビットはクリアされ、前記Kビットは設定される、設定すること、および、
後続のMRIC命令の実行に基づいて、PER制御レジスタを構成するために、前記RCAフィールド、前記ROAフィールド、および前記RLAフィールドのうちの1つまたは複数を再マッピングすることであって、前記PKビットは設定され、前記Kビットは設定される、再マッピングすること、
をさらに含む、請求項11に記載の方法。 - 前記ランタイム計装PER制御が使用可能な場合、前記PERイベントを発生させる命令をサンプル命令として認識するために、前記LRIC命令の実行に基づいてPIビットを設定すること、および、
前記PERイベント記録と、前記PERイベントを発生させる命令を前記サンプル命令として識別する命令タイプ記録とを含む報告グループをランタイム計装プログラム・バッファに記憶すること、
をさらに含む、請求項10に記載の方法。 - 前記PERイベント記録は、
前記PERイベントを識別するPERコードであって、前記PERイベントは、正常分岐、命令フェッチ、ストレージ変更、実アドレス使用ストア、および命令フェッチ無効化のうちの1つである、PERコードと、
前記PERイベントを発生させた参照を変換するために使用される、PERアドレス・スペース制御要素識別と、
PERアクセス識別と、
命令フィールドのPER長さと、
前記PERイベントについての責務を負う前記命令をフェッチするために使用される命令アドレスを含む、PERアドレスと、
を含む、請求項8に記載の方法。 - プログラム・イベント記録イベントをランタイム計装イベントに変換するための、システムであって、
収集バッファと、
ランタイム計装モジュールを含むプロセッサであって、前記ランタイム計装モジュールは、
プロセッサ上で実行する命令ストリームの計装情報を収集するためのランタイム計装を有効化すること、
前記プロセッサによって、前記命令ストリームに関連付けられるプログラム・イベント記録(PER)イベントを検出すること、および、
前記PERイベントの検出に基づいて、前記PERイベントを識別する情報を含むPERイベント記録をランタイム計装イベントとして収集バッファに書き込むこと、
を含む方法を実行するように構成された、プロセッサと、
を備える、システム。 - 前記PERイベントを検出することは、
前記プロセッサ上で実行する前記命令ストリームがPER割り込み条件に関連付けられたPER割り込みによって割り込まれないように、前記PERイベントに関連付けられたPER割り込み条件をインターセプトすること、
をさらに含む、請求項15に記載のシステム。 - ランタイム計装制御ロード(LRIC)命令の実行に基づいて、ランタイム計装制御を構成することをさらに含み、前記LRIC命令はランタイム計装PER制御を有効化する、請求項15に記載のシステム。
- 低特権プログラムからのランタイム計装制御値を構成するために、前記LRIC命令の実行に基づいてランタイム計装制御修正(MRIC)命令の実行を許可するように、Kビットを設定すること、および、
前記ランタイム計装PER制御が有効化され、Kビットが設定された場合、前記低特権プログラムからのPER制御レジスタを構成するために、前記LRIC命令の実行に基づいて前記MRIC命令の実行を許可するように、PKビットを設定すること、
をさらに含む、請求項17に記載のシステム。 - 前記ランタイム計装PER制御が有効化される場合、前記PERイベントを発生させる命令をサンプル命令として認識するために、前記LRIC命令の実行に基づいてPIビットを設定すること、および、
前記PERイベント記録と、前記PERイベントを発生させる命令を前記サンプル命令として識別する命令タイプ記録とを含む報告グループをランタイム計装プログラム・バッファに記憶すること、
をさらに含む、請求項17に記載のシステム。 - 前記PERイベント記録は、
前記PERイベントを識別するPERコードであって、前記PERイベントは、正常分岐、命令フェッチ、ストレージ変更、実アドレス使用ストア、および命令フェッチ無効化のうちの1つである、PERコードと、
前記PERイベントを発生させた参照を変換するために使用される、PERアドレス・スペース制御要素識別と、
PERアクセス識別と、
命令フィールドのPER長さと、
前記PERイベントについての責務を負う前記命令をフェッチするために使用される命令アドレスを含む、PERアドレスと、
を含む、請求項15に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/422,596 US9442824B2 (en) | 2012-03-16 | 2012-03-16 | Transformation of a program-event-recording event into a run-time instrumentation event |
US13/422,596 | 2012-03-16 | ||
PCT/JP2013/001412 WO2013136726A1 (en) | 2012-03-16 | 2013-03-06 | Transformation of a program-event-recording event into a run-time instrumentation event |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015515654A JP2015515654A (ja) | 2015-05-28 |
JP6095682B2 true JP6095682B2 (ja) | 2017-03-15 |
Family
ID=49158905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014543664A Active JP6095682B2 (ja) | 2012-03-16 | 2013-03-06 | プログラム・イベント記録イベントのランタイム計装イベントへの変換 |
Country Status (5)
Country | Link |
---|---|
US (2) | US9442824B2 (ja) |
EP (1) | EP2825965B1 (ja) |
JP (1) | JP6095682B2 (ja) |
CN (1) | CN104205064B (ja) |
WO (1) | WO2013136726A1 (ja) |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8726225B2 (en) * | 2011-08-01 | 2014-05-13 | Vmware, Inc. | Testing of a software system using instrumentation at a logging module |
US20130339680A1 (en) | 2012-06-15 | 2013-12-19 | International Business Machines Corporation | Nontransactional store instruction |
US10437602B2 (en) | 2012-06-15 | 2019-10-08 | International Business Machines Corporation | Program interruption filtering in transactional execution |
US9361115B2 (en) | 2012-06-15 | 2016-06-07 | International Business Machines Corporation | Saving/restoring selected registers in transactional processing |
US9448796B2 (en) | 2012-06-15 | 2016-09-20 | International Business Machines Corporation | Restricted instructions in transactional execution |
US9436477B2 (en) | 2012-06-15 | 2016-09-06 | International Business Machines Corporation | Transaction abort instruction |
US9348642B2 (en) | 2012-06-15 | 2016-05-24 | International Business Machines Corporation | Transaction begin/end instructions |
US8688661B2 (en) | 2012-06-15 | 2014-04-01 | International Business Machines Corporation | Transactional processing |
US9772854B2 (en) | 2012-06-15 | 2017-09-26 | International Business Machines Corporation | Selectively controlling instruction execution in transactional processing |
US9336046B2 (en) | 2012-06-15 | 2016-05-10 | International Business Machines Corporation | Transaction abort processing |
US9317460B2 (en) * | 2012-06-15 | 2016-04-19 | International Business Machines Corporation | Program event recording within a transactional environment |
US9384004B2 (en) | 2012-06-15 | 2016-07-05 | International Business Machines Corporation | Randomized testing within transactional execution |
US9740549B2 (en) | 2012-06-15 | 2017-08-22 | International Business Machines Corporation | Facilitating transaction completion subsequent to repeated aborts of the transaction |
US9367323B2 (en) | 2012-06-15 | 2016-06-14 | International Business Machines Corporation | Processor assist facility |
US9442737B2 (en) | 2012-06-15 | 2016-09-13 | International Business Machines Corporation | Restricting processing within a processor to facilitate transaction completion |
US8682877B2 (en) | 2012-06-15 | 2014-03-25 | International Business Machines Corporation | Constrained transaction execution |
US9804951B2 (en) * | 2014-10-08 | 2017-10-31 | Signalfx, Inc. | Quantization of data streams of instrumented software |
WO2016095091A1 (en) * | 2014-12-15 | 2016-06-23 | Intel Corporation | Instrumentation of graphics instructions |
US9760353B2 (en) * | 2014-12-19 | 2017-09-12 | Signalfx, Inc. | Dynamically changing input data streams processed by data stream language programs |
US10394692B2 (en) | 2015-01-29 | 2019-08-27 | Signalfx, Inc. | Real-time processing of data streams received from instrumented software |
US10466974B2 (en) * | 2015-04-14 | 2019-11-05 | Microsoft Technology Licensing, Llc | Independent expression animations |
GB2544474B (en) * | 2015-11-16 | 2020-02-26 | Advanced Risc Mach Ltd | Event triggered programmable prefetcher |
US10579377B2 (en) | 2017-01-19 | 2020-03-03 | International Business Machines Corporation | Guarded storage event handling during transactional execution |
US10496292B2 (en) | 2017-01-19 | 2019-12-03 | International Business Machines Corporation | Saving/restoring guarded storage controls in a virtualized environment |
US10725685B2 (en) | 2017-01-19 | 2020-07-28 | International Business Machines Corporation | Load logical and shift guarded instruction |
US10452288B2 (en) | 2017-01-19 | 2019-10-22 | International Business Machines Corporation | Identifying processor attributes based on detecting a guarded storage event |
US10496311B2 (en) * | 2017-01-19 | 2019-12-03 | International Business Machines Corporation | Run-time instrumentation of guarded storage event processing |
US10732858B2 (en) | 2017-01-19 | 2020-08-04 | International Business Machines Corporation | Loading and storing controls regulating the operation of a guarded storage facility |
CN106933665B (zh) * | 2017-03-09 | 2020-06-26 | 中国科学技术大学 | 预测mpi程序运行时间的方法 |
KR102300347B1 (ko) * | 2017-08-07 | 2021-09-10 | 한국전자통신연구원 | 멀티코어 임베디드 시스템에 대한 연속 프로파일링 장치 및 그 방법 |
US11416749B2 (en) | 2018-12-11 | 2022-08-16 | Amazon Technologies, Inc. | Execution synchronization and tracking |
CN111506384B (zh) * | 2019-01-31 | 2022-12-09 | 中科寒武纪科技股份有限公司 | 模拟运算方法和模拟器 |
CN111581124A (zh) * | 2019-02-19 | 2020-08-25 | 睿宽智能科技有限公司 | 可缩短内文交换时间的方法及其半导体装置 |
US10838631B2 (en) | 2019-02-25 | 2020-11-17 | International Business Machines Corporation | Detection of alteration of storage keys used to protect memory |
US11281560B2 (en) * | 2019-03-19 | 2022-03-22 | Microsoft Technology Licensing, Llc | Input/output data transformations when emulating non-traced code with a recorded execution of traced code |
US11782816B2 (en) | 2019-03-19 | 2023-10-10 | Jens C. Jenkins | Input/output location transformations when emulating non-traced code with a recorded execution of traced code |
US10949332B2 (en) | 2019-08-14 | 2021-03-16 | Microsoft Technology Licensing, Llc | Data race analysis based on altering function internal loads during time-travel debugging |
CN112507180B (zh) * | 2020-12-11 | 2022-07-05 | 浙江中控技术股份有限公司 | 模拟机时间的转换方法、装置、电子设备及存储介质 |
CN113329034B (zh) * | 2021-06-25 | 2021-12-07 | 广州华资软件技术有限公司 | 基于人工智能的大数据业务优化方法、服务器及存储介质 |
Family Cites Families (143)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4821178A (en) | 1986-08-15 | 1989-04-11 | International Business Machines Corporation | Internal performance monitoring by event sampling |
JPS6421546A (en) | 1987-07-16 | 1989-01-24 | Nec Corp | Device for collecting program execution history |
JPH03217949A (ja) | 1990-01-23 | 1991-09-25 | Hitachi Ltd | 計算機システム |
US5151981A (en) | 1990-07-13 | 1992-09-29 | International Business Machines Corporation | Instruction sampling instrumentation |
US5341500A (en) | 1991-04-02 | 1994-08-23 | Motorola, Inc. | Data processor with combined static and dynamic masking of operand for breakpoint operation |
JP2505950B2 (ja) | 1991-05-13 | 1996-06-12 | インターナショナル・ビジネス・マシーンズ・コーポレイション | ハ―ドウェア支援ブレ―クポイント・システム |
US5491793A (en) | 1992-07-31 | 1996-02-13 | Fujitsu Limited | Debug support in a processor chip |
JPH07281930A (ja) | 1994-04-08 | 1995-10-27 | Nec Corp | 情報処理装置動作測定解析システム |
EP0689141A3 (en) | 1994-06-20 | 1997-10-15 | At & T Corp | Disruption-based hardware support for system performance profiling |
JP3318121B2 (ja) * | 1994-08-04 | 2002-08-26 | 富士通株式会社 | 仮想計算機システム |
US5555432A (en) | 1994-08-19 | 1996-09-10 | Intel Corporation | Circuit and method for scheduling instructions by predicting future availability of resources required for execution |
JPH09505922A (ja) | 1994-09-19 | 1997-06-10 | フィリップス エレクトロニクス ネムローゼ フェンノートシャップ | 多数のマイクロ制御器の演算を実行するマイクロ制御器システム |
US5675817A (en) | 1994-12-05 | 1997-10-07 | Motorola, Inc. | Language translating pager and method therefor |
US5553293A (en) | 1994-12-09 | 1996-09-03 | International Business Machines Corporation | Interprocessor interrupt processing system |
US5964893A (en) | 1995-08-30 | 1999-10-12 | Motorola, Inc. | Data processing system for performing a trace function and method therefor |
US5737516A (en) | 1995-08-30 | 1998-04-07 | Motorola, Inc. | Data processing system for performing a debug function and method therefor |
US5675768A (en) | 1996-02-01 | 1997-10-07 | Unisys Corporation | Store software instrumentation package instruction |
JPH09265407A (ja) * | 1996-03-29 | 1997-10-07 | Hitachi Ltd | 仮想プロセッサシステムのプログラム走行制御方法 |
JPH09282196A (ja) * | 1996-04-18 | 1997-10-31 | Hitachi Ltd | 複合論理プロセッサシステムのプログラム走行制御方式 |
US5987249A (en) | 1996-08-27 | 1999-11-16 | Numega Technologies | IR code instrumentation |
US6314558B1 (en) | 1996-08-27 | 2001-11-06 | Compuware Corporation | Byte code instrumentation |
US5796939A (en) | 1997-03-10 | 1998-08-18 | Digital Equipment Corporation | High frequency sampling of processor performance counters |
US6631518B1 (en) | 1997-03-19 | 2003-10-07 | International Business Machines Corporation | Generating and utilizing organized profile information |
US5960198A (en) | 1997-03-19 | 1999-09-28 | International Business Machines Corporation | Software profiler with runtime control to enable and disable instrumented executable |
US6094729A (en) | 1997-04-08 | 2000-07-25 | Advanced Micro Devices, Inc. | Debug interface including a compact trace record storage |
US5978902A (en) | 1997-04-08 | 1999-11-02 | Advanced Micro Devices, Inc. | Debug interface including operating system access of a serial/parallel debug port |
US5944841A (en) | 1997-04-15 | 1999-08-31 | Advanced Micro Devices, Inc. | Microprocessor with built-in instruction tracing capability |
US6154818A (en) | 1997-11-20 | 2000-11-28 | Advanced Micro Devices, Inc. | System and method of controlling access to privilege partitioned address space for a model specific register file |
US6163840A (en) | 1997-11-26 | 2000-12-19 | Compaq Computer Corporation | Method and apparatus for sampling multiple potentially concurrent instructions in a processor pipeline |
US6374367B1 (en) | 1997-11-26 | 2002-04-16 | Compaq Computer Corporation | Apparatus and method for monitoring a computer system to guide optimization |
US6077312A (en) | 1998-05-06 | 2000-06-20 | International Business Machines Corporation | Apparatus, program product and method of debugging utilizing a context sensitive breakpoint |
US6216237B1 (en) | 1998-06-19 | 2001-04-10 | Lucent Technologies Inc. | Distributed indirect software instrumentation |
US6161196A (en) | 1998-06-19 | 2000-12-12 | Lucent Technologies Inc. | Fault tolerance via N-modular software redundancy using indirect instrumentation |
US6145123A (en) | 1998-07-01 | 2000-11-07 | Advanced Micro Devices, Inc. | Trace on/off with breakpoint register |
US6158049A (en) | 1998-08-11 | 2000-12-05 | Compaq Computer Corporation | User transparent mechanism for profile feedback optimization |
US6243836B1 (en) | 1998-08-17 | 2001-06-05 | Lucent Technologies, Inc. | Apparatus and method for circular buffering on an on-chip discontinuity trace |
US6230313B1 (en) | 1998-12-23 | 2001-05-08 | Cray Inc. | Parallelism performance analysis based on execution trace information |
US7013456B1 (en) | 1999-01-28 | 2006-03-14 | Ati International Srl | Profiling execution of computer programs |
US6978462B1 (en) | 1999-01-28 | 2005-12-20 | Ati International Srl | Profiling execution of a sequence of events occuring during a profiled execution interval that matches time-independent selection criteria of events to be profiled |
US20020046305A1 (en) | 1999-02-17 | 2002-04-18 | Babaian Boris A. | Method for effective binary translation between different instruction sets using emulated supervisor flag and multiple page tables |
US6378125B1 (en) | 1999-02-22 | 2002-04-23 | International Business Machines Corporation | Debugger thread identification points |
US7137105B2 (en) | 1999-05-12 | 2006-11-14 | Wind River Systems, Inc. | Dynamic software code instrumentation method and system |
US6321329B1 (en) | 1999-05-19 | 2001-11-20 | Arm Limited | Executing debug instructions |
US6519766B1 (en) | 1999-06-15 | 2003-02-11 | Isogon Corporation | Computer program profiler |
JP2001051874A (ja) | 1999-08-12 | 2001-02-23 | Hitachi Ltd | マイクロコンピュータ |
US6918065B1 (en) | 1999-10-01 | 2005-07-12 | Hitachi, Ltd. | Method for compressing and decompressing trace information |
US6539500B1 (en) | 1999-10-28 | 2003-03-25 | International Business Machines Corporation | System and method for tracing |
US6574727B1 (en) | 1999-11-04 | 2003-06-03 | International Business Machines Corporation | Method and apparatus for instruction sampling for performance monitoring and debug |
US6634020B1 (en) | 2000-03-24 | 2003-10-14 | International Business Machines Corporation | Uninitialized memory watch |
US7735072B1 (en) | 2000-08-11 | 2010-06-08 | International Business Machines Corporation | Method and apparatus for profiling computer program execution |
US7103877B1 (en) | 2000-11-01 | 2006-09-05 | International Business Machines Corporation | System and method for characterizing program behavior by sampling at selected program points |
US6961927B1 (en) | 2000-11-27 | 2005-11-01 | Microsoft Corporation | Lossless, context-free compression system and method |
US8312435B2 (en) | 2000-12-26 | 2012-11-13 | Identify Software Ltd. (IL) | System and method for conditional tracing of computer programs |
US6769054B1 (en) | 2001-02-26 | 2004-07-27 | Emc Corporation | System and method for preparation of workload data for replaying in a data storage environment |
JP2002252163A (ja) | 2001-02-27 | 2002-09-06 | Toshiba Corp | 画像表示装置の製造方法および製造装置 |
US6918110B2 (en) | 2001-04-11 | 2005-07-12 | Hewlett-Packard Development Company, L.P. | Dynamic instrumentation of an executable program by means of causing a breakpoint at the entry point of a function and providing instrumentation code |
JP2002342114A (ja) | 2001-05-21 | 2002-11-29 | Fujitsu Ltd | トレースデータ採取可能なプロセッサ |
US7047521B2 (en) | 2001-06-07 | 2006-05-16 | Lynoxworks, Inc. | Dynamic instrumentation event trace system and methods |
US20030005423A1 (en) | 2001-06-28 | 2003-01-02 | Dong-Yuan Chen | Hardware assisted dynamic optimization of program execution |
US7181600B1 (en) | 2001-08-02 | 2007-02-20 | Mips Technologies, Inc. | Read-only access to CPO registers |
US7080289B2 (en) | 2001-10-10 | 2006-07-18 | Arm Limited | Tracing multiple data access instructions |
GB0125628D0 (en) | 2001-10-25 | 2001-12-19 | Ibm | Computer system with watchpoint support |
US7281242B2 (en) | 2002-01-18 | 2007-10-09 | Bea Systems, Inc. | Flexible and extensible Java bytecode instrumentation system |
US7134115B2 (en) | 2002-02-07 | 2006-11-07 | Matsushita Electric Industrial Co., Ltd. | Apparatus, method, and program for breakpoint setting |
US6877114B2 (en) | 2002-02-14 | 2005-04-05 | Delphi Technologies, Inc. | On-chip instrumentation |
US7107585B2 (en) | 2002-07-29 | 2006-09-12 | Arm Limited | Compilation of application code in a data processing apparatus |
US20040139304A1 (en) | 2003-01-09 | 2004-07-15 | International Business Machines Corporation | High speed virtual instruction execution mechanism |
US8141052B2 (en) | 2003-05-09 | 2012-03-20 | Microsoft Corporation | Instrumenting software for enhanced diagnosability |
US7185320B2 (en) | 2003-06-27 | 2007-02-27 | Hewlett-Packard Development Company, L.P. | System and method for processing breakpoint events in a child process generated by a parent process |
US7152186B2 (en) | 2003-08-04 | 2006-12-19 | Arm Limited | Cross-triggering of processing devices |
US20050120337A1 (en) | 2003-12-01 | 2005-06-02 | Serrano Mauricio J. | Memory trace buffer |
US7500152B2 (en) | 2003-12-05 | 2009-03-03 | Freescale Semiconductor, Inc. | Apparatus and method for time ordering events in a system having multiple time domains |
US7206916B2 (en) | 2004-03-08 | 2007-04-17 | Sun Microsystems, Inc. | Partial address compares stored in translation lookaside buffer |
US20050228631A1 (en) | 2004-04-07 | 2005-10-13 | Maly John W | Model specific register operations |
US20090150890A1 (en) | 2007-12-10 | 2009-06-11 | Yourst Matt T | Strand-based computing hardware and dynamically optimizing strandware for a high performance microprocessor system |
US20060184832A1 (en) | 2005-02-11 | 2006-08-17 | International Business Machines Corporation | Method and apparatus for achieving high cycle/trace compression depth by adding width |
US9152531B2 (en) | 2005-02-18 | 2015-10-06 | Green Hills Sofware, Inc. | Post-compile instrumentation of object code for generating execution trace data |
US7478219B2 (en) | 2005-04-14 | 2009-01-13 | International Business Machines Corporation | Retrieving event data for logical partitions |
US7650595B2 (en) | 2005-04-29 | 2010-01-19 | Microsoft Corporation | Sound transaction-based reduction without cycle detection |
US7661094B2 (en) | 2005-05-10 | 2010-02-09 | Alcatel-Lucent Usa Inc. | Real-time software diagnostic tracing |
US7603589B2 (en) | 2005-05-16 | 2009-10-13 | Texas Instruments Incorporated | Method and system for debugging a software program |
US7886198B2 (en) | 2005-05-16 | 2011-02-08 | Texas Instruments Incorporated | Method and system of identifying overlays used by a program |
US7720670B2 (en) | 2005-05-16 | 2010-05-18 | Texas Instruments Incorporated | Saving resources by deducing the total prediction events |
US8527958B2 (en) | 2005-05-16 | 2013-09-03 | Texas Instruments Incorporated | Profiling operating context and tracing program on a target processor |
US8694970B2 (en) | 2005-06-02 | 2014-04-08 | Seagate Technology Llc | Unified debug system with multiple user-configurable trace volumes and trace buffers |
US7716335B2 (en) | 2005-06-27 | 2010-05-11 | Oracle America, Inc. | System and method for automated workload characterization of an application server |
US7239980B2 (en) | 2005-08-30 | 2007-07-03 | International Business Machines Corporation | Method and apparatus for adaptive tracing with different processor frequencies |
US8301868B2 (en) | 2005-09-23 | 2012-10-30 | Intel Corporation | System to profile and optimize user software in a managed run-time environment |
US20070079294A1 (en) | 2005-09-30 | 2007-04-05 | Robert Knight | Profiling using a user-level control mechanism |
US20070079177A1 (en) | 2005-09-30 | 2007-04-05 | Charles Spirakis | Process monitoring and diagnosis apparatus, systems, and methods |
US20070143755A1 (en) | 2005-12-16 | 2007-06-21 | Intel Corporation | Speculative execution past a barrier |
US20070186056A1 (en) | 2006-02-07 | 2007-08-09 | Bratin Saha | Hardware acceleration for a software transactional memory system |
CN101021800A (zh) | 2006-02-16 | 2007-08-22 | Sap股份公司 | 虚拟机监控 |
GB0604991D0 (en) | 2006-03-11 | 2006-04-19 | Slam Games Ltd | Instrumentation for real-time performance profiling |
US20070260849A1 (en) | 2006-05-05 | 2007-11-08 | Chen Wen-Tzer T | Method and apparatus for executing instrumentation code using a target processor |
US8245199B2 (en) | 2006-05-05 | 2012-08-14 | International Business Machines Corporation | Selectively marking and executing instrumentation code |
US20070261032A1 (en) | 2006-05-05 | 2007-11-08 | Chen Wen-Tzer T | Method and apparatus for hardware assisted profiling of code |
US7814466B2 (en) | 2006-05-05 | 2010-10-12 | International Business Machines Corporation | Method and apparatus for graphically marking instructions for instrumentation with hardware assistance |
WO2007145903A2 (en) | 2006-06-05 | 2007-12-21 | Acumem Ab | System for and method of capturing application characteristics data from a computer system and modeling target system |
US8307346B2 (en) | 2006-06-09 | 2012-11-06 | Oracle America, Inc. | Atomic groups for debugging |
US7895569B2 (en) | 2006-08-30 | 2011-02-22 | Research In Motion Limited | System and method for implementing software breakpoints in an interpreter |
CN100401267C (zh) | 2006-09-01 | 2008-07-09 | 上海大学 | 微处理器的片上动态跟踪方法 |
CN100547562C (zh) | 2006-10-18 | 2009-10-07 | 国际商业机器公司 | 自动生成可再现运行时问题的单元测试用例的方法和系统 |
US7992136B2 (en) | 2006-10-18 | 2011-08-02 | International Business Machines Corporation | Method and apparatus for automatic application profiling |
US8627335B2 (en) | 2006-11-13 | 2014-01-07 | Oracle America, Inc. | Method and apparatus for data space profiling of applications across a network |
CN101595457A (zh) | 2006-12-06 | 2009-12-02 | 艾利森电话股份有限公司 | 负载平衡剖析 |
US7783867B2 (en) * | 2007-02-01 | 2010-08-24 | International Business Machines Corporation | Controlling instruction execution in a processing environment |
US8041901B2 (en) | 2007-03-05 | 2011-10-18 | Freescale Semiconductor, Inc. | Performance monitoring device and method thereof |
US7743279B2 (en) | 2007-04-06 | 2010-06-22 | Apple Inc. | Program counter (PC) trace |
WO2008122746A1 (en) | 2007-04-10 | 2008-10-16 | Cambridge Consultants Limited | Data processing apparatus |
US20090037887A1 (en) | 2007-07-30 | 2009-02-05 | Chavan Shasank K | Compiler-inserted predicated tracing |
US8127296B2 (en) | 2007-09-06 | 2012-02-28 | Dell Products L.P. | Virtual machine migration between processors having VM migration registers controlled by firmware to modify the reporting of common processor feature sets to support the migration |
US8453121B2 (en) | 2007-10-25 | 2013-05-28 | International Business Machines Corporation | Managing the tracing of the execution of a computer program |
US7962314B2 (en) | 2007-12-18 | 2011-06-14 | Global Foundries Inc. | Mechanism for profiling program software running on a processor |
US8141053B2 (en) | 2008-01-04 | 2012-03-20 | International Business Machines Corporation | Call stack sampling using a virtual machine |
US8090933B2 (en) | 2008-02-12 | 2012-01-03 | International Business Machines Corporation | Methods computer program products and systems for unifying program event recording for branches and stores in the same dataflow |
US7870438B2 (en) | 2008-02-15 | 2011-01-11 | International Business Machines Corporation | Method, system and computer program product for sampling computer system performance data |
US8312253B2 (en) | 2008-02-22 | 2012-11-13 | Freescale Semiconductor, Inc. | Data processor device having trace capabilities and method |
US7904460B2 (en) | 2008-04-23 | 2011-03-08 | Microsoft Corporation | Determining computer information from processor properties |
US8572577B2 (en) | 2008-06-20 | 2013-10-29 | International Business Machines Corporation | Monitoring changes to data within a critical section of a threaded program |
GB2461716A (en) | 2008-07-09 | 2010-01-13 | Advanced Risc Mach Ltd | Monitoring circuitry for monitoring accesses to addressable locations in data processing apparatus that occur between the start and end events. |
US9449314B2 (en) | 2008-10-02 | 2016-09-20 | International Business Machines Corporation | Virtualization of a central processing unit measurement facility |
US8307345B2 (en) | 2008-11-04 | 2012-11-06 | Ca, Inc. | Intelligent engine for dynamic and rule based instrumentation of software |
US8478948B2 (en) | 2008-12-04 | 2013-07-02 | Oracle America, Inc. | Method and system for efficient tracing and profiling of memory accesses during program execution |
US8527734B2 (en) | 2009-01-23 | 2013-09-03 | International Business Machines Corporation | Administering registered virtual addresses in a hybrid computing environment including maintaining a watch list of currently registered virtual addresses by an operating system |
JP5326708B2 (ja) | 2009-03-18 | 2013-10-30 | 富士通株式会社 | 演算処理装置および演算処理装置の制御方法 |
US8694962B2 (en) | 2009-04-30 | 2014-04-08 | International Business Machines Corporation | Aspect-oriented parallel programming language extensions |
JP5411587B2 (ja) | 2009-06-09 | 2014-02-12 | トヨタ自動車株式会社 | マルチスレッド実行装置、マルチスレッド実行方法 |
US8650562B2 (en) | 2009-06-12 | 2014-02-11 | International Business Machines Corporation | Method and apparatus for scalable monitoring of virtual machine environments combining base virtual machine and single monitoring agent for measuring common characteristics and individual virtual machines measuring individualized characteristics |
US8347001B2 (en) | 2010-01-08 | 2013-01-01 | International Business Machines Corporation | Hardware support for software controlled fast multiplexing of performance counters |
US9092253B2 (en) | 2009-12-15 | 2015-07-28 | Microsoft Technology Licensing, Llc | Instrumentation of hardware assisted transactional memory system |
US8316194B2 (en) | 2009-12-15 | 2012-11-20 | Intel Corporation | Mechanisms to accelerate transactions using buffered stores |
KR20110070468A (ko) | 2009-12-18 | 2011-06-24 | 삼성전자주식회사 | 인스트루먼테이션 실행 장치 및 방법 |
US8301849B2 (en) | 2009-12-23 | 2012-10-30 | Intel Corporation | Transactional memory in out-of-order processors with XABORT having immediate argument |
US8453124B2 (en) | 2009-12-23 | 2013-05-28 | International Business Machines Corporation | Collecting computer processor instrumentation data |
US8782612B2 (en) | 2010-05-11 | 2014-07-15 | Ca, Inc. | Failsafe mechanism for dynamic instrumentation of software using callbacks |
US8473925B2 (en) | 2010-05-11 | 2013-06-25 | Ca, Inc. | Conditional dynamic instrumentation of software in a specified transaction context |
US8566800B2 (en) | 2010-05-11 | 2013-10-22 | Ca, Inc. | Detection of method calls to streamline diagnosis of custom code through dynamic instrumentation |
US8607200B2 (en) | 2010-06-01 | 2013-12-10 | Red Hat, Inc. | Executing a web application at different stages in the application life cycle |
GB2481385B (en) | 2010-06-21 | 2018-08-15 | Advanced Risc Mach Ltd | Tracing speculatively executed instructions |
US20120167057A1 (en) | 2010-12-22 | 2012-06-28 | Microsoft Corporation | Dynamic instrumentation of software code |
US9430275B2 (en) | 2011-06-03 | 2016-08-30 | Oracle International Corporation | Synchronization between concurrent notifier and waiter transactions using transaction condition variables |
US8707314B2 (en) | 2011-12-16 | 2014-04-22 | Advanced Micro Devices, Inc. | Scheduling compute kernel workgroups to heterogeneous processors based on historical processor execution times and utilizations |
-
2012
- 2012-03-16 US US13/422,596 patent/US9442824B2/en active Active
-
2013
- 2013-03-05 US US13/784,872 patent/US9400736B2/en active Active
- 2013-03-06 CN CN201380014698.6A patent/CN104205064B/zh active Active
- 2013-03-06 WO PCT/JP2013/001412 patent/WO2013136726A1/en active Application Filing
- 2013-03-06 JP JP2014543664A patent/JP6095682B2/ja active Active
- 2013-03-06 EP EP13762008.4A patent/EP2825965B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP2825965A4 (en) | 2015-04-15 |
CN104205064A (zh) | 2014-12-10 |
EP2825965A1 (en) | 2015-01-21 |
US20130247012A1 (en) | 2013-09-19 |
CN104205064B (zh) | 2016-12-14 |
JP2015515654A (ja) | 2015-05-28 |
WO2013136726A1 (en) | 2013-09-19 |
EP2825965B1 (en) | 2023-01-18 |
US9442824B2 (en) | 2016-09-13 |
US20130247011A1 (en) | 2013-09-19 |
US9400736B2 (en) | 2016-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6095682B2 (ja) | プログラム・イベント記録イベントのランタイム計装イベントへの変換 | |
JP6099060B2 (ja) | 低特権状態からのランタイム・インストルメンテーション・ファシリティの動作の制御 | |
JP6195572B2 (ja) | ランタイム計装制御の状況の決定のためのコンピュータ・プログラム、方法、およびシステム | |
JP6058020B2 (ja) | トランザクション実行モードでのランタイム・インスツルメンテーション・サンプリングを実現するためのコンピュータ・プログラム・プロダクト、方法、およびシステム(トランザクション実行モードでのランタイム・インスツルメンテーション・サンプリング) | |
JP6138142B2 (ja) | 被管理ランタイムのためのハードウェア・ベース・ランタイム計装機構 | |
JP6195571B2 (ja) | 低特権状態からのランタイム・インストルメンテーション制御の変更 | |
JP6153533B2 (ja) | ランタイム・インストルメンテーション指向サンプリング | |
JP6058012B2 (ja) | ランタイム・インスツルメンテーションを使用してプロセッサのプロセッサ特性情報をモニターするためのコンピュータ・プログラム・プロダクト、方法、およびシステム(プロセッサ特性のランタイム・インスツルメンテーション・モニタリング) | |
JP6153534B2 (ja) | 命令オペレーション・コードによるランタイム計装間接サンプリング | |
JP6034393B2 (ja) | アドレスによるランタイム・インスツルメンテーション間接サンプリングを実現するためのコンピュータ・プログラム・プロダクト、方法、およびシステム(アドレスによるランタイム・インスツルメンテーション間接サンプリング) | |
JP6058015B2 (ja) | ランタイム・インスツルメンテーション放出(riemit)命令を実行するためのコンピュータ・プログラム・プロダクト、方法、およびコンピュータ・システム(ランタイム・インスツルメンテーション・コントロール放出命令) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160301 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161115 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161205 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20170124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170214 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6095682 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |