JP6195572B2 - ランタイム計装制御の状況の決定のためのコンピュータ・プログラム、方法、およびシステム - Google Patents
ランタイム計装制御の状況の決定のためのコンピュータ・プログラム、方法、およびシステム Download PDFInfo
- Publication number
- JP6195572B2 JP6195572B2 JP2014543673A JP2014543673A JP6195572B2 JP 6195572 B2 JP6195572 B2 JP 6195572B2 JP 2014543673 A JP2014543673 A JP 2014543673A JP 2014543673 A JP2014543673 A JP 2014543673A JP 6195572 B2 JP6195572 B2 JP 6195572B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- runtime instrumentation
- control
- runtime
- tric
- 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
- 238000000034 method Methods 0.000 title claims description 42
- 238000004590 computer program Methods 0.000 title claims description 30
- 230000007246 mechanism Effects 0.000 claims description 16
- 238000012360 testing method Methods 0.000 claims description 11
- 238000012986 modification Methods 0.000 claims description 8
- 230000004048 modification Effects 0.000 claims description 8
- 101001005711 Homo sapiens MARVEL domain-containing protein 2 Proteins 0.000 claims 18
- 239000000872 buffer Substances 0.000 description 84
- 230000006870 function Effects 0.000 description 48
- 238000012545 processing Methods 0.000 description 25
- 230000001419 dependent effect Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 19
- 238000013519 translation Methods 0.000 description 17
- 230000014616 translation Effects 0.000 description 17
- 230000008569 process Effects 0.000 description 15
- 230000001629 suppression Effects 0.000 description 10
- 238000005070 sampling Methods 0.000 description 9
- 238000012546 transfer Methods 0.000 description 8
- 239000000945 filler Substances 0.000 description 7
- 238000007667 floating Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000007774 longterm Effects 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000013480 data collection Methods 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 239000013307 optical fiber Substances 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000005670 electromagnetic radiation Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 101100496104 Mus musculus Clec2d gene Proteins 0.000 description 1
- 101100274534 Rattus norvegicus Clec2d11 gene Proteins 0.000 description 1
- 238000012884 algebraic function Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 229920000638 styrene acrylonitrile Polymers 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30021—Compare instructions, e.g. Greater-Than, Equal-To, MINMAX
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3005—Arrangements for executing specific machine instructions to perform operations for flow control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30101—Special purpose registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/322—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
- G06F9/323—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for indirect branch instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Executing Machine-Instructions (AREA)
Description
RCB≧(RRG−RNC)
Claims (19)
- 低特権状態からランタイム計装制御を修正するためのコンピュータ実装方法であって、
ランタイム計装制御特権ロード(LRIC)命令を使用して、ランタイム計装制御のセットを初期値に設定すること、
ランタイム計装制御テスト(TRIC)命令をフェッチすること、
前記TRIC命令を実行することであって、前記実行することは、
前記TRIC命令が使用可能であることに基づき、前記初期値が変更されているかどうかを判別すること、
を含む、実行すること、および、
前記初期値が変更されている旨の決定に基づき、条件コードを第1の値に設定すること、
を含む、方法。 - 前記TRIC命令が使用可能である旨の決定は、
前記TRIC命令がスーパーバイザ・モードで実行されていることに基づき、前記TRIC命令が使用可能である旨を決定すること、および、
前記TRIC命令が前記低特権状態で実行されていることに基づき、前記ランタイム計装制御のフィールドが設定されること、
のうちのいずれか1つを含む、請求項1に記載の方法。 - 前記TRIC命令が使用不能であることに基づき、前記条件コードを第2の値に設定することをさらに含み、前記第2の値は問題状態にある前記TRIC命令の実行が許可されていないことを示す、請求項1又は2に記載の方法。
- 前記初期値が変更された旨を決定することは、前記ランタイム計装制御の有効フィールドが、前記ランタイム計装制御が有効であること、および、前記LRIC命令によって暗黙的に使用可能化された初期値インジケータが使用不能であることを、示す旨を決定することを含む、請求項1〜3のいずれかに記載の方法。
- 前記初期値が変更されていない旨の決定に基づき、前記条件コードを第3の値に設定することをさらに含む、請求項1〜4のいずれかに記載の方法。
- 前記初期値が変更されていない旨を決定することは、前記ランタイム計装制御の有効フィールドが、前記ランタイム計装制御が有効であること、および、前記LRIC命令によって暗黙的に使用可能化された初期値インジケータが使用可能であることを、示す旨を決定することを含む、請求項5に記載の方法。
- ランタイム計装制御修正(MRIC)命令を実行することをさらに含み、前記MRIC命令は前記初期値インジケータを使用不能にさせ、前記MRIC命令は問題状態で実行可能であり、前記LRIC命令にとってアクセス可能なランタイム計装制御のサブセットへのアクセスのみを有する、請求項4に記載の方法。
- 前記ランタイム計装制御が有効でない旨の決定に基づき、前記条件コードを第4の値に設定することをさらに含む、請求項1〜7のいずれかに記載の方法。
- 前記初期値は、ランタイム計装機構により設定される請求項1〜8のいずれかに記載の 方法。
- コンピュータに実行されることにより、前記コンピュータに請求項1〜9のいずれかに記載の方法を実行させるコンピュータ・プログラム。
- 低特権状態からランタイム計装制御を修正するためのコンピュータ・システムであって、
ランタイム計装モジュールを含むコンピュータ・プロセッサを備え、前記ランタイム計装モジュールは、
ランタイム計装制御特権ロード(LRIC)命令を使用して、ランタイム計装制御のセットを初期値に設定すること、
ランタイム計装制御テスト(TRIC)命令をフェッチすること、
前記TRIC命令を実行することであって、前記実行することは、
前記TRIC命令が使用可能であることに基づき、前記初期値が変更されているかどうかを判別すること、
を含む、実行すること、および、
前記初期値が変更されている旨の決定に基づき、条件コードを第1の値に設定すると、
を含む、方法を実行するように構成される、
コンピュータ・システム。 - 前記TRIC命令が使用可能である旨の決定は、
前記TRIC命令がスーパーバイザ・モードで実行されていることに基づき、前記TRIC命令が使用可能である旨を決定すること、および、
前記TRIC命令が前記低特権状態で実行されていることに基づき、前記ランタイム計装制御のフィールドが設定されること、
のうちのいずれか1つを含む、請求項11に記載のシステム。 - 前記TRIC命令が使用不能であることに基づき、前記条件コードを第2の値に設定することをさらに含み、前記第2の値は問題状態にある前記TRIC命令の実行が許可されていないことを示す、請求項11又は12に記載のシステム。
- 前記ランタイム計装制御によって設定された前記初期値が変更された旨を決定することは、前記ランタイム計装制御の有効フィールドが、前記ランタイム計装制御が有効であること、および、前記LRIC命令によって暗黙的に使用可能化された初期値インジケータが使用不能であることを、示す旨を決定することを含む、請求項11〜13のいずれかに記載のシステム。
- 前記初期値が変更されていない旨の決定に基づき、前記条件コードを第3の値に設定することをさらに含む、請求項11〜14のいずれかに記載のシステム。
- 前記初期値が変更されていない旨を決定することは、前記ランタイム計装制御の有効フィールドが、前記ランタイム計装制御が有効であること、および、前記LRIC命令によって暗黙的に使用可能化された初期値インジケータが使用可能であることを、示す旨を決定することを含む、請求項15に記載のシステム。
- ランタイム計装制御修正(MRIC)命令を実行することをさらに含み、前記MRIC命令は前記初期値インジケータを使用不能にさせ、前記MRIC命令は問題状態で実行可能であり、前記LRIC命令にとってアクセス可能なランタイム計装制御のサブセットへのアクセスのみを有する、請求項14に記載のシステム。
- 前記ランタイム計装制御が有効でない旨の決定に基づき、前記条件コードを第4の値に設定することをさらに含む、請求項11〜17のいずれかに記載のシステム。
- 前記初期値は、ランタイム計装機構により設定される請求項11〜18のいずれかに記 載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/422,589 | 2012-03-16 | ||
US13/422,589 US9250902B2 (en) | 2012-03-16 | 2012-03-16 | Determining the status of run-time-instrumentation controls |
PCT/JP2013/001268 WO2013136706A1 (en) | 2012-03-16 | 2013-03-01 | Determining the status of run-time-instrumentation controls |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015516602A JP2015516602A (ja) | 2015-06-11 |
JP6195572B2 true JP6195572B2 (ja) | 2017-09-13 |
Family
ID=49158803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014543673A Active JP6195572B2 (ja) | 2012-03-16 | 2013-03-01 | ランタイム計装制御の状況の決定のためのコンピュータ・プログラム、方法、およびシステム |
Country Status (5)
Country | Link |
---|---|
US (2) | US9250902B2 (ja) |
EP (1) | EP2825962B1 (ja) |
JP (1) | JP6195572B2 (ja) |
CN (1) | CN104364768B (ja) |
WO (1) | WO2013136706A1 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6122749B2 (ja) * | 2013-09-30 | 2017-04-26 | ルネサスエレクトロニクス株式会社 | コンピュータシステム |
US10360135B2 (en) | 2016-03-31 | 2019-07-23 | Microsoft Technology Licensing, Llc | Privilege test and monitoring |
DE102016211386A1 (de) * | 2016-06-14 | 2017-12-14 | Robert Bosch Gmbh | Verfahren zum Betreiben einer Recheneinheit |
US10558366B2 (en) | 2017-11-14 | 2020-02-11 | International Business Machines Corporation | Automatic pinning of units of memory |
US10761983B2 (en) | 2017-11-14 | 2020-09-01 | International Business Machines Corporation | Memory based configuration state registers |
US10552070B2 (en) | 2017-11-14 | 2020-02-04 | International Business Machines Corporation | Separation of memory-based configuration state registers based on groups |
US10635602B2 (en) | 2017-11-14 | 2020-04-28 | International Business Machines Corporation | Address translation prior to receiving a storage reference using the address to be translated |
US10496437B2 (en) | 2017-11-14 | 2019-12-03 | International Business Machines Corporation | Context switch by changing memory pointers |
US10592164B2 (en) | 2017-11-14 | 2020-03-17 | International Business Machines Corporation | Portions of configuration state registers in-memory |
US10698686B2 (en) | 2017-11-14 | 2020-06-30 | International Business Machines Corporation | Configurable architectural placement control |
US10761751B2 (en) | 2017-11-14 | 2020-09-01 | International Business Machines Corporation | Configuration state registers grouped based on functional affinity |
US10664181B2 (en) | 2017-11-14 | 2020-05-26 | International Business Machines Corporation | Protecting in-memory configuration state registers |
US10642757B2 (en) | 2017-11-14 | 2020-05-05 | International Business Machines Corporation | Single call to perform pin and unpin operations |
US10901738B2 (en) | 2017-11-14 | 2021-01-26 | International Business Machines Corporation | Bulk store and load operations of configuration state registers |
Family Cites Families (136)
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 |
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 |
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 |
US5737516A (en) | 1995-08-30 | 1998-04-07 | Motorola, Inc. | Data processing system for performing a debug function and method therefor |
US5964893A (en) | 1995-08-30 | 1999-10-12 | Motorola, Inc. | Data processing system for performing a trace function and method therefor |
US5675768A (en) | 1996-02-01 | 1997-10-07 | Unisys Corporation | Store software instrumentation package instruction |
US6314558B1 (en) | 1996-08-27 | 2001-11-06 | Compuware Corporation | Byte code instrumentation |
US5987249A (en) | 1996-08-27 | 1999-11-16 | Numega Technologies | IR code instrumentation |
US5796939A (en) | 1997-03-10 | 1998-08-18 | Digital Equipment Corporation | High frequency sampling of processor performance counters |
US5960198A (en) | 1997-03-19 | 1999-09-28 | International Business Machines Corporation | Software profiler with runtime control to enable and disable instrumented executable |
US6631518B1 (en) | 1997-03-19 | 2003-10-07 | International Business Machines Corporation | Generating and utilizing organized profile information |
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 |
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 |
US7634638B1 (en) * | 2002-10-22 | 2009-12-15 | Mips Technologies, Inc. | Instruction encoding for system register bit set and clear |
GB2411254B (en) * | 2002-11-18 | 2006-06-28 | Advanced Risc Mach Ltd | Monitoring control for multi-domain processors |
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 |
US20060136608A1 (en) * | 2004-12-22 | 2006-06-22 | Gilbert Jeffrey D | System and method for control registers accessed via private operations |
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 |
US7886271B2 (en) | 2005-05-16 | 2011-02-08 | Texas Instruments Incorporated | Embedding event information in the timing stream |
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 |
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 |
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 |
GB0604991D0 (en) | 2006-03-11 | 2006-04-19 | Slam Games Ltd | Instrumentation for real-time performance profiling |
US7814466B2 (en) | 2006-05-05 | 2010-10-12 | International Business Machines Corporation | Method and apparatus for graphically marking instructions for instrumentation with hardware assistance |
US20070260849A1 (en) | 2006-05-05 | 2007-11-08 | Chen Wen-Tzer T | Method and apparatus for executing instrumentation code using a target processor |
US20070261032A1 (en) | 2006-05-05 | 2007-11-08 | Chen Wen-Tzer T | Method and apparatus for hardware assisted profiling of code |
US8245199B2 (en) | 2006-05-05 | 2012-08-14 | International Business Machines Corporation | Selectively marking and executing instrumentation code |
US8141058B2 (en) | 2006-06-05 | 2012-03-20 | Rogue Wave Software, Inc. | 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 | 上海大学 | 微处理器的片上动态跟踪方法 |
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 |
US9652241B2 (en) | 2007-04-10 | 2017-05-16 | Cambridge Consultants Ltd. | Data processing apparatus with instruction encodings to enable near and far memory access modes |
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 |
US8316194B2 (en) | 2009-12-15 | 2012-11-20 | Intel Corporation | Mechanisms to accelerate transactions using buffered stores |
US9092253B2 (en) | 2009-12-15 | 2015-07-28 | Microsoft Technology Licensing, Llc | Instrumentation of hardware assisted transactional memory system |
KR20110070468A (ko) | 2009-12-18 | 2011-06-24 | 삼성전자주식회사 | 인스트루먼테이션 실행 장치 및 방법 |
US8453124B2 (en) | 2009-12-23 | 2013-05-28 | International Business Machines Corporation | Collecting computer processor instrumentation data |
US8473925B2 (en) | 2010-05-11 | 2013-06-25 | Ca, Inc. | Conditional dynamic instrumentation of software in a specified transaction context |
US8782612B2 (en) | 2010-05-11 | 2014-07-15 | Ca, Inc. | Failsafe mechanism for dynamic instrumentation of software using callbacks |
US8566800B2 (en) | 2010-05-11 | 2013-10-22 | Ca, Inc. | Detection of method calls to streamline diagnosis of custom code through dynamic instrumentation |
US8966450B2 (en) | 2010-06-01 | 2015-02-24 | Red Hat, Inc. | Facilitating the execution of web applications in the cloud |
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,589 patent/US9250902B2/en active Active
-
2013
- 2013-03-01 JP JP2014543673A patent/JP6195572B2/ja active Active
- 2013-03-01 CN CN201380014656.2A patent/CN104364768B/zh active Active
- 2013-03-01 EP EP13760431.0A patent/EP2825962B1/en active Active
- 2013-03-01 WO PCT/JP2013/001268 patent/WO2013136706A1/en active Application Filing
- 2013-03-11 US US13/792,276 patent/US9250903B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP2825962A4 (en) | 2017-12-27 |
US20130246743A1 (en) | 2013-09-19 |
CN104364768B (zh) | 2017-03-01 |
JP2015516602A (ja) | 2015-06-11 |
US9250902B2 (en) | 2016-02-02 |
EP2825962A1 (en) | 2015-01-21 |
US9250903B2 (en) | 2016-02-02 |
CN104364768A (zh) | 2015-02-18 |
EP2825962B1 (en) | 2019-04-24 |
US20130246748A1 (en) | 2013-09-19 |
WO2013136706A1 (en) | 2013-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6095682B2 (ja) | プログラム・イベント記録イベントのランタイム計装イベントへの変換 | |
JP6195572B2 (ja) | ランタイム計装制御の状況の決定のためのコンピュータ・プログラム、方法、およびシステム | |
JP6099060B2 (ja) | 低特権状態からのランタイム・インストルメンテーション・ファシリティの動作の制御 | |
JP6058020B2 (ja) | トランザクション実行モードでのランタイム・インスツルメンテーション・サンプリングを実現するためのコンピュータ・プログラム・プロダクト、方法、およびシステム(トランザクション実行モードでのランタイム・インスツルメンテーション・サンプリング) | |
JP6138142B2 (ja) | 被管理ランタイムのためのハードウェア・ベース・ランタイム計装機構 | |
JP6195571B2 (ja) | 低特権状態からのランタイム・インストルメンテーション制御の変更 | |
JP6058012B2 (ja) | ランタイム・インスツルメンテーションを使用してプロセッサのプロセッサ特性情報をモニターするためのコンピュータ・プログラム・プロダクト、方法、およびシステム(プロセッサ特性のランタイム・インスツルメンテーション・モニタリング) | |
JP6153533B2 (ja) | ランタイム・インストルメンテーション指向サンプリング | |
JP6153534B2 (ja) | 命令オペレーション・コードによるランタイム計装間接サンプリング | |
JP6034393B2 (ja) | アドレスによるランタイム・インスツルメンテーション間接サンプリングを実現するためのコンピュータ・プログラム・プロダクト、方法、およびシステム(アドレスによるランタイム・インスツルメンテーション間接サンプリング) | |
JP6058015B2 (ja) | ランタイム・インスツルメンテーション放出(riemit)命令を実行するためのコンピュータ・プログラム・プロダクト、方法、およびコンピュータ・システム(ランタイム・インスツルメンテーション・コントロール放出命令) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141127 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160219 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161213 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170313 |
|
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: 20170725 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170815 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6195572 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |