JP3480973B2 - 並列処理システムの動作解析装置 - Google Patents

並列処理システムの動作解析装置

Info

Publication number
JP3480973B2
JP3480973B2 JP30020593A JP30020593A JP3480973B2 JP 3480973 B2 JP3480973 B2 JP 3480973B2 JP 30020593 A JP30020593 A JP 30020593A JP 30020593 A JP30020593 A JP 30020593A JP 3480973 B2 JP3480973 B2 JP 3480973B2
Authority
JP
Japan
Prior art keywords
program
interrupts
master
interrupt
parallel
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 - Fee Related
Application number
JP30020593A
Other languages
English (en)
Other versions
JPH07152614A (ja
Inventor
伸 橋本
玲司 正木
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 JP30020593A priority Critical patent/JP3480973B2/ja
Publication of JPH07152614A publication Critical patent/JPH07152614A/ja
Priority to US09/004,505 priority patent/US6308316B1/en
Application granted granted Critical
Publication of JP3480973B2 publication Critical patent/JP3480973B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/3404Recording 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 for parallel or distributed programming

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)
  • Multi Processors (AREA)
  • Debugging And Monitoring (AREA)
  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は並列処理システムの動作
解析装置に関し、特に、マルチプロセッサ・システムに
おける並列処理の実行情報の取得および解析を行うため
の並列処理システムの動作解析装置に関する。近年、複
数のプロセッサ・エレメント(PE)を備え、該複数の
PEが並列的に処理を行う並列処理システム(マルチプ
ロセッサ・システム)が提案されている。マルチプロセ
ッサ・システムにおいて、実運用のための実行プログラ
ムを実行している環境下において、並列実行の状態およ
びデータ転送の状態を取得し、それらの情報を解析する
ことのできる並列処理システムの動作解析装置の提供が
要望されている。
【0002】
【従来の技術】従来、マルチプロセッサ・システムにお
ける並列処理の実行情報を取得するために、実行プログ
ラム(高級言語:例えば、フォートラン言語やC言語)
中に実行時の情報を出力する命令を埋め込み、その出力
結果を解析することが行われていた。
【0003】ところで、実行プログラム中に実行時の情
報を出力するための命令を埋め込むと、実行性能を悪く
することになるため、この命令の埋め込みは、翻訳時の
オプションによって行うようになっている。一方、従
来、逐次処理の実行情報を取得するために、一定間隔で
プログラムに割り込みをかけ、その時の実行中アドレス
を取得する方式が提案されている。しかしながら、この
方式では、並列処理として必要な情報を取得することは
できなかった。
【0004】
【発明が解決しようとする課題】上述したように、マル
チプロセッサ・システムにおける並列処理の実行情報を
取得するために、実行時の情報を出力するための命令を
翻訳時のオプションによって実行プログラム中に埋め込
むと、実行情報取得用の実行プログラムと実運用のため
の実行プログラムが異なるため測定結果の妥当性に問題
が生じることになる。さらに、再翻訳(チューニング時
の再コンパイル)を行うには長時間(数分〜数時間)を
要するため、並列処理の実行情報を取得するためにに要
する負担が増大することになる。
【0005】本発明は、上述した従来のマルチプロセッ
サ・システムにおける動作解析技術が有する課題に鑑
み、マルチプロセッサ・システムにおける並列処理の実
行情報を効率良く取得することを目的とする。
【0006】
【課題を解決するための手段】本発明の第1の形態によ
れば、プログラムマスタ割り込みとリージョンマスタ割
り込みを含む割り込み情報を有するプログラム実行時動
作情報より求めた、プログラムマスタ割り込み回数と全
割り込み回数とリージョンマスタ割り込み回数を記憶す
る記憶手段と、並列処理システムにおけるオペレーティ
ングシステムレベルの割り込みタイマ機能とプログラム
マスタ割り込みとリージョンマスタ割り込みを含むプロ
グラム実行時動作情報を取得する機能と前記並列処理シ
ステムで使用するプロセッサ数を有する解析対象となる
並列処理されるプログラム中の前記割り込みタイマ機能
による割り込み毎に前記プログラム実行時動作情報を取
得する機能により前記プログラム実行時動作情報を取得
し、取得したプログラム実行時動作情報より求めた、プ
ログラムマスタ割り込み回数と全割り込み回数とリージ
ョンマスタ割り込み回数を前記記憶手段に格納する手段
と、前記プログラムマスタ割り込み回数と前記全割り込
み回数と前記リージョンマスタ割り込み回数と前記プロ
セッサ数に基づいて前記並列処理されるプログラムの並
列化率を算出する機能を有する解析プログラムに入力と
して前記並列処理されるプログラムと前記記憶手段に格
納された情報が与えられた場合、前記並列処理されるプ
ログラムから前記プロセッサ数を取得し、取得したプロ
セッサ数と前記プログラムマスタ割り込み回数を掛け合
わせて得た数値から前記全割り込み回数を引いて得た数
値を、前記リージョンマスタ割り込み回数と前記プロセ
ッサの数から1を引いて得た数値を掛け合わせて得た数
値で割って得た数値を1から引いて並列化率を算出する
手段と、を備えたことを特徴とする並列処理システムの
動作解析装置が提供される。本発明の第2の形態によれ
ば、プログラムマスタ割り込みとリージョンマスタ割り
込みを含む割り込み情報を有するプログラム実行時動作
情報より求めた、プログラムマスタ割り込み回数と全割
り込み回数とリージョンマスタ割り込み回数を記憶する
記憶手段と、並列処理システムにおけるオペレーティン
グシステムレベルの割り込みタイマ機能とプログラムマ
スタ割り込みとリージョンマスタ割り込みを含むプログ
ラム実行時動作情報を取得する機能と前記並列処理シス
テムで使用するプロセッサ数を有する解析対象となる並
列処理されるプログラム中の前記割り込みタイマ機能に
よる割り込み毎に前記プログラム実行時動作情報を取得
する機能により前記プログラム実行時動作情報を取得
し、取得したプログラム実行時動作情報より求めた、プ
ログラムマスタ割り込み回数と全割り込み回数とリージ
ョンマスタ割り込み回数を前記記憶手段に格納する手段
と、前記プログラムマスタ割り込み回数と前記全割り込
み回数と前記リージョンマスタ割り込み回数と前記プロ
セッサ数に基づいて前記並列処理されるプログラムの並
列加速率を算出する機能を有する解析プログラムに入力
として前記並列処理されるプログラムと前記記憶手段に
格納された情報が与えられ場合、前記並列処理されるプ
ログラムから前記プロセッサ数を取得し、取得したプロ
セッサ数から1を引いて得た数値と前記リージョンマス
タ割り込み回数から前記プログラムマスタの割り込み回
数を引いて得た数値を掛け合わせて得た数値を、前記全
割り込み回数から前記プログラムマスタ割り込み回数を
引いて得た数値で割って得た数値に、1を足して並列加
速率を算出する手段と、を備えたことを特徴とする並列
処理システムの動作解析装置が提供される。
【0007】
【作用】本発明の第1の形態の並列処理システムの動作
解析装置によれば、並列化率を算出する手段は、プログ
ラムマスタ割り込み回数と全割り込み回数とリージョン
マスタ割り込み回数とプロセッサ数に基づいて並列処理
されるプログラムの並列化率を算出する機能を有する解
析プログラムに入力として並列処理されるプログラムと
記憶手段に格納された情報が与えられた場合、並列処理
されるプログラムからプロセッサ数を取得する。さら
に、並列化率を算出する手段は、取得したプロセッサ数
とプログラムマスタ割り込み回数を掛け合わせて得た数
値から全割り込み回数を引いて得た数値を、リージョン
マスタ割り込み回数とプロセッサの数から1を引いて得
た数値を掛け合わせて得た数値で割って得た数値を1か
ら引いて並列化率を算出する。本発明の第2の形態の並
列処理システムの動作解析装置によれば、並列加速率を
算出する手段は、プログラムマスタ割り込み回数と全割
り込み回数とリージョンマスタ割り込み回数とプロセッ
サ数に基づいて並列処理されるプログラムの並列加速率
を算出する機能を有する解析プログラムに入力として並
列処理されるプログラムと記憶手段に格納された情報が
与えられ場合、並列処理されるプログラムから前記プロ
セッサ数を取得する。さらに、並列加速率を算出する手
段は、取得したプロセッサ数から1を引いて得た数値と
リージョンマスタ割り込み回数からプログラムマスタの
割り込み回数を引いて得た数値を掛け合わせて得た数値
を、全割り込み回数からプログラムマスタ割り込み回数
を引いて得た数値で割って得た数値に、1を足して並列
加速率を算出する。そして、これらの情報(並列化率お
よび並列加速率)を解析することによって並列処理に必
要な情報を得ることができる。この本発明の並列処理シ
ステムの動作解析装置によれば、実運用向けの実行プロ
グラムに割り込み用ライブラリを入れておき、実行時の
環境によって情報取得を行うかどうかの制御が可能であ
るため、マルチプロセッサ・システムにおける並列処理
の実行情報を効率良く取得することができる。
【0008】
【実施例】以下、図面を参照して本発明に係る並列処理
システムの動作解析装置の実施例を説明する。図1は本
発明に係る並列処理システムの動作解析装置(サンプ
ラ)の一実施例を模式的に示すブロック図である。同図
において、参照符号1はソース(例えば、フォートラン
によるプログラム),2はコンパイラ,3はオブジェクト
(コンパイルされたオブジェクト・コード),4は測定ラ
イブラリ,5はリンカ,6は実行プログラム,7は情報
ファイル,8は解析プログラム,そして,9は解析出力
を示している。
【0009】図1に示されるように、リンカ5によっ
て、実行プログラム6の中に測定用の測定ライブラリ4
を組み込む。適当な実行時のオプションを指定して、実
行プログラム6を実行することによって、組み込まれた
測定ライブラリ4を起動して、情報ファイル7を生成す
る。ここで、実行時のオプションを指定しない場合に
は、初期化時の判定のオーバヘッドは殆どない。
【0010】生成された情報ファイル7は、解析プログ
ラム8によって解析される。このとき、解析プログラム
8は、例えば、実行プログラム6に含まれる情報(el
f情報)を使用する。本実施例の並列処理システムの動
作解析装置は、以下に詳述するように、タイマによる割
り込みによってプルグラムの実行状態を調べるもので、
OS(オペレーティング・システム)レベルの持つ割り
込みタイマ機能を利用して行うようになっている。ここ
で、動作解析装置(サンプラ)の割り込み回数が十分に
大きい場合、該サンプラの割り込み回数の割合はプログ
ラムの実行状態を反映することになり、得られた情報
(解析出力9)からプログラムをチューニングすること
ができる。なお、周期的な動作を行うプログラムでは、
割り込み間隔とプログラムの周期とが整数倍の関係にあ
ると、実行状態を正確に得ることができない場合がある
ため、このようなときには割り込み間隔を変えればよ
い。
【0011】図2は図1の並列処理システムの動作解析
装置における測定ライブラリの構成を示す図である。図
2に示されるように、測定ライブラリ4は、制御ルーチ
ン41および割り込み処理ルーチン(割り込みハンド
ラ)42から構成されている。制御ルーチン41は、初
期化(初期化機能),再初期化(再初期化機能),および,
終了処理(終了機能)を行うために使用される。また、
割り込みハンドラ42は、初期化時にOS(オペレーテ
ィング・システム)に登録され、タイマ割り込みが発生
する毎にOSによって呼び出されるようになっている。
【0012】図3は本発明の並列処理システムの動作解
析装置における実行プログラムの実行処理の一例を示す
フローチャートである。図3に示されるように、まず、
プログラムを実行すると、ステップS10において、フ
ォートラン(FORTRAN)の初期化を行い、続い
て、ステップS11で測定ライブラリの初期化(図4参
照)を行う。さらに、ステップS12において、ユーザ
プログラムの実行を開始し、ステップS13に進んで、
並列処理を開始する。そして、ステップS14に進ん
で、測定ライブラリの再初期化(図5参照)を行う。す
なわち、実行プログラム(例えば、FORTRANで作
成)は、FORTRANの初期化(ステップS10)の
中から、測定ライブラリの初期化(ステップS11)を
実行する。また、並列処理が開始(ステップS13)さ
れると、プログラムは、複数のプロセッサで作動を開始
するが、そのとき、親プロセッサ(最初から動いている
プロセッサ)以外のプロセッサ(子プロセッサ)では、
測定ライブラリの再初期化(ステップS14)を実行す
る。
【0013】さらに、ステップS15でユーザプログラ
ムを実行して、ステップS16に進み、並列処理を終了
する。また、ステップS17に進んで、ユーザプログラ
ムを実行し、ステップS18に進んで、測定ライブラリ
の終了処理(図6参照)を行う。そして、ステップS1
9において、FORTRANの終了処理を行った後、プ
ログラムが終了する。
【0014】図4は図3における測定ライブラリの初期
化処理(ステップS11)の一例を示すフローチャート
である。測定ライブラリの初期化処理を開始すると、ま
ず、ステップS111 において、測定が指定されているか
どうかが判別され、測定が指定されていなければそのま
ま処理を終了し、測定が指定されていればステップS11
2 に進む。ステップS112 では、割り込み処理ルーチン
を設定し、ステップS113 に進んで、割り込みタイマを
設定する。さらに、ステップS114 に進んで、情報ファ
イルのヘッダを出力する。すなわち、測定ライブラリの
初期化時には、割り込み処理ルーチンをOSに登録(ス
テップS112)し、インターバルタイマを起動(ステップ
S113)して一定間隔で割り込みが発生するようにし、さ
らに、情報ファイルの管理情報を出力(ステップS114)
する。
【0015】ここで、図4に示す測定ライブラリの初期
化処理は、複数のプロセッサ・エレメントの内、親プロ
セッサのみで行われる処理である。また、ステップS11
3 における割り込みタイマは、数msec.〜数sec.程度
(例えば、10msec.) のインターバルを持つように設
定される。図5は図3における測定ライブラリの再初期
化処理(ステップS14)の一例を示すフローチャート
である。
【0016】測定ライブラリの再初期化処理を開始する
と、まず、ステップS141 において、測定が指定されて
いるかどうかが判別され、測定が指定されていなければ
そのまま処理を終了し、測定が指定されていればステッ
プS142 に進む。ステップS142 において、バッファを
廃棄し、さらに、ステップS143 に進んで、割り込みタ
イマを設定する。すなわち、測定ライブラリの再初期化
時には、バッファリングされている出力情報を無効化
(ステップS142)し、さらに、インターバルタイマを起
動(ステップS143)する。
【0017】ここで、図5に示す測定ライブラリの再初
期化処理は、複数のプロセッサ・エレメントの内、子プ
ロセッサで行われる処理である。また、ステップS143
における割り込みタイマは、例えば、測定ライブラリの
初期化処理のステップS113と同様に、数msec.〜数se
c.程度(例えば、10msec.) のインターバルを持つよ
うに設定される。
【0018】図6は図3における測定ライブラリの終了
処理(ステップS18)の一例を示すフローチャートで
ある。測定ライブラリの終了処理を開始すると、まず、
ステップS181 において、測定が指定されているかどう
かが判別され、測定が指定されていなければそのまま処
理を終了し、測定が指定されていればステップS182 に
進む。ステップS182では、割り込みタイマを解除し、
ステップS183 に進んで、割り込み処理ルーチンを復元
する。さらに、ステップS184 に進んで、収集情報を出
力する。すなわち、測定ライブラリの終了時には、イン
ターバルタイマを停止(ステップS182)し、割り込み処
理ルーチンをもとに戻(ステップS183)し、さらに、バ
ッファリングされている出力情報を出力(ステップS18
4)する。
【0019】図7は本発明の並列処理システムの動作解
析装置における割り込み処理ルーチン(42)の一例を
示すフローチャートである。割り込み処理を開始する
と、まず、ステップS21において、実行中のアドレス
を取得し、ステップS22に進んで、アドレスが特殊処
理中かどうかが判別される。ステップS22において、
アドレスが特殊処理中であると判別されると、ステップ
S23を介してステップS24に進み、逆に、アドレス
が特殊処理中ではないと判別されると、ステップS24
に進む。ステップS23では、呼び出し関係の検索を行
い、また、ステップ24では、プロセス番号の取得を行
う。さらに、ステップS25において、並列実行状態の
取得を行い、ステップS26に進んで、収集情報を出力
する。
【0020】すなわち、割り込み処理ルーチンは、ま
ず、割り込んだアドレスを取得(ステップS21)し、
次に、そのアドレスが特殊な処理を必要とするルーチン
を実行中であるかどうかを判定(ステップS22)す
る。ここで、特殊な処理を必要とするルーチンとして
は、同期待ちを行うライブラリや非同期転送の転送待ち
を行うライブラリ等がある。これらのライブラリを実行
中であると判定した場合には、プログラムの呼び出しを
逆上り、それらのライブラリを呼び出しているソースプ
ログラムのアドレスを取得(ステップS23)する。
【0021】次に、プログラムが実行されているプロセ
ッサの番号を取得(ステップS24)し、さらに、並列
実行の状態を取得(ステップS25)する。ここで、並
列サンプラが対象としている並列処理システムでは、プ
ログラムの実行状態として、単一実行状態,リージョン
マスタ状態,リージョンスレーブ状態という3つの状態
がある。なお、単一実行状態・リージョンマスタ状態
(マスタ状態)・リージョンスレーブ状態(スレーブ状
態)は、図10〜図12を参照して後に詳述する。
【0022】そして、割り込みルーチンは、以上の情報
(収集情報)を出力(ステップS26)する。なお、効
率を向上させるために、出力はバッファに格納され、該
バッファが一杯になったときか,或いは,プログラムの
終了時に収集情報を出力するのが好ましい。図8は本発
明の並列処理システムの動作解析装置における解析ルー
チン(解析プログラム8)の一例を示すフローチャート
である。
【0023】解析処理を開始すると、まず、ステップS
31において、実行プログラムの解析を行い、ステップ
S32に進んで、割り込み情報統計表を作成する。次
に、ステップS33において、並列情報を作成し、さら
に、ステップS34に進んで、プロセッサ別情報統計表
を作成する。そして、ステップS35に進んで、上記各
情報を出力する。
【0024】すなわち、解析プログラムは、まず、実行
プログラムを解析(ステップS31)して、そこに含ま
れる各手続きの開始アドレスと終了アドレスを取得す
る。次に、各手続きに対して、単一実行状態・リージョ
ンマスタ状態・リージョンスレーブ状態のそれぞれにつ
いて、割り込みの起こった回数を数える(ステップS3
2)。さらに、それらの情報を元に、並列実行の状態を
示す指標値を各手続きおよびプログラム全体に対して計
算(ステップS33)する。なお、指標値としては、並
列化効果,並列化率,並列加速率,負荷バランス,およ
び,非同期転送待ち率等がある。そして、各プロセッサ
別に、各手続きに対して割り込みの起こった回数を数え
(ステップS34)、さらに、それらの各情報を出力
(ステップS35)する。
【0025】このように、本実施例によれば、並列処理
の実行情報を効率良く取得することができ、並列プログ
ラムの開発に役立たせることができる。図9は並列処理
システムの一例を概略的に示す図である。同図におい
て、参照符号20はプロセッサ・エレメント(PE),2
1はクロスバー・ネットワーク,22はコントロール・
プロセッサ(CP),23はRAMディスク或いは外部メ
モリと称されるシステム記憶装置(SSU),24はジェ
ネラル・システム・プロセッサ(GSP),そして, 25
はディスク装置を示している。各プロセッサ・エレメン
ト20は、データ転送装置(DTU)201, 主記憶装置20
2,スカラー演算装置(SU)203, および, ベクトル演算
装置(VU)204を備えている。また、スカラー演算装置
203 には、割り込み処理に使用するタイマ(インターバ
ルタイマ)231, および, 割り込み時の時刻を得るための
時計232 が設けられている。ここで、プログラムのコン
パイル(図1中のコンパイラ2)は、GSP24で行わ
れ、また、実際のプログラムの実行は各PE20におい
て行われる。
【0026】図10は図9に示す並列処理システムの動
作の一例を示す図であり、図11は図10に示す並列処
理システムの動作を説明するための図である。なお、図
10における符号“*”はバリア同期を示している。ま
ず、命令"PROCESSOR P(8) A" により、並列処理を実行
するプロセッサの台数を指定して、プログラムマスタ
(親プロセッサ)であるプロセッサPE0(識別番号1
のプロセッサ)にプログラム(処理)Aを実行させる。
ここで、並列プログラムは、複数(例えば、8つ)のプ
ロセッサ(プロセッサ・エレメントPE0〜PE7)を
使用して実行されるが、各プロセッサには『1』から指
定されたプロセッサ数(例えば、『8』)まで識別番号
が与えられている。また、識別番号『1』のプロセッサ
(PE0)をプログラムマスタと呼び、該プログラムマ
スタの開始が並列プログラムの開始であり、該プログラ
ムマスタの終了が並列プログラムの終了である。
【0027】次に、命令"PARALLEL REGION B"により、
プログラムBの並列処理が実行される。ここで、"PARAL
LEL REGION" の前では、プログラムマスタPE0は、単
一実行状態(逐次実行状態)でプログラムAを実行して
おり、また、"PARALLEL REGION" の後では、全てのプロ
セッサPE0〜PE7(親プロセッサPE0および子プ
ロセッサPE1〜PE7)が並列に(並列冗長実行状態
で)プログラムBを実行している。ここで、"PARALLEL
REGION" による並列処理の開始は、図3のフローチャー
トにおけるステップS13に対応している。従って、図
4に示す測定ライブラリの初期化処理は、プログラムマ
スタ(親プロセッサ)PE0だけで実行され、また、図
5に示す測定ライブラリの再初期化処理は、子プロセッ
サPE1〜PE7で実行される。
【0028】並列冗長実行処理は、同一のプログラムB
を複数のプロセッサで行うものであるが、これは1つの
プロセッサで処理した結果を他のプロセッサに転送する
よりも、冗長ではあっても複数のプロセッサで並列的に
処理し、その処理結果を各プロセッサでそのまま使用す
る方が短時間で行える場合等に利用される。なお、複数
のプロセッサが同じリージョンを実行しているとき、そ
のプロセッサの内の1台(PE0)をリージョンマスタ
プロセッサと呼び、リージョンマスタプロセッサ上で実
行されているプログラムをリージョンマスタ状態(マス
タ状態)と呼ぶ。このとき、他のプロセッサをリージョ
ンスレーブプロセッサと呼び、リージョンスレーブプロ
セッサ上で実行されているプログラムをリージョンスレ
ーブ状態(スレーブ状態)と呼ぶ。
【0029】さらに、命令"SPREAD REGION /P(1:2) C
REGION /P(3:8) D"により、プロセッサPE0および
PE1でプログラムCを実行し、同時に、プロセッサP
E2〜PE7でプログラムDを実行する。このとき、プ
ロセッサPE0で実行されているプログラムCおよびプ
ロセッサPE2で実行されているプログラムDはマスタ
状態(リージョンマスタ状態)であり、プロセッサPE
1で実行されているプログラムCおよびプロセッサPE
3〜PE7で実行されているプログラムDはスレーブ状
態(リージョンスレーブ状態)である。
【0030】そして、命令"END SPREAD E" により、全
てのプロセッサPE0〜PE7において、プログラムE
の並列処理(並列冗長処理)が実行される。さらに、命
令"SPREAD DO /(P) do 10 i = 1,n F"により、各プロ
セッサPE0〜PE7でそれぞれプログラムF1 〜F8
が実行される。このとき、プロセッサPE0〜PE7で
実行されるプログラムF1 〜F8 は、全てマスタ状態で
ある。
【0031】さらに、命令"END SPRED G"により、全て
のプロセッサPE0〜PE7で、プログラムGの並列処
理(並列冗長処理)が実行される。そして、命令"END P
ARALLEL H" により、並列処理が終了し、プログラムマ
スタPE0だけがプログラムHを実行する。ここで、"E
ND PARALLEL"は図3のフローチャートにおけるステップ
S16に対応している。従って、図6に示す測定ライブ
ラリの終了処理は、プログラムマスタ(親プロセッサ)
PE0だけで実行される。
【0032】図12は図11に示す親プロセッサおよび
子プロセッサの状態遷移を示す図であり、同図(a) は親
プロセッサPE0の状態遷移を示し、また、同図(b) は
子プロセッサPE1〜PE7の状態遷移を示している。
図12(a) および(b) において、同期待ち状態とは、例
えば、バリア同期を取ったときにプロセッサ側で発生す
る待ち状態であり、同時に実行しているリージョンの実
行時間にばらつきがある場合に多く発生する。ここで、
上記のリージョンの実行時間のばらつきを負荷バランス
と呼ぶ。また、転送待ち状態とは、例えば、複数のプロ
セッサが同一のグローバルデータにアクセスした場合等
に発生する待ち状態である。
【0033】ここで、本実施例の並列処理システムの動
作解析装置により得られる情報としては、並列処理ライ
ブラリから得られる情報(仮想プロセッサ番号, マスタ
/スレーブ状態, および,同一リージョンのプロセッサ
数)、フォートラン・オブジェクトから得られる情報
(プログラムの呼び出し関係)、ハードウェアから得ら
れる情報(ベクトル長)、OSから得られる情報(実行
中アドレス, 時刻)、割り込み時に取得する情報(同期
待ち状態, 転送状態, および,実行中ライブラリの呼び
出し元アドレス)、および、実行後の解析時に収拾する
情報(実行プログラムのアドレスと手続きの対応情報)
がある。ここで、プログラムの呼び出し関係とは、例え
ば、待ち状態のライブラリにぶつかった時、フォートラ
ンのサブルーチンから得られたオブジェクトまでを遡
り、そのアドレス(待ち状態の出発点となるアドレス)
を出力することを意味する。また、ベクトル長はベクト
ル演算装置(VU:204)から読み出し、実行中アドレス
および時刻は、スカラー演算装置(SU:203,時計:23
2)から読み出し、そして、他の情報は主記憶装置202 か
ら読み出すことになる。
【0034】図13は図9に示す並列処理システムの動
作の他の例を示す図であり、次のプログラムに従った動
作を示すものである。
【0035】
【数1】
【0036】上記のプログラムは、拡張されたフォート
ラン(FORTRAN)により記述されたものである。
なお、 "!XOCL" は、該拡張されたフォートランにおけ
る拡張命令を示し、通常のフォートランではプログラム
の実行とは関係の無い単なる注釈として処理される。図
13において、AパートおよびLパートはパラレルリー
ジョンの外にあり、また、Bパート,IパートおよびK
パートはパラレルリージョンであり、さらに、Cパート
およびEパートは同じリージョンである。また、Dパー
トは4個のリージョンから成り、Gパートは2個のリー
ジョンから成り、そして、Jパートは8個のリージョン
から成る。ここで、Aパートの待ち時間も含めた実行時
間を“A”で示し、他の英字も同様とし、また、Aパー
トの待ち時間を含めない実行時間を“a”で示し、D,
GおよびJを除く他の英字も同様とする。Di でDパー
トの分割されたそれぞれの待ち時間を含めた実行時間を
示し、di でDパートの分割されたそれぞれの待ち時間
を含めない実行時間を示し、DおよびJも同様とする。
従って、D=ΣDi となり、d=Σdi となる。
【0037】次に、本発明の並列処理システムの動作解
析装置により得られる解析結果としての並列化率,並列
加速率,負荷バランス,および,転送と演算の並列実行
について説明する。まず、並列化率を説明する。プログ
ラムの並列に実行する部分を増やすことを並列化と呼
び、プログラムがどれだけ並列化されているかを示す指
標として並列化率を次のように定義する。
【0038】P=Cp /Ca ここで、Pは並列化率, Ca はプログラムを逐次実行し
た場合の全コスト, そして, Cp は並列化できる部分コ
ストを示している。並列化とは、並列化率を上げること
であり、上式から明らかなように、並列化率を上げるた
めには、コストの大きい部分を並列化する必要がある。
並列化率Pは次の式で表される。
【0039】 P=(c+d+e+f+g+h+i)/(a+b+c+d+e+f+g+h+i+j+k+l) ところで、マルチプロセッサ・システムにおいては、冗
長実行という概念があり、並列性のない場合でも複数の
プロセッサが動作していることがある。そこで、マルチ
プロセッサ・システムにおける並列化率P’を次の式で
定義する。 P’=Cp'/Ca ここで、Cp'はパラレルリージョン内のコストを示して
いる。従って、マルチプロセッサ・システムにおける並
列化率P’は次の式で表される。
【0040】P’=(b+c+d+e+f+g+h+i+j+k)/(a+b+c+d
+e+f+g+h+i+j+k+l) なお、Bパート,IパートおよびKパートの実行時間は
少ないと考えられるため、マルチプロセッサ・システム
の並列化率P’は、並列化率Pの近似値となる。次に、
並列加速率を説明する。プログラムの並列化された部分
が何台のプロセッサで並列実行処理されるかは、性能向
上のための重要な問題であり、例えば、100台のプロ
セッサで実行する場合、並列化率がいくら高くても2台
のプロセッサしか有効に使えないのであれば、高々2倍
の性能しか得ることができない。そこで、並列度を測る
指標として並列加速率を考える。
【0041】プログラムの並列化された部分の実行時間
と同じ部分を逐次実行した時間との比率を並列加速率と
呼ぶ。並列処理のオーバーヘッドが無視でき、一定台数
のプロセッサが有効に計算を行っている場合には、その
台数が並列加速率になる。また、各時点で有効に計算を
行っているプロセッサの数が変化する場合には、プロセ
ッサ数の平均(積分)が並列加速率になる。ここで、並
列処理のオーバーヘッドが無視できる場合には、並列加
速率βは定義により次の式を満たす。
【0042】 1≦β≦N (ここで、Nはプロセッサ数を示す) マルチプロセッサ・システムでは、パラレルリージョン
内の部分について並列加速率を考え、該並列加速率β
は、次式により表される。 β=(B+C+D+E+F+G+H+I+J+K)/(B+MAX(X,Y)+I+MAX(Ji)+
K) ここで、X=C+MAX(Di)+E,Y=F+MAX
(Gi)+Hとする。
【0043】さらに、負荷バランスを説明する。並列処
理では、プロセッサにかかる負荷のバランスが実行性能
に影響する。並列処理の実行中は、データの整合性を保
つために適当なタイミングで同期を取る必要があり、コ
ンパイラは、特に指定されない限りリージョンの開始時
と終了時には同期を取るようになっている。開始時の同
期から終了時の同期まで各プロセッサの実行時間が等し
くない場合には、実行時間の短いプロセッサは他のプロ
セッサの終了を待つことになり、この待ち時間が少なけ
れば少ないほど、プログラムの実行性能は向上すること
になる。
【0044】ある同期の時点から次の同期の時点までの
時間をTとし、この間にN台のプロセッサが実行してい
る場合、負荷バランスの比率(負荷バランス率)γを次
のように定義する。 γ=ΣW/(N×T),0≦γ≦1 次に、転送と演算の並列実行を説明する。例えば、拡張
されたフォートランにおける "SPREAD MOVE"文や"OVERL
APFIX"文を転送文と呼ぶが、これらの転送文と"MOVE W
AIT"文を併用することで非同期に転送を行うことができ
る。ここで、非同期とは、転送の終了を待つことなく制
御がプログラムに戻って来ることを意味し、この機能を
利用して、転送文と"MOVE WAIT"文との間に計算を行う
ことで転送と演算を同時に行うことが可能となる。
【0045】転送量が一定であれば、転送文が実行され
てから完了するまでの時間はほぼ一定となり、従って、
転送文と"MOVE WAIT"文との間の計算時間が長くなれば
該"MOVE WAIT"文で待つ時間(転送待ち時間)は短くな
る。これを転送時間が演算により隠されたと呼ぶ。"MOV
E WAIT"文が実行された時点で転送が完了している場合
には、該"MOVE WAIT"文は直ちに終了し、プログラムの
次の部分が実行される。これを転送が演算によって完全
に隠された状態と呼ぶ。このように、転送を演算で隠す
ことは、マルチプロセッサ・システムで実行する並列プ
ログラムの性能向上に非常に有効である。
【0046】次に、並列化情報の計算方法および並列化
情報の意味付けを説明する。なお、以下の説明におい
て、Pは並列化率, βは並列加速率, γは負荷バランス
率, そして, Mは非同期転送率を示す。また、Cp はプ
ログラムの並列化できる部分のコスト, Cs は並列化で
きない部分コスト(Ca =Cp +Cs), Nはプロセッサ
数, Jはプログラムマスタ割り込み回数, Rはリージョ
ンマスタ割り込み回数,Aは全割り込み回数, Jw はプ
ログラムマスタ待ち状態割り込み回数, Rw はリージョ
ンマスタ待ち状態割り込み回数, そして, Rm はリージ
ョンマスタ転送待ち状態割り込み回数を示している。
【0047】まず、プログラムマスタ割り込み回数J
は、プログラムの実行にかかる時間を示しているので、
次の式(1) のようになる。 J=Cs +Cp /β …… (1) また、リージョンマスタ割り込み回数Rは、冗長部を除
いた実行全体にかかる時間の総和を示しているので、次
の式(2) のようになる。
【0048】R=Cs +Cp …… (2) さらに、全割り込み回数Aは、並列化された部分につい
て、プロセッサ数の時間を消費したと考えられるので、
次の式(3) のようになる。 A=Cs +(Cp /β)×N …… (3) そして、並列化率Pは、その定義から、次の式(4) のよ
うになる。
【0049】P=Cp /(Cs +Cp) …… (4) 従って、J, R, A, Nが既知である場合には、Cs,C
p,P, βに関する連立方程式であるから、解くことがで
き、上記式(1) 〜(4) により、並列化率Pおよび並列加
速率βは、 P=1−(N×J−A)/(R×(N−1)) β=((N−1)×(R−J))/(A−J)+1 となる。
【0050】また、負荷バランス率γは、リージョンマ
スタ待ち状態割り込み回数Rw とリージョンマスタ割り
込み回数Rとの比で表すと、 0 ≦ γ=Rw /R ≦ 1 となる。さらに、非同期転送率Mは、リージョンマスタ
転送待ち割り込み回数Rm とリージョンマスタ割り込み
回数Rとの比で表すと、 0 ≦ M=Rm /R ≦ 1 となる。
【0051】図14および図15は本発明の並列処理シ
ステムの動作解析装置により得られた出力の一例を示す
図である。本発明に係る並列処理システムの動作解析装
置による出力(解析出力)は、並列化情報(PARALLEL IN
FORMATION), 総合情報(SYNTHESIS INFORMATION),およ
び,プロセッサ情報(PROCESSOR INFORMATION) を含んで
いる。
【0052】図14に示されるように、並列化情報は、
並列化率(PARALLELIZATION RATIO:P),並列加速率(PARA
LLEL TO SERIAL SPEED RATIO:β),負荷バランス率(LOAD
BALANCE:γ),および,非同期転送率(ASYNCHRONOUS TRA
NSFER RATIO: M) の情報を有している。ここで、並列
化率Pは、その値が大きいほど並列化が進んでいること
を示し、並列加速率βは、その値が大きいほどプロセッ
サを有効に利用していることを示す。また、負荷バラン
ス率γは、その値が小さいほどバランスがとれているこ
とを示し、非同期転送率Mは、その値が小さいほど転送
が演算に比べて無視できることを示す。なお、図14に
おいては、プロセッサの数(NUMBER OF PROCESSOR),性能
情報(PERFORMANCE INFORMATION),および, 割り込みタイ
マの設定値(INTERVAL TIMER VALUE)等も出力されるよう
になっている。総合情報は、全プロセッサを総合した以
下の情報を関数毎にカウントとパーセントの2種類で表
示する。すなわち、総合情報は、図15に示されるよう
に、プログラムマスタでの割り込み回数(PM),プログ
ラムマスタでの待ち状態割り込み回数(PMW),プログ
ラムマスタでの転送待ち状態割り込み回数(PMMW),
リージョンマスタでの割り込み回数(RM),リージョン
マスタでの待ち状態割り込み回数(RMW),リージョン
マスタでの転送待ち状態割り込み回数(RMMW),全プ
ロセッサでの割り込み回数(ALL),全プロセッサでの
待ち状態割り込み回数(AW),および, 全プロセッサで
の転送待ち状態割り込み回数(AMW) をカウント値お
よびパーセント値で示すようになっている。ここで、プ
ロセッサ情報は、図15に示すマスタプロセッサの総合
情報に対応する情報が各プロセッサに対して出力された
ものである。
【0053】
【発明の効果】以上、詳述したように、本発明の並列処
理システムの動作解析装置によれば、マルチプロセッサ
・システムにおける並列処理の実行情報を効率良く取得
することができる。
【図面の簡単な説明】
【図1】本発明に係る並列処理システムの動作解析装置
の一実施例を模式的に示すブロック図である。
【図2】図1の並列処理システムの動作解析装置におけ
る測定ライブラリの構成を示す図である。
【図3】本発明の並列処理システムの動作解析装置にお
ける実行プログラムの実行処理の一例を示すフローチャ
ートである。
【図4】図3における測定ライブラリの初期化処理の一
例を示すフローチャートである。
【図5】図3における測定ライブラリの再初期化処理の
一例を示すフローチャートである。
【図6】図3における測定ライブラリの終了処理の一例
を示すフローチャートである。
【図7】本発明の並列処理システムの動作解析装置にお
ける割り込みルーチンの一例を示すフローチャートであ
る。
【図8】本発明の並列処理システムの動作解析装置にお
ける解析ルーチンの一例を示すフローチャートである。
【図9】並列処理システムの一例を概略的に示す図であ
る。
【図10】図9に示す並列処理システムの動作の一例を
示す図である。
【図11】図10に示す並列処理システムの動作を説明
するための図である。
【図12】図11に示す親プロセッサおよび子プロセッ
サの状態遷移を示す図である。
【図13】図9に示す並列処理システムの動作の他の例
を示す図である。
【図14】本発明の並列処理システムの動作解析装置に
より得られた出力の一例を示す図(その1)である。
【図15】本発明の並列処理システムの動作解析装置に
より得られた出力の一例を示す図(その2)である。
【符号の説明】
1…ソース 2…コンパイラ 3…オブジェクト 4…測定用ライブラリ 5…リンカ 6…実行プログラム 7…情報ファイル 8…解析プログラム 9…解析出力 20…プロセッサ・エレメント(PE) 21…クロスバー・ネットワーク 22…コントロール・プロセッサ(CP) 23…システム記憶装置(SSU:RAMディスク,外
部メモリ) 24…ジェネラル・システム・プロセッサ(GSP) 25…ディスク装置 41…制御ルーチン 42…割り込みルーチン 201…データ転送ユニット(DTU) 202…主記憶装置 203…スカラー演算ユニット(SU) 204…ベクトル演算ユニット(VU) 231…タイマ 232…時計
フロントページの続き (56)参考文献 特開 平5−2508(JP,A) 特開 平4−225439(JP,A) 特開 平5−189395(JP,A) 特開 平5−173994(JP,A) 特開 平5−81221(JP,A) Dongarraほか著,小国訳,コ ンピュータによる連立一次方程式の解法 −ベクトル計算機と並列計算機,丸善株 式会社,1993年1月30日,p.45−51 (58)調査した分野(Int.Cl.7,DB名) G06F 11/34 G06F 15/16

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 プログラムマスタ割り込みとリージョン
    マスタ割り込みを含む割り込み情報を有するプログラム
    実行時動作情報より求めた、プログラムマスタ割り込み
    回数と全割り込み回数とリージョンマスタ割り込み回数
    を記憶する記憶手段と、 並列処理システムにおけるオペレーティングシステムレ
    ベルの割り込みタイマ機能とプログラムマスタ割り込み
    とリージョンマスタ割り込みを含むプログラム実行時動
    作情報を取得する機能と前記並列処理システムで使用す
    るプロセッサ数を有する解析対象となる並列処理される
    プログラム中の前記割り込みタイマ機能による割り込み
    毎に前記プログラム実行時動作情報を取得する機能によ
    り前記プログラム実行時動作情報を取得し、取得したプ
    ログラム実行時動作情報より求めた、プログラムマスタ
    割り込み回数と全割り込み回数とリージョンマスタ割り
    込み回数を前記記憶手段に格納する手段と、 前記プログラムマスタ割り込み回数と前記全割り込み回
    数と前記リージョンマスタ割り込み回数と前記プロセッ
    サ数に基づいて前記並列処理されるプログラムの並列化
    率を算出する機能を有する解析プログラムに入力として
    前記並列処理されるプログラムと前記記憶手段に格納さ
    れた情報が与えられた場合、前記並列処理されるプログ
    ラムから前記プロセッサ数を取得し、取得したプロセッ
    サ数と前記プログラムマスタ割り込み回数を掛け合わせ
    て得た数値から前記全割り込み回数を引いて得た数値
    を、前記リージョンマスタ割り込み回数と前記プロセッ
    サの数から1を引いて得た数値を掛け合わせて得た数値
    で割って得た数値を1から引いて並列化率を算出する手
    段と、 を備えたことを特徴とする並列処理システムの動作解析
    装置。
  2. 【請求項2】 プログラムマスタ割り込みとリージョン
    マスタ割り込みを含む割り込み情報を有するプログラム
    実行時動作情報より求めた、プログラムマスタ割り込み
    回数と全割り込み回数とリージョンマスタ割り込み回数
    を記憶する記憶手段と、 並列処理システムにおけるオペレーティングシステムレ
    ベルの割り込みタイマ機能とプログラムマスタ割り込み
    とリージョンマスタ割り込みを含むプログラム実行時動
    作情報を取得する機能と前記並列処理システムで使用す
    るプロセッサ数を有する解析対象となる並列処理される
    プログラム中の前記割り込みタイマ機能による割り込み
    毎に前記プログラム実行時動作情報を取得する機能によ
    り前記プログラム実行時動作情報を取得し、取得したプ
    ログラム実行時動作情報より求めた、プログラムマスタ
    割り込み回数と全割り込み回数とリージョンマスタ割り
    込み回数を前記記憶手段に格納する手段と、 前記プログラムマスタ割り込み回数と前記全割り込み回
    数と前記リージョンマスタ割り込み回数と前記プロセッ
    サ数に基づいて前記並列処理されるプログラムの並列加
    速率を算出する機能を有する解析プログラムに入力とし
    て前記並列処理されるプログラムと前記記憶手段に格納
    された情報が与えられ場合、前記並列処理されるプログ
    ラムから前記プロセッサ数を取得し、取得したプロセッ
    サ数から1を引いて得た数値と前記リージョンマスタ割
    り込み回数から前記プログラムマスタの割り込み回数を
    引いて得た数値を掛け合わせて得た数値を、前記全割り
    込み回数から前記プログラムマスタ割り込み回数を引い
    て得た数値で割って得た数値に、1を足して並列加速率
    を算出する手段と、 を備えたことを特徴とする並列処理システムの動作解析
    装置。
