JP2007272692A - プロファイリングプログラムおよびプロファイリング方法 - Google Patents
プロファイリングプログラムおよびプロファイリング方法 Download PDFInfo
- Publication number
- JP2007272692A JP2007272692A JP2006099350A JP2006099350A JP2007272692A JP 2007272692 A JP2007272692 A JP 2007272692A JP 2006099350 A JP2006099350 A JP 2006099350A JP 2006099350 A JP2006099350 A JP 2006099350A JP 2007272692 A JP2007272692 A JP 2007272692A
- Authority
- JP
- Japan
- Prior art keywords
- information
- target range
- profiling
- transition
- interrupt
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
【解決手段】ターゲット範囲指定インタフェース120が情報収集対象範囲の指定をアプリケーションプログラム30から受け取ってフラグ管理テーブル150に登録し、フラグ設定インタフェース130がフラグ値をアプリケーションプログラム30から受け取ってフラグ管理テーブル150に設定し、割込みハンドラ140が割込み発生時の実行アドレスがフラグ管理テーブル150に登録された情報収集対象範囲のいずれかに該当する場合には実行アドレスとともにフラグ管理テーブル150のその時点のフラグ値を割込みハンドラ記録テーブル160に記録する。
【選択図】 図1
Description
前記割込みハンドラによって情報収集を行う対象範囲を指定する対象範囲指定手順と、
前記対象範囲指定手順により指定された対象範囲で前記割込みが発生した際に割込みハンドラによって収集される情報を設定する情報設定手順と、
をコンピュータに実行させることを特徴とするプロファイリングプログラム。
前記情報設定手順は、前記関数置換手順により記録された実行の遷移に関する情報の一部を前記収集される情報として設定することを特徴とする付記1または2に記載のプロファイリングプログラム。
前記情報設定手順は、前記関数置換手順により記録された遷移識別子を前記収集される情報として設定することを特徴とする付記3に記載のプロファイリングプログラム。
前記割込みハンドラによって情報収集を行う対象範囲を指定する対象範囲指定工程と、
前記対象範囲指定工程により指定された対象範囲で前記割込みが発生した際に割込みハンドラによって収集される情報を設定する情報設定工程と、
を含んだことを特徴とするプロファイリング方法。
前記情報設定工程は、前記関数置換工程により記録された実行の遷移に関する情報の一部を前記収集される情報として設定することを特徴とする付記11または12に記載のプロファイリング方法。
前記情報設定工程は、前記関数置換工程により記録された遷移識別子を前記収集される情報として設定することを特徴とする付記13に記載のプロファイリング方法。
20 オペレーティングシステム
30,40 アプリケーションプログラム
100,200 プロファイリングプログラム
110 初期処理ルーチン
120 ターゲット範囲指定インタフェース
130,230 フラグ設定インタフェース
140 割込みハンドラ
150 フラグ管理テーブル
160 割込みハンドラ記録テーブル
270 命令書換ルーチン
280 遷移管理テーブル
300 コンピュータ
310 RAM
311 アプリケーションプログラム
312 割込みハンドラ
320 CPU
321 アプリケーションプロセス
330 HDD
340 LANインタフェース
350 入出力インタフェース
360 DVDドライブ
Claims (10)
- 所定の条件が満たされた際に発生する割込みにより起動される割込みハンドラによって情報収集対象プログラムの実行状況に関する情報を収集するプロファイリングプログラムであって、
前記割込みハンドラによって情報収集を行う対象範囲を指定する対象範囲指定手順と、
前記対象範囲指定手順により指定された対象範囲で前記割込みが発生した際に割込みハンドラによって収集される情報を設定する情報設定手順と、
をコンピュータに実行させることを特徴とするプロファイリングプログラム。 - 前記所定の条件の設定および割込みハンドラの登録をオペレーティングシステムに依頼する初期処理手順をさらにコンピュータに実行させることを特徴とする請求項1に記載のプロファイリングプログラム。
- 前記対象範囲に遷移する関数呼出しを情報収集対象プログラムから検出し、該検出した関数呼出しを前記情報設定手順の呼出しに置き換えるとともに、該関数呼出しによる実行の遷移に関する情報を記録する関数置換手順をさらにコンピュータに実行させ、
前記情報設定手順は、前記関数置換手順により記録された実行の遷移に関する情報の一部を前記収集される情報として設定することを特徴とする請求項1または2に記載のプロファイリングプログラム。 - 前記関数置換手順は、前記実行の遷移に関する情報の一部として各遷移を識別する遷移識別子を記録し、
前記情報設定手順は、前記関数置換手順により記録された遷移識別子を前記収集される情報として設定することを特徴とする請求項3に記載のプロファイリングプログラム。 - 前記関数置換手順は、前記実行の遷移に関する情報として遷移元アドレスおよび遷移先アドレスを含む情報を記録することを特徴とする請求項3または4に記載のプロファイリングプログラム。
- 前記関数置換手順は、前記対象範囲に遷移するまでの関数呼出しの段数指定に基づいて前記関数呼出しを検出することを特徴とする請求項3、4または5に記載のプロファイリングプログラム。
- 前記情報設定手順により設定される情報は、割込みが発生した際の実行アドレスとともに収集されることを特徴とする請求項1〜6のいずれか一つに記載のプロファイリングプログラム。
- 前記対象範囲指定手順による対象範囲の指定には、関数名による指定が含まれることを特徴とする請求項1〜7のいずれか一つに記載のプロファイリングプログラム。
- 前記情報設定手順により設定される情報は複数の値から構成され、前記割込みハンドラは複数の値を収集することを特徴とする請求項1〜8のいずれか一つに記載のプロファイリングプログラム。
- 所定の条件が満たされた際に発生する割込みにより起動される割込みハンドラによって情報収集対象プログラムの実行状況に関する情報を収集するプロファイリング方法であって、
前記割込みハンドラによって情報収集を行う対象範囲を指定する対象範囲指定工程と、
前記対象範囲指定工程により指定された対象範囲で前記割込みが発生した際に割込みハンドラによって収集される情報を設定する情報設定工程と、
を含んだことを特徴とするプロファイリング方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006099350A JP4681491B2 (ja) | 2006-03-31 | 2006-03-31 | プロファイリングプログラムおよびプロファイリング方法 |
US11/493,564 US8032869B2 (en) | 2006-03-31 | 2006-07-27 | Profiling method and computer product |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006099350A JP4681491B2 (ja) | 2006-03-31 | 2006-03-31 | プロファイリングプログラムおよびプロファイリング方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007272692A true JP2007272692A (ja) | 2007-10-18 |
JP4681491B2 JP4681491B2 (ja) | 2011-05-11 |
Family
ID=38561034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006099350A Expired - Fee Related JP4681491B2 (ja) | 2006-03-31 | 2006-03-31 | プロファイリングプログラムおよびプロファイリング方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8032869B2 (ja) |
JP (1) | JP4681491B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010079508A (ja) * | 2008-09-25 | 2010-04-08 | Fujitsu Microelectronics Ltd | プロファイリング方法およびプロファイリングプログラム |
EP2230602A1 (en) | 2009-03-18 | 2010-09-22 | Fujitsu Limited | Processing apparatus and method for acquiring log information |
JP2011039903A (ja) * | 2009-08-17 | 2011-02-24 | Fujitsu Ltd | プロセス状態検知プログラム、情報処理装置、プロセス状態検知方法 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8429613B2 (en) | 2006-10-31 | 2013-04-23 | Microsoft Corporation | Stepping and application state viewing between points |
JP5029245B2 (ja) * | 2007-09-20 | 2012-09-19 | 富士通セミコンダクター株式会社 | プロファイリング方法及びプログラム |
US20090113400A1 (en) * | 2007-10-24 | 2009-04-30 | Dan Pelleg | Device, System and method of Profiling Computer Programs |
US8990792B2 (en) * | 2008-05-26 | 2015-03-24 | Samsung Electronics Co., Ltd. | Method for constructing dynamic call graph of application |
US7917677B2 (en) * | 2008-09-15 | 2011-03-29 | International Business Machines Corporation | Smart profiler |
JP5045787B2 (ja) * | 2010-06-07 | 2012-10-10 | コニカミノルタビジネステクノロジーズ株式会社 | 情報処理装置、情報処理方法およびプログラム |
US8601194B2 (en) * | 2011-02-08 | 2013-12-03 | Red Hat Israel, Ltd. | On-demand interrupt vector allocation based on activity detection |
US9213641B2 (en) | 2012-06-14 | 2015-12-15 | International Business Machines Corporation | Cache line history tracking using an instruction address register file |
JP6693308B2 (ja) * | 2016-07-05 | 2020-05-13 | 富士通株式会社 | 負荷推定プログラム、負荷推定方法及び負荷推定装置 |
US20220100860A1 (en) * | 2020-09-25 | 2022-03-31 | Ati Technologies Ulc | Secure collection and communication of computing device working data |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01270153A (ja) * | 1988-04-21 | 1989-10-27 | Nec Corp | プログラム割込情報収集方式 |
JPH0358144A (ja) * | 1989-07-26 | 1991-03-13 | Nec Corp | プログラム走行覆歴情報収集方式 |
JPH11212837A (ja) * | 1998-01-26 | 1999-08-06 | Nec Corp | 言語処理方法及び言語処理装置並びに言語処理プログラムを記録した記憶媒体 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003140928A (ja) | 2001-11-02 | 2003-05-16 | Fujitsu Ltd | 仮想マシン内部情報自動取得システム |
US7159144B2 (en) * | 2003-06-20 | 2007-01-02 | Broadcom Corporation | Firmware code profiling |
US7721268B2 (en) * | 2004-10-01 | 2010-05-18 | Microsoft Corporation | Method and system for a call stack capture |
JP4899511B2 (ja) * | 2006-02-08 | 2012-03-21 | 富士通株式会社 | システム分析プログラム、システム分析装置、およびシステム分析方法 |
JP4957017B2 (ja) * | 2006-03-02 | 2012-06-20 | 富士通セミコンダクター株式会社 | 性能チューニング方法及び装置、プログラム及び記憶媒体 |
JP5386905B2 (ja) * | 2008-09-25 | 2014-01-15 | 富士通セミコンダクター株式会社 | プロファイリング方法およびプロファイリングプログラム |
-
2006
- 2006-03-31 JP JP2006099350A patent/JP4681491B2/ja not_active Expired - Fee Related
- 2006-07-27 US US11/493,564 patent/US8032869B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01270153A (ja) * | 1988-04-21 | 1989-10-27 | Nec Corp | プログラム割込情報収集方式 |
JPH0358144A (ja) * | 1989-07-26 | 1991-03-13 | Nec Corp | プログラム走行覆歴情報収集方式 |
JPH11212837A (ja) * | 1998-01-26 | 1999-08-06 | Nec Corp | 言語処理方法及び言語処理装置並びに言語処理プログラムを記録した記憶媒体 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010079508A (ja) * | 2008-09-25 | 2010-04-08 | Fujitsu Microelectronics Ltd | プロファイリング方法およびプロファイリングプログラム |
US8549505B2 (en) | 2008-09-25 | 2013-10-01 | Fujitsu Semiconductor Limited | Profiling method, system, and recording medium having a profiling program |
EP2230602A1 (en) | 2009-03-18 | 2010-09-22 | Fujitsu Limited | Processing apparatus and method for acquiring log information |
US8731688B2 (en) | 2009-03-18 | 2014-05-20 | Fujitsu Limited | Processing apparatus and method for acquiring log information |
JP2011039903A (ja) * | 2009-08-17 | 2011-02-24 | Fujitsu Ltd | プロセス状態検知プログラム、情報処理装置、プロセス状態検知方法 |
Also Published As
Publication number | Publication date |
---|---|
US20070234298A1 (en) | 2007-10-04 |
JP4681491B2 (ja) | 2011-05-11 |
US8032869B2 (en) | 2011-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4681491B2 (ja) | プロファイリングプログラムおよびプロファイリング方法 | |
US11249881B2 (en) | Selectively tracing portions of computer process execution | |
JP5520371B2 (ja) | 多重仮想マシンのためのサポートを有する、トレース・データの時間ベース・コンテキスト・サンプリング | |
JP4003830B2 (ja) | マルチプロセッシング環境における透過動的最適化のための方法およびシステム | |
CN101957773B (zh) | 用于多轮次动态概要分析的方法及其系统 | |
JP3731887B2 (ja) | 繰返し命令の追跡許可 | |
Shen et al. | Cudaadvisor: Llvm-based runtime profiling for modern gpus | |
JP2005018760A (ja) | アプリケーションのプロファイリングを容易にするシステムおよび方法 | |
US20090150874A1 (en) | Binary programmable method for application performance data collection | |
EP3785125B1 (en) | Selectively tracing portions of computer process execution | |
JP5029245B2 (ja) | プロファイリング方法及びプログラム | |
US11748072B2 (en) | Apparatus and method for source code optimisation | |
EP3391224B1 (en) | Method and apparatus for data mining from core traces | |
JP2013533553A (ja) | システムテスト方法 | |
JP4940996B2 (ja) | プロファイリング装置およびプロファイリングプログラム | |
US8065665B1 (en) | Method and apparatus for correlating profile data | |
US20160170875A1 (en) | Managed runtime cache analysis | |
JP6544054B2 (ja) | 情報処理装置、実行情報記録プログラムおよび実行情報記録方法 | |
US20040193395A1 (en) | Program analyzer for a cycle accurate simulator | |
Daoud et al. | Recovering disk storage metrics from low‐level trace events | |
Ferdinand et al. | Analyzing the worst-case execution time by abstract interpretation of executable code | |
US7827543B1 (en) | Method and apparatus for profiling data addresses | |
JP2018097817A (ja) | 情報処理装置、情報処理方法及びプログラム | |
Won et al. | Trapfetch: A breakpoint-based prefetcher for both launch and run-time | |
JP2011118596A (ja) | 情報処理装置およびプロファイリング方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080818 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100726 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100803 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101001 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101102 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101228 |
|
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: 20110201 |
|
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: 20110204 |
|
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: 20140210 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |