[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JPH056344A - プログラム走行情報採取処理方式 - Google Patents

プログラム走行情報採取処理方式

Info

Publication number
JPH056344A
JPH056344A JP3158228A JP15822891A JPH056344A JP H056344 A JPH056344 A JP H056344A JP 3158228 A JP3158228 A JP 3158228A JP 15822891 A JP15822891 A JP 15822891A JP H056344 A JPH056344 A JP H056344A
Authority
JP
Japan
Prior art keywords
processor
nmi
information
program
shared memory
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.)
Pending
Application number
JP3158228A
Other languages
English (en)
Inventor
Takashi Nakamura
敬 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP3158228A priority Critical patent/JPH056344A/ja
Publication of JPH056344A publication Critical patent/JPH056344A/ja
Priority to US02/250,955 priority patent/US5437047A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3612Software analysis for verifying properties of programs by runtime analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】マルチプロセサシステムにおけるプログラム走
行情報採取処理方式に関し,システム全体の正確なプロ
グラム走行分布を得ることができるようにし,また,特
定のプロセサがクラッシュしても,累積データの喪失を
防ぐことができるようにすることを目的とする。 【構成】各プロセサ10ごとに,割り込みマスクが不可の
タイマ割り込みを,指定された間隔で発生させるNMI
タイマ割り込み機構11と,NMIタイマ割り込みが発生
した際に,その時点におけるプログラムの走行に関する
情報を,共用メモリ14内に収集するコンテキスト情報収
集機構12と,ある1つのプロセサ上で動作し,共用メモ
リ14内に収集されたプログラムの走行に関する情報をフ
ァイル16に書き出す処理を行う累積データ出力機構13と
を設ける。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は,マルチプロセサシステ
ムにおいて,システム内のすべてのプログラムを対象と
して,どのプログラムがどの程度動作しているかの分布
情報を,正確に得ることができるようにしたプログラム
走行情報採取処理方式に関する。
【0002】近年,複数のプロセサを結合したマルチプ
ロセサシステムが多く用いられるようになってきている
が,それらの各プロセサで動作するプログラムに関する
走行情報を,正確に低コストで得ることができるように
する技術が必要とされる。
【0003】
【従来の技術】従来,計算機システムでは,プログラム
の走行分布などの調査資料とするために,タイマ割り込
みを利用して,その割り込みが発生した時点のプログラ
ム状態語(PSW)やプログラムカウンタ(PC)など
のコンテキスト情報を収集することを行っている。
【0004】しかし,この方式では,割り込み禁止で走
行するオペレーティング・システムの核,すなわちカー
ネルについては,割り込みがマスクされてしまうので,
コンテキスト情報を収集する契機が得られず,そのプロ
グラムの走行情報を採取することはできなかった。した
がって,従来技術では,カーネルを含めたシステム全体
の正確なプログラム走行分布などの情報を得ることがで
きないという問題があった。
【0005】また,従来のマルチプロセサシステムで
は,各プロセサが個々に,プログラムの走行に関する情
報をメモリ上に累積していくようになっているため,例
えば1個のプロセサがクラッシュすると,そのプロセサ
が持っていた情報が揮発してしまい,データが欠落して
しまうことがあった。
【0006】一方,クラッシュ時におけるデータのロス
を防ぐために,プログラム走行情報の蓄積データ域とし
て,ファイル等の外部記憶媒体を各プロセサが直接使用
するようにすると,I/Oなどのオーバヘッドが大きく
なるという問題があった。
【0007】
【発明が解決しようとする課題】本発明は上記問題点の
解決を図り,割り込み禁止で走行するカーネルのプログ
ラムも含めた,システム全体の正確なプログラム走行分
布を得ることができるようにすることを目的としてい
る。また,特定のプロセサがクラッシュしても,それま
でに採取していたデータが失われることを,システムの
効率をできるだけ落とすことなく防ぐ手段を提供するこ
とを目的としている。
【0008】
【課題を解決するための手段】図1は本発明の原理説明
図である。図1において,10−1,10−2はマルチ
プロセサシステムを構成するプロセサ,11は割り込み
マスクが不可のタイマ割り込みを指定された間隔で発生
させるNMIタイマ割り込み機構,12はプログラムの
走行に関する情報を収集するコンテキスト情報収集機
構,13はプログラムの走行に関する情報をファイルに
書き出す累積データ出力機構,14は各プロセサが共通
にアクセスできる共用メモリ,15はコンテキスト情報
が蓄積される蓄積バッファ,16はコンテキスト情報が
格納されるファイルを表す。
【0009】本発明では,各プロセサ10−1,10−
2に,NMI(NonMaskarable Interuption)のタイマ
割り込みを,指定された間隔で発生させるNMIタイマ
割り込み機構11を設ける。
【0010】コンテキスト情報収集機構12は,NMI
タイマ割り込み機構11が発生させた割り込みによって
起動される割り込みハンドラであって,各プロセサごと
に,プログラム状態語(PSW)やプログラムカウンタ
(PC)といったコンテキスト情報を集めて,共用メモ
リ14内の蓄積バッファ15に累積する。
【0011】累積データ出力機構13は,マルチプロセ
サシステム中の1つのプロセサ10−2で動作するよう
に設けられる。累積データ出力機構13は,コンテキス
ト情報の累積量が所定の量になったとき,または所定の
間隔で周期的に起動され,蓄積バッファ15内の各プロ
セサごとのコンテキスト情報を,磁気ディスクなどの外
部記憶媒体であるread/write可能なファイル
16に書き出す。累積データ出力機構13は,オペレー
ティング・システム配下の通常のプロセスとして動作す
る。
【0012】
【作用】NMIタイマ割り込み機構11のハードウェア
機構は,ソフトウェアによってこれが起動されると,指
定された間隔でタイマ割り込みを発生させて,割り込み
ハンドラを起動する。この割り込みは,ソフトウェアに
よってマスクすることができないので,カーネル走行中
でも割り込むことができる。
【0013】コンテキスト情報収集機構12は,NMI
タイマ割り込み機構11の割り込みに対するハンドラと
して起動され,次の2つの作用をする。 割り込み時
点のカーネル内のPSW,PCなどのプログラムの走行
に関する情報を集める。 集めた情報をプロセサ間の
共用メモリ14内に累積する。この処理は,複数のプロ
セサで行われるため,排他をとって行う。なお,蓄積バ
ッファ15の領域を各プロセサごとに区分しておけば,
必ずしも排他制御を行わなくてもよい。
【0014】以上の処理は,割り込みハンドラとして行
われるため,通常のオペレーティング・システムの機能
を使用することはできない。しかし,上記,の処理
は,オペレーティング・システムの機能を使用すること
なく実行できるため問題はない。
【0015】累積データ出力機構13は,オペレーティ
ング・システム配下のプロセスとして動作し,コンテキ
スト情報収集機構12により共用メモリ14内の蓄積バ
ッファ15に累積した情報を,ファイル16に書き出
す。これにより,プログラム走行情報は,通常のrea
d/writeインタフェースで一般プログラムから読
むことが可能となる。
【0016】
【実施例】図2および図3は本発明の実施例を説明する
ための図である。図中,P1,P2はそれぞれ独立した
CPUを持つプロセサ,20はシステムに対して指示を
与える端末装置,21はカーネルプログラムの初期化処
理部,22はハードウェアのNMIタイマであって,図
1に示すNMIタイマ割り込み機構11に相当するも
の,23はNMI割り込みハンドラであって,図1に示
すコンテキスト情報収集機構12に相当するもの,24
は各プロセサのローカルメモリに設けられるバッファ,
30は累積情報出力のためのプロセスであって,図1に
示す累積データ出力機構13に相当するものを表す。
【0017】説明を簡単にするために,2台のプロセサ
P1,P2によりマルチプロセサシステムを構成する場
合で,プロセサP1でのプログラム走行状況を測定対象
とし,プロセサP2がその情報についてのファイル16
への書き出しを行うものとする。3台以上のプロセサの
場合にも,同様に本発明を実施することが可能である。
以下,図2および図3に示す〜に従って説明する。
【0018】 使用者が,端末装置20からプログラ
ム走行情報の収集処理を起動すると,カーネルプログラ
ムの初期化処理部21が起動される。 初期化処理部
21は,まずバッファ24を獲得する。
【0019】 次に,図3に示す累積情報出力のため
のプロセス30を,プロセスP2上で起動する。 所
定のハードウェアレジスタに,データ収集の契機となる
NMIタイマ値を設定し,NMIタイマの動作を開始さ
せる。タイマ値は,この例では500ミリ秒である。
【0020】 NMIタイマ22は,設定された50
0ミリ秒の時間が経過すると,NMIタイマ割り込みを
あげる。 NMIタイマ割り込みによってNMI割り
込みハンドラ23が起動される。NMI割り込みハンド
ラ23は,PC,PSW等の情報をカーネル内のバッフ
ァ24に入れる。
【0021】 バッファ24が満杯になったならば,
共用メモリ14へバッファ24内のデータを転記し,共
用メモリ14内に累積する。 以上の処理が終わった
ならば,次のNMIタイマを設定し,割り込み状態から
復帰する。以下,終了の指示があるまで,処理から
までを繰り返し行う。
【0022】 一方,プロセサP2(図3)では,累
積情報出力のためのプロセス30が,一定の時間ごと
に,共用メモリ14内の全プロセサの累積データを,フ
ァイル16に出力する。この出力では,オペレーティン
グ・システムの提供する通常のファイルアクセス機能を
用いる。
【0023】以上のように,プログラム走行情報をシス
テムメモリである共用メモリ14に累積することによ
り,例えばプロセサP1のクラッシュに対して,累積し
たデータが喪失することを防ぐことができる。共用メモ
リ14を不揮発性のメモリで構成するとさらによい。
【0024】また,システムメモリである共用メモリ1
4を利用することにより,被測定プログラム情報(プロ
セサP1で動作)に与えるファイル出力処理(プロセサ
P2で動作)の影響を排除することができる。
【0025】なお,NMIタイマ割り込み機構11は,
周知のハードウェア技術で容易に実施することができる
ので,その詳細な回路構成等の説明は省略する。
【0026】
【発明の効果】以上説明したように,本発明によれば,
一定周期ごとに,カーネルのプログラムも含めたプログ
ラム走行に関する分布などの情報を正確に採ることがで
きるようになる。またデータを共用メモリに蓄積するた
め,個々のプロセサがクラッシュしても集めたデータを
失うことなく,それまでに蓄積されたデータを出力する
ことができる。累積データをファイルに出力するプロセ
サは1つであるので,ファイル出力を効率的に行うこと
ができ,低コスト化が可能となる。また,特定のプロセ
サのプログラム走行情報を収集するとき,他のプロセサ
にファイル出力処理を担当させることができるので,フ
ァイル出力処理の影響を測定対象のプロセサに与えるこ
とがないという効果がある。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】本発明の実施例を説明するための図である。
【図3】本発明の実施例を説明するための図である。 10−1,10−2 プロセサ 11 NMIタイマ割り込み機構 12 コンテキスト情報収集機構 13 累積データ出力機構 14 共用メモリ 15 蓄積バッファ 16 ファイル

