JP2728601B2 - 並列処理の性能評価装置 - Google Patents

並列処理の性能評価装置

Info

Publication number
JP2728601B2
JP2728601B2 JP4210035A JP21003592A JP2728601B2 JP 2728601 B2 JP2728601 B2 JP 2728601B2 JP 4210035 A JP4210035 A JP 4210035A JP 21003592 A JP21003592 A JP 21003592A JP 2728601 B2 JP2728601 B2 JP 2728601B2
Authority
JP
Japan
Prior art keywords
overhead
processing
time
processors
performance evaluation
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
JP4210035A
Other languages
English (en)
Other versions
JPH0659944A (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 JP4210035A priority Critical patent/JP2728601B2/ja
Publication of JPH0659944A publication Critical patent/JPH0659944A/ja
Application granted granted Critical
Publication of JP2728601B2 publication Critical patent/JP2728601B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は,並列計算機において,
通信・同期の処理のオーバヘッドとプロセッサのアイド
ル状態によるオーバヘッドとを区別して求める並列処理
の性能評価装置に関する。
【0002】並列計算機を制御するプログラムや並列計
算機上で並列処理を行うアプリケーションプログラムの
実行性能を向上させるためには,詳細なオーバヘッドに
関する情報が必要になる。
【0003】
【従来の技術】いわゆるSPMD(single program mul
tiple data stream)型や,MIMD(multiple instruc
tion stream multiple data stream) 型というような各
種の並列計算機が,プログラムの高速処理のために使用
されている。この種の並列計算機では,プログラムまた
はデータを各プロセッサに配分し,同時に多数のプロセ
ッサでデータを並列処理することにより,処理の高速化
を実現している。各プロセッサ間の処理の連携のため
に,通常,メッセージ通信が行われる。
【0004】このような並列計算機において,アプリケ
ーションプログラムを動作させる場合,できるだけプロ
セッサのアイドル状態を少なくし,処理の並列性を高め
る必要がある。そのため,アプリケーションプログラム
を改善する場合には,どの部分がオーバヘッドになって
いるかについての性能評価データが必要になる。
【0005】従来の性能評価方式として,実行と並列処
理のオーバヘッドの割合を調べるもの,各プロセッサの
稼動率を求めるもの,実行最大遅延パスを求めるものな
どが考えられていた。
【0006】しかし,従来の性能評価方式によるオーバ
ヘッドの算出は,各プロセッサにおける処理全体のオー
バヘッドを求めるものであり,従来,メッセージ通信や
同期のための処理のオーバヘッドと,メッセージ受信待
ちや同期待ちによるアイドル状態のオーバヘッドとを区
別して求めるようにしたものはなかった。
【0007】
【発明が解決しようとする課題】並列処理におけるオー
バヘッドは,処理要求のメッセージ受信待ちや同期待ち
のアイドル状態によるオーバヘッドと,メッセージ通信
と同期の処理のオーバヘッドの2種類に分けることがで
きる。
【0008】アプリケーションプログラムの実行性能を
向上させるためには,これらのオーバヘッドを削減する
必要があり,どのようなオーバヘッドがあるかを知る必
要がある。例えば,アイドル状態によるオーバヘッドが
大きい場合には,各プロセッサへの処理またはデータの
分配をもっと効率よく行うように,アプリケーションプ
ログラムのアルゴリズムを改善することが必要になる。
また,メッセージ通信と同期の処理のオーバヘッドが大
きい場合には,通信や同期の処理に関する制御用プログ
ラムの改良またはアプリケーションプログラムによる通
信要求の削減などの改良を図ることが必要になる。
【0009】従来方式では,並列計算機において,プロ
セッサのアイドル状態によるオーバヘッドと,通信・同
期処理のオーバヘッドとを区別して求めていなかったた
め,アプリケーションプログラム等を改善するための十
分に有効な資料を得ることができないという問題があっ
た。
【0010】本発明は上記問題点の解決を図り,並列計
算機における処理の並列性を高めるための,アプリケー
ションプログラム等の改善に役立つ有効な性能評価デー
タを取得する手段を提供することを目的としている。
【0011】
【課題を解決するための手段】図1は本発明の原理説明
図である。図1において,10−1〜10−nは並列計
算機を構成するプロセッサ,11−1〜11−nは各プ
ロセッサで動作するアプリケーションプログラム,12
−1〜12−nは各プロセッサにおいて発生したイベン
トに関する情報を収集するトレースデータ収集部,13
−1〜13−nは収集したトレースデータを格納するト
レースデータ格納メモリ,14はトレースデータを解析
する解析プロセッサ,15はトレースデータをもとにオ
ーバヘッドを算出するオーバヘッド解析部,16はオー
バヘッドの解析結果を出力する性能評価データ出力部,
17はディスプレイ等の出力装置を表す。
【0012】プロセッサ10−1〜10−nは,メッセ
ージ通信により並列処理を行う処理装置であり,例えば
SPMD型などの並列計算機を構成する装置である。ト
レースデータ収集部12−1〜12−nは,少なくとも
メッセージ送信開始,メッセージ送信終了,メッセージ
受信開始,メッセージ受信終了,アイドル状態の開始,
アイドル状態の終了のイベントを含むイベントの種類と
発生時刻とに関する情報を収集し,各々トレースデータ
格納メモリ13−1〜13−nに格納する処理手段であ
る。
【0013】解析プロセッサ14は,トレースデータを
解析する処理装置であり,オーバヘッド解析部15,性
能評価データ出力部16を持つ。この解析プロセッサ1
4は,並列計算機を構成するプロセッサ10−1〜10
−nの1つまたは複数が担当してもよい。
【0014】オーバヘッド解析部15は,収集したトレ
ースデータに基づいて,少なくともメッセージ送信開始
からメッセージ送信終了までの時間とメッセージ受信開
始から受信待ちおよびメッセージ受信から受信終了まで
の時間とを含む通信・同期の処理のオーバヘッド,およ
びアイドル状態の開始から終了までの時間を含むプロセ
ッサのアイドル状態によるオーバヘッドを算出する処理
手段である。
【0015】性能評価データ出力部16は,オーバヘッ
ド解析部15によるオーバヘッドの解析結果を,通信・
同期の処理のオーバヘッドとプロセッサのアイドル状態
によるオーバヘッドとを区別した態様で出力装置17に
出力する処理手段である。
【0016】性能評価データ出力部16は,例えば図1
に示すように,各単位時間ごとに,(a) アイドル状態の
プロセッサ台数と,(b) 通信・同期の処理に関与してい
るプロセッサ台数と,(c) その他の稼動しているプロセ
ッサ台数とを,横軸に時間,縦軸にプロセッサ台数をと
ったグラフにより表し,それを出力する。
【0017】
【作用】本発明によれば,並列処理におけるオーバヘッ
ドについて,プロセッサのアイドル状態によるオーバヘ
ッドと,通信・同期の処理によるオーバヘッドの2種類
のオーバヘッドが,別に算出され求められる。請求項2
記載の発明の場合,特に,これらのオーバヘッドと時間
との関係がグラフ化されて出力されるので,アプリケー
ションプログラムのアルゴリズム等に係るオーバヘッド
の原因追求が可能になる。
【0018】
【実施例】図2は,本発明の実施例に係るシステム構成
例を示す。図2において,図1と同符号のものは図1に
示すものに対応し,20は各プロセッサにクロック信号
を供給するクロック生成部,21は各プロセッサを相互
に接続する相互結合網,22は並列計算機を制御するプ
ロセッサである制御装置を表す。
【0019】図2の(イ)に示すシステムの場合,トレ
ースデータを各プロセッサ10−1〜10−nが各々採
取し,制御装置22は,各プロセッサが採取したトレー
スデータを,相互結合網21を介して収集する。さら
に,制御装置22は,収集したトレースデータをもとに
オーバヘッドを解析し,出力装置17に解析結果を出力
する。
【0020】図2の(イ)に示すシステムが,逐次処理
的にオーバヘッドを解析するのに対し,図2の(ロ)に
示すシステムでは,オーバヘッドの解析を,各プロセッ
サ10−1〜10−nが自プロセッサ分について並列処
理で行い,制御装置22がその結果を収集して,出力装
置17に出力する。
【0021】図1に示すトレースデータ収集部12−1
〜12−nが収集するトレースデータは,以下のような
イベントに関する情報である。イベントの種類とその発
生時刻の情報がイベントごとに蓄積される。
【0022】 (1) アプリケーションプログラムの実行開始 アプリケーションプログラムの実行時のオプションとし
て,トレースデータを収集するかしないかを指定するこ
とができ,ユーザの指定により,トレースデータ収集が
選択されたならば,この実行開始イベント以降のトレー
スデータが採取される。
【0023】 (2) アプリケーションプログラムの実行終了 この実行終了イベントにより,トレースデータの採取を
終了する。 (3) メッセージ送信開始 アプリケーションプログラムが他のプロセッサへメッセ
ージを送信する場合,ライブラリとして提供されるメッ
セージ送信の関数を使用する。その関数呼び出しによっ
て発生するイベントである。
【0024】(4) メッセージ送信終了 メッセージ送信関数からの復帰時に発生するイベントで
ある。 (5) メッセージ受信開始 アプリケーションプログラムが他のプロセッサからメッ
セージを受信する場合,メッセージ受信の関数を使用す
る。その関数呼び出しによって発生するイベントであ
る。
【0025】(6) メッセージ受信待ち メッセージ受信関数によって,他のプロセッサからのメ
ッセージの到着を待つ状態に入るときに発生するイベン
トである。
【0026】(7) メッセージ受信 メッセージ受信待ちの状態で,他のプロセッサから実際
にメッセージが送られてきたときに発生するイベントで
ある。
【0027】(8) メッセージ受信終了 他のプロセッサから送られてきたメッセージの受信が終
了したときに発生するイベントである。
【0028】(9) バリア同期開始 バリア同期とは,各プロセッサの同期要求により,並列
計算機を構成する全プロセッサが同期をとる場合に用い
られる同期処理である。アプリケーションプログラムが
バリア同期を要求する関数を発行すると,バリア同期開
始のイベントが発生する。
【0029】(10)バリア同期要求 バリア同期を要求する関数の処理が終了し,バリア同期
の成立を待つ状態になったときに発生するイベントであ
る。
【0030】(11)バリア同期成立 すべてのプロセッサがバリア同期を要求する関数を発行
し,バリア同期が成立したときに発生するイベントであ
る。
【0031】(12)バリア同期終了 バリア同期成立の処理によって,各プロセッサが稼動で
きる状態になったときに発生するイベントである。
【0032】(13)割り込み処理開始 プロセッサに対して何らかの割り込みが発生したときに
発生するイベントである。
【0033】(14)割り込み処理終了 割り込みの処理が終了して,割り込み処理から抜け出す
ときに発生するイベントである。
【0034】(15)アイドルタスク実行開始 アプリケーションプログラムの動作が停止または中断
し,アイドルタスクが走行するときに発生するイベント
である。
【0035】(16)アイドルタスク実行終了 アプリケーションプログラムが再走行するときに発生す
るイベントである。以上のようなイベントに関する種類
と時刻の情報により,次のようにオーバヘッドを解析す
る。
【0036】図3は,そのオーバヘッド解析説明図であ
る。図3の(イ)に示すように,メッセージ受信開始時
刻T1からメッセージ受信待ち時刻T2までの時間は,
通信・同期の処理によるオーバヘッドである。メッセー
ジ受信待ち時刻T2からメッセージ受信時刻T3までの
時間は,プロセッサのアイドル状態によるオーバヘッド
である。メッセージ受信時刻T3からメッセージ受信終
了時刻T4までの時間は,通信・同期の処理によるオー
バヘッドである。
【0037】また,図3の(ロ)に示すように,メッセ
ージ送信開始時刻T11からメッセージ送信終了時刻T
12までの時間は,通信・同期の処理によるオーバヘッ
ドである。
【0038】また,図3の(ハ)に示すように,バリア
同期開始時刻T21からバリア同期要求時刻T22まで
の時間は,通信・同期の処理によるオーバヘッドであ
り,バリア同期要求時刻T22からバリア同期成立時刻
T23までの時間は,プロセッサのアイドル状態による
オーバヘッドであり,バリア同期成立時刻T23からバ
リア同期終了時刻T24までの時間は,通信・同期の処
理によるオーバヘッドである。
【0039】また,図3の(ニ)に示すように,アイド
ルタスク実行開始時刻T31からアイドルタスク実行終
了時刻T32までの時間は,プロセッサのアイドル状態
によるオーバヘッドである。
【0040】また,図3の(ホ)に示すように,割り込
み処理開始時刻T41から割り込み処理終了時刻T42
までの時間は,通信・同期の処理によるオーバヘッドで
ある。
【0041】本発明では,蓄積したイベントの情報を解
析することにより,以上のようなオーバヘッドの時間お
よび各時間におけるオーバヘッド状態にあるプロセッサ
台数などを算出する。
【0042】図4は,本発明の実施例に係るオーバヘッ
ド解析処理フローを示す。図4に示す処理は,図2の
(イ)に示す逐次処理型では,全プロセッサのイベント
についてまとめて実行し,図2の(ロ)に示す並列処理
型では,各プロセッサごとに実行する。
【0043】(a) 収集したトレースデータを調べ,イベ
ント情報を順次取り出す。取り出すイベント情報がなく
なったならば,処理を終了する。 (b) イベントがメッセージ送信開始である場合,対応す
るメッセージ送信終了のイベントを探し,メッセージ送
信終了までの時間を求める。
【0044】(c) イベントがメッセージ受信開始である
場合,対応するメッセージ受信終了のイベントを探し,
メッセージ受信終了までの時間を求める。 (d) イベントがバリア同期開始である場合,対応するバ
リア同期終了のイベントを探し,バリア同期終了までの
時間を求める。
【0045】(e) イベントが割り込み処理開始である場
合,対応する割り込み処理終了のイベントを探し,割り
込み処理終了までの時間を求める。 (f) イベントがメッセージ受信待ちである場合,対応す
るメッセージ受信のイベントを探し,メッセージ受信ま
での時間を求める。
【0046】(g) イベントがアイドルタスク実行開始で
ある場合,対応するアイドルタスク実行終了のイベント
を探し,アイドルタスク実行終了までの時間を求める。 (h) イベントがバリア同期要求である場合,対応するバ
リア同期成立のイベントを探し,バリア同期成立までの
時間を求める。
【0047】以上のようにして求めた各時間の情報を,
その開始時刻とオーバヘッドの種類に関する情報ととも
にレコード化して出力する。アイドル状態と通信・同期
の処理を含めた処理全体のオーバヘッドは,上記(b) ,
(c) ,(d) ,(e) ,(g) を合わせた時間である。
【0048】プロセッサのアイドル状態によるオーバヘ
ッドは,上記(f) ,(g) ,(h) を合わせた時間である。
処理全体のオーバヘッドから,プロセッサのアイドル状
態によるオーバヘッドを差し引くことにより,通信・同
期の処理のオーバヘッドを求めることができる。
【0049】図5は,本発明の実施例に係る性能評価デ
ータ出力処理フローを示す。 (a) 実行開始時刻から実行終了時刻までを所定の単位時
間または指定された単位時間で分割し,その単位時間ご
とに以下の処理を行う。
【0050】(b) 実行終了時刻になったならば,処理
(f) へ移る。 (c) オーバヘッド解析部15の出力レコードに基づき,
その単位時間における処理全体のオーバヘッドとなって
いるプロセッサ台数を求める。
【0051】(d) また,その単位時間におけるプロセッ
サのアイドル状態によるオーバヘッドに係るプロセッサ
台数を求める。 (e) 処理(c) で求めた台数から処理(d) で求めた台数を
減算することにより,通信・同期の処理によるオーバヘ
ッドに係るプロセッサ台数を求める。その後,処理(a)
へ戻り,単位時間を進めて同様に処理を繰り返す。
【0052】(f) 実行終了時刻になったならば,求めた
台数に従って,図5の(ロ)に示す表示例のような,プ
ロセッサのアイドル状態によるオーバヘッドに係るプロ
セッサの台数と,通信・同期の処理のオーバヘッドに係
るプロセッサの台数と,稼動しているプロセッサの台数
とを示すグラフを編集する。
【0053】(g) 編集したグラフをディスプレイに表示
する。 なお,以上のような性能評価データの出力は一例であ
り,もちろん他の形式により性能評価データを出力する
ことも可能である。例えばグラフに合わせて,プロセッ
サの稼動率を数値で出力してもよい。
【0054】
【発明の効果】以上説明したように,本発明によれば,
オーバヘッドに関する情報が,プロセッサのアイドル状
態によるものと,通信・同期の処理によるものとに分け
て出力されるので,並列処理の性能向上を妨げている原
因を容易に追求することができるようになり,アプリケ
ーションプログラムのアルゴリズム等を改善して高速化
を図ることができるようになる。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】本発明の実施例に係るシステム構成例を示す図
である。
【図3】本発明の実施例に係るオーバヘッド解析説明図
である。
【図4】本発明の実施例によるオーバヘッド解析処理フ
ローを示す図である。
【図5】本発明の実施例による性能評価データ出力処理
フローを示す図である。
【符号の説明】
10−1〜10−n プロセッサ 11−1〜11−n アプリケーションプログラム 12−1〜12−n トレースデータ収集部 13−1〜13−n トレースデータ格納メモリ 14 解析プロセッサ 15 オーバヘッド解析部 16 性能評価データ出力部 17 出力装置

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のプロセッサ(10)を備え,プロセッ
    サ間のメッセージ通信により並列処理を行う並列計算機
    において,少なくともメッセージ送信開始,メッセージ
    送信終了,メッセージ受信開始,メッセージ受信終了,
    アイドル状態の開始,アイドル状態の終了のイベントを
    含むイベントの種類と発生時刻とに関する情報を収集す
    るトレースデータ収集部(12)と,収集したトレースデー
    タに基づいて,少なくともメッセージ送信のための処理
    の時間およびメッセージ受信のための処理の時間を含む
    通信・同期の処理のオーバヘッド,およびアイドル状態
    の開始から終了までの時間を含むプロセッサのアイドル
    状態によるオーバヘッドを算出するオーバヘッド解析部
    (15)と,オーバヘッドの解析結果を,通信・同期の処理
    のオーバヘッドとプロセッサのアイドル状態によるオー
    バヘッドとを区別した態様で出力する性能評価データ出
    力部(16)とを備えたことを特徴とする並列処理の性能評
    価装置。
  2. 【請求項2】 請求項1記載の並列処理の性能評価装置
    において,前記性能評価データ出力部(16)は,各単位時
    間ごとに,通信・同期の処理に関与しているプロセッサ
    台数と,アイドル状態にあるプロセッサ台数と,その他
    の稼動しているプロセッサ台数とを示すグラフを編集し
    出力するように構成されていることを特徴とする並列処
    理の性能評価装置。
JP4210035A 1992-08-06 1992-08-06 並列処理の性能評価装置 Expired - Fee Related JP2728601B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4210035A JP2728601B2 (ja) 1992-08-06 1992-08-06 並列処理の性能評価装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4210035A JP2728601B2 (ja) 1992-08-06 1992-08-06 並列処理の性能評価装置

Publications (2)

Publication Number Publication Date
JPH0659944A JPH0659944A (ja) 1994-03-04
JP2728601B2 true JP2728601B2 (ja) 1998-03-18

Family

ID=16582733

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4210035A Expired - Fee Related JP2728601B2 (ja) 1992-08-06 1992-08-06 並列処理の性能評価装置

Country Status (1)

Country Link
JP (1) JP2728601B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008114323A1 (ja) * 2007-03-20 2008-09-25 Fujitsu Microelectronics Limited プロセッサ・システム最適化支援装置、および支援方法
JP5245620B2 (ja) * 2008-07-31 2013-07-24 富士通株式会社 コンピュータシステム
JP5453825B2 (ja) * 2009-02-05 2014-03-26 日本電気株式会社 プログラム並列実行システム、マルチコアプロセッサ上のプログラム並列実行方法
JP6131829B2 (ja) * 2013-10-31 2017-05-24 富士通株式会社 情報処理装置、情報処理装置の解析方法および情報処理装置の解析プログラム

Also Published As

Publication number Publication date
JPH0659944A (ja) 1994-03-04

Similar Documents

Publication Publication Date Title
US7836062B2 (en) Performance monitoring method in a distributed processing system
JP4654707B2 (ja) ボトルネック検出システム、測定対象サーバ、ボトルネック検出方法およびプログラム
US7873594B2 (en) System analysis program, system analysis method, and system analysis apparatus
JP5035068B2 (ja) サービス処理状況分析プログラム、サービス処理状況分析装置、およびサービス処理状況分析方法
JPH0844680A (ja) 並列計算機システムにおけるモニタデータ収集方法
US20070050425A1 (en) Log management program of a computer, log management method thereof, and computer system
Potier New users' introduction to QNAP 2
Wismüller et al. OCM—a monitoring system for interoperable tools
US20160246656A1 (en) Event management method and distributed system
JP2728601B2 (ja) 並列処理の性能評価装置
US20100153571A1 (en) Recording medium storing transaction model generation support program, transaction model generation support computer, and transaction model generation support method
Nakao et al. Network shared memory framework for the belle data acquisition control system
JPH0683608A (ja) プログラム解析支援装置
Waheed et al. A structured approach to instrumentation system development and evaluation
Tudruj et al. Graphical design of parallel programs with control based on global application states using an extended P-GRADE system
JPH09282289A (ja) ネットワーク・システム
JP2910676B2 (ja) 負荷均等化装置
JPH09282283A (ja) オンライントランザクションのトレース方法、性能評価方法およびオンライントランザクション処理システム
JP3678036B2 (ja) 並列計算機システムにおけるモニタデータ収集方法
US8798960B1 (en) Application performance analysis for a multiple processor queuing station
KR100575503B1 (ko) 콤팩 비에스씨 시스템의 기능 통합 장치 및 방법
KR100516929B1 (ko) 작업관리 분석장치 및 방법과 그 프로그램을 저장한기록매체
JPH05189395A (ja) 並列計算機の性能評価方法及びその装置
Espinosa et al. Integrating automatic techniques in a performance analysis session
KR100288393B1 (ko) 교환 시스템에서의 통계 데이터 처리 장치 및 방법

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19971118

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

Free format text: PAYMENT UNTIL: 20071212

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20081212

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20091212

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20091212

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20101212

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 14

LAPS Cancellation because of no payment of annual fees