JP30020593A 1993-11-30 1993-11-30 並列処理システムの動作解析装置 Expired - Fee Related JP3480973B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP30020593A JP3480973B2 (ja) 1993-11-30 1993-11-30 並列処理システムの動作解析装置
US09/004,505 US6308316B1 (en) 1993-11-30 1998-01-08 Apparatus for analyzing operations of parallel processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30020593A JP3480973B2 (ja) 1993-11-30 1993-11-30 並列処理システムの動作解析装置

Publications (2)

Publication Number Publication Date
JPH07152614A JPH07152614A (ja) 1995-06-16
JP3480973B2 true JP3480973B2 (ja) 2003-12-22

Family

ID=17881994

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30020593A Expired - Fee Related JP3480973B2 (ja) 1993-11-30 1993-11-30 並列処理システムの動作解析装置

Country Status (2)

Country Link
US (1) US6308316B1 (ja)
JP (1) JP3480973B2 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9825102D0 (en) * 1998-11-16 1999-01-13 Insignia Solutions Plc Computer system
US7392431B2 (en) * 1999-02-19 2008-06-24 Texas Instruments Incorporated Emulation system with peripherals recording emulation frame when stop generated
US6813760B1 (en) * 2000-11-30 2004-11-02 Nortel Networks Limited Method and a tool for estimating probability of data contention in a multi-processor shared-memory system
JP2003050721A (ja) * 2001-08-08 2003-02-21 Fujitsu Ltd 並列効率計算方法及び装置
US7007268B2 (en) * 2001-08-20 2006-02-28 Sun Microsystems, Inc. Method and apparatus for debugging in a massively parallel processing environment
US7146064B2 (en) * 2001-12-21 2006-12-05 Gsi Group Corporation System and method for producing optical circuits
US6957325B1 (en) 2002-07-01 2005-10-18 Mindspeed Technologies, Inc. System and method for detecting program hazards in processors with unprotected pipelines
JP2004054680A (ja) * 2002-07-22 2004-02-19 Fujitsu Ltd 並列効率計算方法
US7577816B2 (en) * 2003-08-18 2009-08-18 Cray Inc. Remote translation mechanism for a multinode system
US8307194B1 (en) 2003-08-18 2012-11-06 Cray Inc. Relaxed memory consistency model
US7334110B1 (en) 2003-08-18 2008-02-19 Cray Inc. Decoupled scalar/vector computer architecture system and method
US7421565B1 (en) * 2003-08-18 2008-09-02 Cray Inc. Method and apparatus for indirectly addressed vector load-add -store across multi-processors
US7743223B2 (en) * 2003-08-18 2010-06-22 Cray Inc. Decoupling of write address from its associated write data in a store to a shared memory in a multiprocessor system
US7366873B1 (en) 2003-08-18 2008-04-29 Cray, Inc. Indirectly addressed vector load-operate-store method and apparatus
US7437521B1 (en) 2003-08-18 2008-10-14 Cray Inc. Multistream processing memory-and barrier-synchronization method and apparatus
US7735088B1 (en) 2003-08-18 2010-06-08 Cray Inc. Scheduling synchronization of programs running as streams on multiple processors
US7543133B1 (en) 2003-08-18 2009-06-02 Cray Inc. Latency tolerant distributed shared memory multiprocessor computer
US7519771B1 (en) 2003-08-18 2009-04-14 Cray Inc. System and method for processing memory instructions using a forced order queue
US7503048B1 (en) 2003-08-18 2009-03-10 Cray Incorporated Scheduling synchronization of programs running as streams on multiple processors
US7478769B1 (en) 2005-03-09 2009-01-20 Cray Inc. Method and apparatus for cooling electronic components
JP4856983B2 (ja) * 2006-03-02 2012-01-18 株式会社日立製作所 ストレージシステム及びスケジューリング方法
US8108844B2 (en) * 2006-06-20 2012-01-31 Google Inc. Systems and methods for dynamically choosing a processing element for a compute kernel
JP2008077428A (ja) * 2006-09-21 2008-04-03 Fujitsu Ltd 負荷分散装置、負荷分散方法及び負荷分散プログラム
JP4940996B2 (ja) * 2007-02-23 2012-05-30 富士通セミコンダクター株式会社 プロファイリング装置およびプロファイリングプログラム
US8065681B2 (en) * 2007-10-12 2011-11-22 International Business Machines Corporation Generic shared memory barrier
JP5589204B2 (ja) * 2010-12-24 2014-09-17 株式会社日立製作所 性能分析方法、計算機システム及び性能分析プログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5977565A (ja) 1982-10-26 1984-05-04 Nec Corp 情報処理装置
JPS6116324A (ja) 1984-07-03 1986-01-24 Mitsubishi Electric Corp 非同期デ−タ転送方式
JPH0760169B2 (ja) 1984-11-02 1995-06-28 三洋電機株式会社 論理回路のシミュレーション方法及びシミュレータ
US4872121A (en) 1987-08-07 1989-10-03 Harris Corporation Method and apparatus for monitoring electronic apparatus activity
JPH02128243A (ja) 1988-11-09 1990-05-16 Agency Of Ind Science & Technol 並列計算機のcpuヒストリ回路
US5361352A (en) * 1989-11-27 1994-11-01 Hitachi, Ltd. Method for debugging in a parallel computer system and system for the same
JPH03184138A (ja) 1989-12-13 1991-08-12 Hitachi Ltd モニタリング方法
JP3014122B2 (ja) * 1990-06-20 2000-02-28 ミサワホーム株式会社 ユニット住宅の基礎部分の換気構造
JPH0462644A (ja) 1990-06-30 1992-02-27 Agency Of Ind Science & Technol 並列計算機における稼働率の測定方式
US5245638A (en) * 1990-10-29 1993-09-14 Iowa State University Research Foundation, Inc. Method and system for benchmarking computers
US5442772A (en) 1991-03-29 1995-08-15 International Business Machines Corporation Common breakpoint in virtual time logic simulation for parallel processors
JPH052508A (ja) 1991-06-21 1993-01-08 Fujitsu Ltd プログラム動作解析装置
JPH056344A (ja) 1991-06-28 1993-01-14 Fujitsu Ltd プログラム走行情報採取処理方式
JP2622219B2 (ja) 1991-12-26 1997-06-18 富士通株式会社 並列計算機の性能評価方法及びその装置
JP3256567B2 (ja) 1992-02-10 2002-02-12 富士通株式会社 Atm網におけるコネクションレスメッセージ課金システム
US5483468A (en) 1992-10-23 1996-01-09 International Business Machines Corporation System and method for concurrent recording and displaying of system performance data
US6185223B1 (en) 1996-12-04 2001-02-06 Conexant Systems, Inc. Apparatus and method for providing fire wall protection for systems in communication with an a synchronous transfer mode system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Dongarraほか著,小国訳,コンピュータによる連立一次方程式の解法−ベクトル計算機と並列計算機,丸善株式会社,1993年1月30日,p.45−51

