JP4294778B2 - プロセッサパイプラインにより処理される相互作用の特性の統計値を推定する方法 - Google Patents
プロセッサパイプラインにより処理される相互作用の特性の統計値を推定する方法 Download PDFInfo
- Publication number
- JP4294778B2 JP4294778B2 JP37536098A JP37536098A JP4294778B2 JP 4294778 B2 JP4294778 B2 JP 4294778B2 JP 37536098 A JP37536098 A JP 37536098A JP 37536098 A JP37536098 A JP 37536098A JP 4294778 B2 JP4294778 B2 JP 4294778B2
- Authority
- JP
- Japan
- Prior art keywords
- instructions
- instruction
- pipeline
- information
- function
- 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.)
- Expired - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3447—Performance evaluation by modeling
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/87—Monitoring of transactions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/88—Monitoring involving counting
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Advance Control (AREA)
- Debugging And Monitoring (AREA)
- Image Processing (AREA)
- Devices For Executing Special Programs (AREA)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/980,164 US6119075A (en) | 1997-11-26 | 1997-11-26 | Method for estimating statistics of properties of interactions processed by a processor pipeline |
| US08/980164 | 1997-11-26 |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JPH11272517A JPH11272517A (ja) | 1999-10-08 |
| JPH11272517A5 JPH11272517A5 (enExample) | 2005-12-22 |
| JP4294778B2 true JP4294778B2 (ja) | 2009-07-15 |
Family
ID=25527387
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP37536098A Expired - Lifetime JP4294778B2 (ja) | 1997-11-26 | 1998-11-26 | プロセッサパイプラインにより処理される相互作用の特性の統計値を推定する方法 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US6119075A (enExample) |
| EP (1) | EP0919922B1 (enExample) |
| JP (1) | JP4294778B2 (enExample) |
| DE (1) | DE69811832T2 (enExample) |
Families Citing this family (45)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6237059B1 (en) * | 1997-11-26 | 2001-05-22 | Compaq Computer Corporation | Method for estimating statistics of properties of memory system interactions among contexts in a computer system |
| US6275782B1 (en) | 1998-05-05 | 2001-08-14 | Advanced Micro Devices, Inc. | Non-intrusive performance monitoring |
| US6463524B1 (en) * | 1999-08-26 | 2002-10-08 | International Business Machines Corporation | Superscalar processor and method for incrementally issuing store instructions |
| US6748589B1 (en) | 1999-10-20 | 2004-06-08 | Transmeta Corporation | Method for increasing the speed of speculative execution |
| US6574727B1 (en) * | 1999-11-04 | 2003-06-03 | International Business Machines Corporation | Method and apparatus for instruction sampling for performance monitoring and debug |
| US6427235B1 (en) * | 1999-11-05 | 2002-07-30 | Sun Microsystems, Inc. | Method and apparatus for performing prefetching at the critical section level |
| US6421826B1 (en) * | 1999-11-05 | 2002-07-16 | Sun Microsystems, Inc. | Method and apparatus for performing prefetching at the function level |
| US6556952B1 (en) | 2000-05-04 | 2003-04-29 | Advanced Micro Devices, Inc. | Performance monitoring and optimizing of controller parameters |
| GB2362481B (en) * | 2000-05-09 | 2004-12-01 | Rolls Royce Plc | Fault diagnosis |
| SE0002440D0 (sv) * | 2000-06-28 | 2000-06-28 | Virtutech Ab | Interpreter |
| US8458754B2 (en) | 2001-01-22 | 2013-06-04 | Sony Computer Entertainment Inc. | Method and system for providing instant start multimedia content |
| US7478368B2 (en) | 2001-04-24 | 2009-01-13 | International Business Machines Corporation | Organization and visualization of performance data in selected display modes |
| US20030088758A1 (en) * | 2001-11-08 | 2003-05-08 | Matthew Becker | Methods and systems for determining valid microprocessor instructions |
| US20040186982A9 (en) * | 2002-02-06 | 2004-09-23 | Matthew Becker | Stalling Instructions in a pipelined microprocessor |
| US20050071516A1 (en) * | 2003-09-30 | 2005-03-31 | International Business Machines Corporation | Method and apparatus to autonomically profile applications |
| US7395527B2 (en) | 2003-09-30 | 2008-07-01 | International Business Machines Corporation | Method and apparatus for counting instruction execution and data accesses |
| US7373637B2 (en) | 2003-09-30 | 2008-05-13 | International Business Machines Corporation | Method and apparatus for counting instruction and memory location ranges |
| US7937691B2 (en) | 2003-09-30 | 2011-05-03 | International Business Machines Corporation | Method and apparatus for counting execution of specific instructions and accesses to specific data locations |
| US7421681B2 (en) | 2003-10-09 | 2008-09-02 | International Business Machines Corporation | Method and system for autonomic monitoring of semaphore operation in an application |
| US8381037B2 (en) | 2003-10-09 | 2013-02-19 | International Business Machines Corporation | Method and system for autonomic execution path selection in an application |
| US7257657B2 (en) * | 2003-11-06 | 2007-08-14 | International Business Machines Corporation | Method and apparatus for counting instruction execution and data accesses for specific types of instructions |
| US7895382B2 (en) | 2004-01-14 | 2011-02-22 | International Business Machines Corporation | Method and apparatus for qualifying collection of performance monitoring events by types of interrupt when interrupt occurs |
| US7293164B2 (en) * | 2004-01-14 | 2007-11-06 | International Business Machines Corporation | Autonomic method and apparatus for counting branch instructions to generate branch statistics meant to improve branch predictions |
| US7392370B2 (en) | 2004-01-14 | 2008-06-24 | International Business Machines Corporation | Method and apparatus for autonomically initiating measurement of secondary metrics based on hardware counter values for primary metrics |
| US7496908B2 (en) * | 2004-01-14 | 2009-02-24 | International Business Machines Corporation | Method and apparatus for optimizing code execution using annotated trace information having performance indicator and counter information |
| US7526757B2 (en) | 2004-01-14 | 2009-04-28 | International Business Machines Corporation | Method and apparatus for maintaining performance monitoring structures in a page table for use in monitoring performance of a computer program |
| US7415705B2 (en) | 2004-01-14 | 2008-08-19 | International Business Machines Corporation | Autonomic method and apparatus for hardware assist for patching code |
| US7290255B2 (en) * | 2004-01-14 | 2007-10-30 | International Business Machines Corporation | Autonomic method and apparatus for local program code reorganization using branch count per instruction hardware |
| US7296130B2 (en) * | 2004-03-22 | 2007-11-13 | International Business Machines Corporation | Method and apparatus for providing hardware assistance for data access coverage on dynamically allocated data |
| US7421684B2 (en) | 2004-03-22 | 2008-09-02 | International Business Machines Corporation | Method and apparatus for autonomic test case feedback using hardware assistance for data coverage |
| US8135915B2 (en) * | 2004-03-22 | 2012-03-13 | International Business Machines Corporation | Method and apparatus for hardware assistance for prefetching a pointer to a data structure identified by a prefetch indicator |
| US7480899B2 (en) * | 2004-03-22 | 2009-01-20 | International Business Machines Corporation | Method and apparatus for autonomic test case feedback using hardware assistance for code coverage |
| US7299319B2 (en) * | 2004-03-22 | 2007-11-20 | International Business Machines Corporation | Method and apparatus for providing hardware assistance for code coverage |
| US7526616B2 (en) * | 2004-03-22 | 2009-04-28 | International Business Machines Corporation | Method and apparatus for prefetching data from a data structure |
| US7363450B1 (en) | 2005-06-01 | 2008-04-22 | Sun Microsystems, Inc. | Method and apparatus for estimating multithreaded processor throughput based on processor cache performance |
| US7457931B1 (en) * | 2005-06-01 | 2008-11-25 | Sun Microsystems, Inc. | Method and apparatus for estimating the effect of processor cache memory bus delays on multithreaded processor throughput |
| US7617387B2 (en) * | 2006-09-27 | 2009-11-10 | Qualcomm Incorporated | Methods and system for resolving simultaneous predicted branch instructions |
| US9483405B2 (en) | 2007-09-20 | 2016-11-01 | Sony Interactive Entertainment Inc. | Simplified run-time program translation for emulating complex processor pipelines |
| US9449314B2 (en) | 2008-10-02 | 2016-09-20 | International Business Machines Corporation | Virtualization of a central processing unit measurement facility |
| US7827321B2 (en) * | 2008-10-02 | 2010-11-02 | International Business Machines Corporation | Central processing unit measurement facility |
| DE102009009565B4 (de) * | 2009-02-19 | 2011-04-28 | Atmel Automotive Gmbh | Empfängerschaltung, Verwendung und Verfahren zum Empfang für ein codiertes und moduliertes Funksignal |
| US8433759B2 (en) | 2010-05-24 | 2013-04-30 | Sony Computer Entertainment America Llc | Direction-conscious information sharing |
| US8898646B2 (en) * | 2010-12-22 | 2014-11-25 | Intel Corporation | Method and apparatus for flexible, accurate, and/or efficient code profiling |
| US11853221B2 (en) | 2022-02-18 | 2023-12-26 | Hewlett Packard Enterprise Development Lp | Dynamic prefetching of data from storage |
| US11941250B2 (en) | 2022-05-06 | 2024-03-26 | Hewlett Packard Enterprise Development Lp | Optimizing application execution based on memory-level parallelism (MLP)-based metrics |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4590550A (en) * | 1983-06-29 | 1986-05-20 | International Business Machines Corporation | Internally distributed monitoring system |
| US4845615A (en) * | 1984-04-30 | 1989-07-04 | Hewlett-Packard Company | Software performance analyzer |
| US5103394A (en) * | 1984-04-30 | 1992-04-07 | Hewlett-Packard Company | Software performance analyzer |
| US4821178A (en) * | 1986-08-15 | 1989-04-11 | International Business Machines Corporation | Internal performance monitoring by event sampling |
| US5151981A (en) * | 1990-07-13 | 1992-09-29 | International Business Machines Corporation | Instruction sampling instrumentation |
| JPH0774984B2 (ja) * | 1991-06-10 | 1995-08-09 | インターナショナル・ビジネス・マシーンズ・コーポレイション | システム資源利用率測定方法とデータ処理システム |
| US5450586A (en) * | 1991-08-14 | 1995-09-12 | Hewlett-Packard Company | System for analyzing and debugging embedded software through dynamic and interactive use of code markers |
| GB2266606B (en) * | 1992-04-27 | 1996-02-14 | Intel Corp | A microprocessor with an external command mode |
| JPH06290079A (ja) * | 1993-03-30 | 1994-10-18 | Hitachi Ltd | 情報処理システム |
| US5485574A (en) * | 1993-11-04 | 1996-01-16 | Microsoft Corporation | Operating system based performance monitoring of programs |
| US5493673A (en) * | 1994-03-24 | 1996-02-20 | International Business Machines Corporation | Method and apparatus for dynamically sampling digital counters to improve statistical accuracy |
| US5446876A (en) * | 1994-04-15 | 1995-08-29 | International Business Machines Corporation | Hardware mechanism for instruction/data address tracing |
| US5581482A (en) * | 1994-04-26 | 1996-12-03 | Unisys Corporation | Performance monitor for digital computer system |
| US5528753A (en) * | 1994-06-30 | 1996-06-18 | International Business Machines Corporation | System and method for enabling stripped object software monitoring in a computer system |
| US5537541A (en) * | 1994-08-16 | 1996-07-16 | Digital Equipment Corporation | System independent interface for performance counters |
-
1997
- 1997-11-26 US US08/980,164 patent/US6119075A/en not_active Expired - Lifetime
-
1998
- 1998-11-25 EP EP98309653A patent/EP0919922B1/en not_active Expired - Lifetime
- 1998-11-25 DE DE69811832T patent/DE69811832T2/de not_active Expired - Lifetime
- 1998-11-26 JP JP37536098A patent/JP4294778B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| DE69811832D1 (de) | 2003-04-10 |
| US6119075A (en) | 2000-09-12 |
| DE69811832T2 (de) | 2003-08-14 |
| EP0919922B1 (en) | 2003-03-05 |
| EP0919922A3 (en) | 2000-02-23 |
| EP0919922A2 (en) | 1999-06-02 |
| JPH11272517A (ja) | 1999-10-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4294778B2 (ja) | プロセッサパイプラインにより処理される相互作用の特性の統計値を推定する方法 | |
| JP4467094B2 (ja) | プロセッサパイプラインにおいて多数の潜在的に同時の命令をサンプリングする装置 | |
| JP4467093B2 (ja) | プロセッサパイプラインにおいて命令をランダムにサンプリングする装置 | |
| US5923872A (en) | Apparatus for sampling instruction operand or result values in a processor pipeline | |
| US5809450A (en) | Method for estimating statistics of properties of instructions processed by a processor pipeline | |
| US5964867A (en) | Method for inserting memory prefetch operations based on measured latencies in a program optimizer | |
| US6092180A (en) | Method for measuring latencies by randomly selected sampling of the instructions while the instruction are executed | |
| US6070009A (en) | Method for estimating execution rates of program execution paths | |
| US6237073B1 (en) | Method for providing virtual memory to physical memory page mapping in a computer operating system that randomly samples state information | |
| US6549930B1 (en) | Method for scheduling threads in a multithreaded processor | |
| US6195748B1 (en) | Apparatus for sampling instruction execution information in a processor pipeline | |
| US5797019A (en) | Method and system for performance monitoring time lengths of disabled interrupts in a processing system | |
| US6708296B1 (en) | Method and system for selecting and distinguishing an event sequence using an effective address in a processing system | |
| US5752062A (en) | Method and system for performance monitoring through monitoring an order of processor events during execution in a processing system | |
| US5691920A (en) | Method and system for performance monitoring of dispatch unit efficiency in a processing system | |
| US5751945A (en) | Method and system for performance monitoring stalls to identify pipeline bottlenecks and stalls in a processing system | |
| US6148396A (en) | Apparatus for sampling path history in a processor pipeline | |
| US6175814B1 (en) | Apparatus for determining the instantaneous average number of instructions processed | |
| JP5649613B2 (ja) | クリティカルパスに基づく解析のための性能モニタリングアーキテクチャ強化の方法、装置、マイクロプロセッサ、及び、システム | |
| US6189072B1 (en) | Performance monitoring of cache misses and instructions completed for instruction parallelism analysis | |
| US5938760A (en) | System and method for performance monitoring of instructions in a re-order buffer | |
| US5949971A (en) | Method and system for performance monitoring through identification of frequency and length of time of execution of serialization instructions in a processing system | |
| CA2231570A1 (en) | Processor performance counter for sampling the execution frequency of individual instructions | |
| US5881306A (en) | Instruction fetch bandwidth analysis | |
| US5729726A (en) | Method and system for performance monitoring efficiency of branch unit operation in a processing system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051109 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051109 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20051109 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081208 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090306 |
|
| 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: 20090330 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090409 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120417 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120417 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130417 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130417 Year of fee payment: 4 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130417 Year of fee payment: 4 |
|
| R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130417 Year of fee payment: 4 |
|
| R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
| R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130417 Year of fee payment: 4 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140417 Year of fee payment: 5 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
| R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
| R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| EXPY | Cancellation because of completion of term |