Claims (1)

  1. 【特許請求の範囲】 【請求項1】 複数のプロセサ(10)と,複数のプロセサ
    (10)がアクセスできる共用メモリ(14)とを備えたマルチ
    プロセサシステムにおけるプログラム走行情報採取処理
    方式であって,各プロセサ(10)ごとに,割り込みマスク
    が不可のタイマ割り込みを,指定された間隔で発生させ
    るNMIタイマ割り込み機構(11)と,各プロセサ(10)ご
    とに,前記NMIタイマ割り込み機構(11)によるタイマ
    割り込みが発生した際に,その時点におけるプログラム
    の走行に関する情報を,前記共用メモリ(14)内に収集す
    るコンテキスト情報収集機構(12)と,ある1つのプロセ
    サ上で動作し,前記共用メモリ(14)内に収集されたプロ
    グラムの走行に関する情報をファイル(16)に書き出す処
    理を行う累積データ出力機構(13)とを備えたことを特徴
    とするプログラム走行情報採取処理方式。
JP3158228A 1991-06-28 1991-06-28 プログラム走行情報採取処理方式 Pending JPH056344A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP3158228A JPH056344A (ja) 1991-06-28 1991-06-28 プログラム走行情報採取処理方式
US02/250,955 US5437047A (en) 1991-06-28 1994-05-27 System for gathering and safeguarding program run information of each individual processor by transferring information to an external storage

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3158228A JPH056344A (ja) 1991-06-28 1991-06-28 プログラム走行情報採取処理方式

Publications (1)

Publication Number Publication Date
JPH056344A true JPH056344A (ja) 1993-01-14

Family

ID=15667081

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3158228A Pending JPH056344A (ja) 1991-06-28 1991-06-28 プログラム走行情報採取処理方式

Country Status (2)

Country Link
US (1) US5437047A (ja)
JP (1) JPH056344A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6308316B1 (en) 1993-11-30 2001-10-23 Fujitsu Limited Apparatus for analyzing operations of parallel processing system

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3385091B2 (ja) * 1994-05-13 2003-03-10 三菱電機株式会社 計算機間の排他制御装置
DE4429969A1 (de) * 1994-08-24 1996-02-29 Sel Alcatel Ag Verfahren für einen Programmpaketeaustausch in einem Mehrrechnersystem und Rechner dafür
US5754866A (en) * 1995-05-08 1998-05-19 Nvidia Corporation Delayed interrupts with a FIFO in an improved input/output architecture
US6205467B1 (en) * 1995-11-14 2001-03-20 Advanced Micro Devices, Inc. Microprocessor having a context save unit for saving context independent from interrupt requests
US6065139A (en) * 1997-03-31 2000-05-16 International Business Machines Corporation Method and system for surveillance of computer system operations
US5951686A (en) * 1997-03-31 1999-09-14 International Business Machines Corporation Method and system for reboot recovery
US6119246A (en) * 1997-03-31 2000-09-12 International Business Machines Corporation Error collection coordination for software-readable and non-software readable fault isolation registers in a computer system
US6557121B1 (en) 1997-03-31 2003-04-29 International Business Machines Corporation Method and system for fault isolation for PCI bus errors
US6502208B1 (en) 1997-03-31 2002-12-31 International Business Machines Corporation Method and system for check stop error handling
FR2774790B1 (fr) * 1998-02-12 2000-04-14 Bull Sa Procede et dispositif de suivi de la repartition de taches de processus informatiques dans une machine multiprocesseur, et machine comportant ou ayant utilise un tel dispositif
DE19855196C1 (de) * 1998-11-30 2000-05-31 Siemens Ag Vorrichtung und Verfahren zum statistischen Sammeln von Daten in einem Multiprozessorsystem
US6957432B2 (en) 2000-03-21 2005-10-18 Microsoft Corporation Real-time scheduler
US6990669B1 (en) * 2000-03-21 2006-01-24 Microsoft Corporation Real-time scheduler
JP4100256B2 (ja) * 2003-05-29 2008-06-11 株式会社日立製作所 通信方法および情報処理装置
EP2225645B1 (en) * 2007-12-17 2011-07-27 Continental Teves AG & Co. oHG Memory mapping system, request controller, multi-processing arrangement, central interrupt request controller, apparatus, method for controlling memory access and computer program product
US8166349B2 (en) * 2008-12-18 2012-04-24 Vmware, Inc. Communicating with USB devices after a computer system crash
US8448029B2 (en) * 2009-03-11 2013-05-21 Lsi Corporation Multiprocessor system having multiple watchdog timers and method of operation
US9703951B2 (en) 2014-09-30 2017-07-11 Amazon Technologies, Inc. Allocation of shared system resources
US9378363B1 (en) * 2014-10-08 2016-06-28 Amazon Technologies, Inc. Noise injected virtual timer
US9754103B1 (en) 2014-10-08 2017-09-05 Amazon Technologies, Inc. Micro-architecturally delayed timer
US9864636B1 (en) 2014-12-10 2018-01-09 Amazon Technologies, Inc. Allocating processor resources based on a service-level agreement
US9491112B1 (en) 2014-12-10 2016-11-08 Amazon Technologies, Inc. Allocating processor resources based on a task identifier
CN111324527B (zh) * 2019-12-09 2023-08-11 武汉滨湖电子有限责任公司 一种通过数据采集方式测试中断程序的装置及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60243749A (ja) * 1984-05-17 1985-12-03 Fuji Electric Co Ltd ウオツチドグタイマの動作チエツク方法
JPS6421648A (en) * 1987-07-17 1989-01-25 Fujitsu Ltd Status data collection and processing system
JPH03134742A (ja) * 1989-10-20 1991-06-07 Mitsubishi Electric Corp デバッグ装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4034347A (en) * 1975-08-08 1977-07-05 Bell Telephone Laboratories, Incorporated Method and apparatus for controlling a multiprocessor system
JPS547252A (en) * 1977-06-20 1979-01-19 Hitachi Ltd Program control system
US4245306A (en) * 1978-12-21 1981-01-13 Burroughs Corporation Selection of addressed processor in a multi-processor network
US4368514A (en) * 1980-04-25 1983-01-11 Timeplex, Inc. Multi-processor system
US4414624A (en) * 1980-11-19 1983-11-08 The United States Of America As Represented By The Secretary Of The Navy Multiple-microcomputer processing
US4965717A (en) * 1988-12-09 1990-10-23 Tandem Computers Incorporated Multiple processor system having shared memory with private-write capability
US5099418A (en) * 1990-06-14 1992-03-24 Hughes Aircraft Company Distributed data driven process

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60243749A (ja) * 1984-05-17 1985-12-03 Fuji Electric Co Ltd ウオツチドグタイマの動作チエツク方法
JPS6421648A (en) * 1987-07-17 1989-01-25 Fujitsu Ltd Status data collection and processing system
JPH03134742A (ja) * 1989-10-20 1991-06-07 Mitsubishi Electric Corp デバッグ装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6308316B1 (en) 1993-11-30 2001-10-23 Fujitsu Limited Apparatus for analyzing operations of parallel processing system

Also Published As

Publication number Publication date
US5437047A (en) 1995-07-25

Similar Documents

Publication Publication Date Title
JPH056344A (ja) プログラム走行情報採取処理方式
US6539500B1 (en) System and method for tracing
JP4209959B2 (ja) 性能カウンタの高頻度サンプリング装置及び方法
US5193179A (en) Activity monitor system non-obtrusive statistical monitoring of operations on a shared bus of a multiprocessor system
JPH055136B2 (ja)
JPH11328019A (ja) コンピュ―タメモリシステムにおいて空間的及び時間的サンプリングを行う装置
JPH11316711A (ja) メモリシステムトランザクションの特性の統計値を推定する方法
KR20230098610A (ko) 시스템 온 칩(soc들)을 위한 향상된 내구성
JP4992740B2 (ja) マルチプロセッサシステム、障害検出方法および障害検出プログラム
Chen et al. Log-based architectures: Using multicore to help software behave correctly
JPS588018B2 (ja) 多重プロセッサシステム
US20200387438A1 (en) Tracking hardware events within a process on an instruction-level simulator
US20110173420A1 (en) Processor resume unit
Pokam et al. HARDWARE AND SOFTWARE APPROACHES FOR DETERMINISTIC MULTI-PROCESSOR REPLAY OF CONCURRENT PROGRAMS.
JP2974681B2 (ja) パルス幅符号化状態出力信号を有するデータプロセッサ
JP3506920B2 (ja) 全命令トレースデータの2次記憶装置への格納競合防止方法
Drótos et al. Interrupt driven parallel processing
US11900150B2 (en) Methods and systems for collection of system management interrupt data
Alhabib Multi-core Implementation of DSP Algorithms for High Performance Computing
JP2993731B2 (ja) ハードウェアトレース情報の制御方式
JPS6072040A (ja) プログラムの実行時間監視方式
JPS63292248A (ja) デ−タ処理システム
JPH07230432A (ja) 計算装置
Iwasa et al. SSM-MP: more scalability in shared-memory multi-processor
Yang et al. Hardware and Software Approaches for Deterministic Multi-processor Replay of Concurrent Programs

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19980203