Also Published As

Publication number Publication date
US6308316B1 (en) 2001-10-23
JPH07152614A (ja) 1995-06-16

Similar Documents

Publication Publication Date Title
JP3480973B2 (ja) 並列処理システムの動作解析装置
Covington et al. The Rice parallel processing testbed
JPH01108638A (ja) 並列化コンパイル方式
US8387034B2 (en) System and method for the distribution of a program among cooperating processing elements
US8387033B2 (en) System and method for the distribution of a program among cooperating processing elements
Kang et al. TQSIM: A fast cycle-approximate processor simulator based on QEMU
WO2022118079A1 (en) Methods, computer programs and devices for detecting potential race conditions
Cedersjö et al. Software code generation for dynamic dataflow programs
Certner et al. A practical approach for reconciling high and predictable performance in non-regular parallel programs
Kazi et al. Coarse-grained thread pipelining: A speculative parallel execution model for shared-memory multiprocessors
Armstrong et al. ExM: High level dataflow programming for extreme-scale systems
JP2663893B2 (ja) アーキテクチャ・シミュレータ
Skaletsky et al. Flexible binary instrumentation framework to profile code running on Intel GPUs
Broberg et al. Performance optimization using extended critical path analysis in multithreaded programs on multiprocessors
JPH02176938A (ja) 機械語命令最適化方式
Despain et al. Aquarius
JP2754495B2 (ja) ログ/サンプリングデータの解析方法
Badr New tools for evaluating parallel and heterogeneous architectures
Rahozin Models of concurrent program running in resource constrained environment
Mason et al. Lampview: A loop-aware toolset for facilitating parallelization
Reumont-Locke et al. Efficient methods for trace analysis parallelization
Roth et al. Speculative data-driven sequencing for imperative programs
Fleury et al. Methodology and tools for system analysis of parallel pipelines
Younis et al. Applying Compiler Optimization in Distributed Real-Time Systems,"
Kempf et al. Simulation of scientific programs on parallel architectures

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010410

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071010

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081010

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees