JPH05197587A - プログラムの動作表示処理装置 - Google Patents
プログラムの動作表示処理装置Info
- Publication number
- JPH05197587A JPH05197587A JP4169745A JP16974592A JPH05197587A JP H05197587 A JPH05197587 A JP H05197587A JP 4169745 A JP4169745 A JP 4169745A JP 16974592 A JP16974592 A JP 16974592A JP H05197587 A JPH05197587 A JP H05197587A
- Authority
- JP
- Japan
- Prior art keywords
- information
- program
- display
- unit
- operation display
- 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.)
- Withdrawn
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【目的】 計算機の並列プログラムの実行デバッグに関
し、プログラムの動作状況を指定のブロック間の情報授
受状況、又は所要の各時刻ごとのシステム全体の状況を
視覚的に表す線画像によって表示するプログラムの動作
表示処理装置を目的とする。 【構成】 対応付け生成部1は、所与のプログラム5に
ついて所定の対応付け情報6を生成し、対応付け情報6
は、プログラム5の各指定部分と指定のブロックとを対
応付けて示す情報であり、表示手順付加部2は、対応付
け情報5と所与のブロック間情報7とに基づいて、所定
の表示用情報通知手順をそれぞれ付加して、動作表示用
プログラム8とし、ブロック間情報7は、各該ブロック
間の情報授受の有無を指定する情報であり、情報収集部
3は、動作表示用プログラム8の実行によって、通知さ
れる表示用情報を収集し、動作表示部4は、表示用情報
を、所定の形式に編集して表示するように構成する。
し、プログラムの動作状況を指定のブロック間の情報授
受状況、又は所要の各時刻ごとのシステム全体の状況を
視覚的に表す線画像によって表示するプログラムの動作
表示処理装置を目的とする。 【構成】 対応付け生成部1は、所与のプログラム5に
ついて所定の対応付け情報6を生成し、対応付け情報6
は、プログラム5の各指定部分と指定のブロックとを対
応付けて示す情報であり、表示手順付加部2は、対応付
け情報5と所与のブロック間情報7とに基づいて、所定
の表示用情報通知手順をそれぞれ付加して、動作表示用
プログラム8とし、ブロック間情報7は、各該ブロック
間の情報授受の有無を指定する情報であり、情報収集部
3は、動作表示用プログラム8の実行によって、通知さ
れる表示用情報を収集し、動作表示部4は、表示用情報
を、所定の形式に編集して表示するように構成する。
Description
【0001】
【産業上の利用分野】本発明は、並列計算機で実行され
るプログラムの実行状態解析の資料として、実行状態に
関する動作表示を行う、プログラムの動作表示処理装置
に関する。
るプログラムの実行状態解析の資料として、実行状態に
関する動作表示を行う、プログラムの動作表示処理装置
に関する。
【0002】
【従来の技術と発明が解決しようとする課題】計算機の
プログラムのいわゆるデバッグでプログラムの作成者
は、そのプログラムを実行させて、実行中に採集する適
当な情報によって実行の過程をトレースすることによ
り、プログラムが予定した動作をし、予定の処理結果を
得るか識別し、予定外の動作になる場合等には、その要
因を探索する。
プログラムのいわゆるデバッグでプログラムの作成者
は、そのプログラムを実行させて、実行中に採集する適
当な情報によって実行の過程をトレースすることによ
り、プログラムが予定した動作をし、予定の処理結果を
得るか識別し、予定外の動作になる場合等には、その要
因を探索する。
【0003】このような実行トレースがデバッグに有効
に使用できるのは、作成者がプログラムの動きをよく知
っていて、それとトレース情報とを対照させて判断でき
るからであり、実行が一つのパスのみで逐次的にしか行
われない、通常のいわゆる逐次プログラムの場合には、
作成者によるプログラムの動作の試行が比較的容易にで
きるので、実行トレースをデバッグツールとして有効に
利用できる。
に使用できるのは、作成者がプログラムの動きをよく知
っていて、それとトレース情報とを対照させて判断でき
るからであり、実行が一つのパスのみで逐次的にしか行
われない、通常のいわゆる逐次プログラムの場合には、
作成者によるプログラムの動作の試行が比較的容易にで
きるので、実行トレースをデバッグツールとして有効に
利用できる。
【0004】しかし、並列プログラムでは、複数のパス
による実行が並行して進行することを予定してプログラ
ムが記述され、各パスの逐次的な実行の単位をプロセス
と呼ぶものとして、実行時にはプロセッサの個数までの
プロセスが並行して動作し、且つ一般にそれらのプロセ
スの動作は、相互に他の実行結果に依存する。
による実行が並行して進行することを予定してプログラ
ムが記述され、各パスの逐次的な実行の単位をプロセス
と呼ぶものとして、実行時にはプロセッサの個数までの
プロセスが並行して動作し、且つ一般にそれらのプロセ
スの動作は、相互に他の実行結果に依存する。
【0005】そのために、並列プログラムを逐次化して
実行トレースを行っても十分な情報が得られず、且つ作
成者がプログラムの並列動作を任意の状況で試行するこ
とが困難であるので、並列プログラムの実行デバッグに
おいて、動作状態をより適切に表す情報の採集が必要で
ある。
実行トレースを行っても十分な情報が得られず、且つ作
成者がプログラムの並列動作を任意の状況で試行するこ
とが困難であるので、並列プログラムの実行デバッグに
おいて、動作状態をより適切に表す情報の採集が必要で
ある。
【0006】本発明は、並列プログラムの実行デバッグ
において、プログラムの動作状況を指定のブロック間の
情報授受状況によって表示し、或いは所要時点ごとのシ
ステム全体の状態を視覚的に捉えられるように図形表示
するプログラムの動作表示処理装置を目的とする。
において、プログラムの動作状況を指定のブロック間の
情報授受状況によって表示し、或いは所要時点ごとのシ
ステム全体の状態を視覚的に捉えられるように図形表示
するプログラムの動作表示処理装置を目的とする。
【0007】
【課題を解決するための手段】図1及び図2は、本発明
の構成を示すブロック図である。図はプログラムの動作
表示処理装置の構成であって、複数のプロセッサによっ
てプログラムを並列実行するシステムの、該プログラム
の実行状況を示す情報を表示する装置であり、図1(a)
に示す第1の発明は対応付け生成部1と、表示手順付加
部2と、情報収集部3と、動作表示部4とを有する。
の構成を示すブロック図である。図はプログラムの動作
表示処理装置の構成であって、複数のプロセッサによっ
てプログラムを並列実行するシステムの、該プログラム
の実行状況を示す情報を表示する装置であり、図1(a)
に示す第1の発明は対応付け生成部1と、表示手順付加
部2と、情報収集部3と、動作表示部4とを有する。
【0008】対応付け生成部1は、所定の入力に従っ
て、所与のプログラム5について所定の対応付け情報6
を生成する。対応付け情報6は、プログラム5の該入力
による各指定部分と指定のブロックとを対応付けて示す
情報である。
て、所与のプログラム5について所定の対応付け情報6
を生成する。対応付け情報6は、プログラム5の該入力
による各指定部分と指定のブロックとを対応付けて示す
情報である。
【0009】表示手順付加部2は、対応付け情報5と該
ブロック間についての所与のブロック間情報7とに基づ
いて、ブロック間情報7に指定された情報授受位置に対
応するプログラム5の所要位置に、所定の表示用情報通
知手順をそれぞれ付加して、動作表示用プログラム8と
する。ブロック間情報7は、各該ブロック間について情
報授受の有無を指定する情報である。
ブロック間についての所与のブロック間情報7とに基づ
いて、ブロック間情報7に指定された情報授受位置に対
応するプログラム5の所要位置に、所定の表示用情報通
知手順をそれぞれ付加して、動作表示用プログラム8と
する。ブロック間情報7は、各該ブロック間について情
報授受の有無を指定する情報である。
【0010】情報収集部3は、動作表示用プログラム8
の実行によって、該表示用情報通知手順によって通知さ
れる表示用情報を収集する。動作表示部4は、情報収集
部3が収集した表示用情報を、該ブロックに対応付けて
分類し、所定の形式に編集して表示する。
の実行によって、該表示用情報通知手順によって通知さ
れる表示用情報を収集する。動作表示部4は、情報収集
部3が収集した表示用情報を、該ブロックに対応付けて
分類し、所定の形式に編集して表示する。
【0011】図1(b)に示す第2の発明は、(a)の対応付
け生成部1に代わり、対応付け生成部9が、所与のプロ
グラム5を解析し、プログラム5を所定のプログラミン
グ単位ごとにブロック分けし、プログラム5の各部分と
該ブロックとを対応付けて示す対応付け情報6と、ブロ
ック間情報7とを生成し、その他は前記(a)と同様とす
る。
け生成部1に代わり、対応付け生成部9が、所与のプロ
グラム5を解析し、プログラム5を所定のプログラミン
グ単位ごとにブロック分けし、プログラム5の各部分と
該ブロックとを対応付けて示す対応付け情報6と、ブロ
ック間情報7とを生成し、その他は前記(a)と同様とす
る。
【0012】第3の発明では、前記第1又は第2の発明
の情報収集部3は、前記動作表示用プログラム8の実行
によって、前記表示用情報通知手順によって通知される
表示用情報を、該表示用情報を通知したプロセスを実行
しているプロセッサを識別する情報と共に収集する。
の情報収集部3は、前記動作表示用プログラム8の実行
によって、前記表示用情報通知手順によって通知される
表示用情報を、該表示用情報を通知したプロセスを実行
しているプロセッサを識別する情報と共に収集する。
【0013】動作表示部4は、情報収集部3が収集した
表示用情報を、該プロセッサ別に分類し、所定の形式に
編集して表示する。又、第4の発明では、前記第1又は
第2の発明の動作表示部4は、前記情報収集部3が収集
した表示用情報を、該ブロック別に分類し、該表示用情
報の送信側プロセス及び受信側プロセスの何れか所定の
一方ごとにまとめて、それぞれの場合に応じて受信先プ
ロセス又は送信元プロセスを示す情報を付して表示す
る。
表示用情報を、該プロセッサ別に分類し、所定の形式に
編集して表示する。又、第4の発明では、前記第1又は
第2の発明の動作表示部4は、前記情報収集部3が収集
した表示用情報を、該ブロック別に分類し、該表示用情
報の送信側プロセス及び受信側プロセスの何れか所定の
一方ごとにまとめて、それぞれの場合に応じて受信先プ
ロセス又は送信元プロセスを示す情報を付して表示す
る。
【0014】図2(a)に示す第5の発明では、表示手順
付加部12と、情報収集部13と、動作表示部14とを有し、
表示手順付加部12は、ログ収集指定情報16に従って、プ
ログラム15の指定位置に、所定の表示用情報通知手順17
をそれぞれ付加して、動作表示用プログラム18とする。
付加部12と、情報収集部13と、動作表示部14とを有し、
表示手順付加部12は、ログ収集指定情報16に従って、プ
ログラム15の指定位置に、所定の表示用情報通知手順17
をそれぞれ付加して、動作表示用プログラム18とする。
【0015】表示用情報通知手順17は、プログラム15で
各指定部分が実行されるごとに、指定の情報を当該情報
の生起時刻と共に表示用情報として情報収集部13に通知
するプログラムである。
各指定部分が実行されるごとに、指定の情報を当該情報
の生起時刻と共に表示用情報として情報収集部13に通知
するプログラムである。
【0016】情報収集部13は各該プロセッサごとに、動
作表示用プログラム18の実行によって、表示用情報通知
手順17によって通知される表示用情報を各実行ログ19と
して記録する。
作表示用プログラム18の実行によって、表示用情報通知
手順17によって通知される表示用情報を各実行ログ19と
して記録する。
【0017】動作表示部14は、すべての実行ログ19に基
づいて、指定の時刻ごとの各該プロセッサ及び該プロセ
ッサ間の状態を、それぞれ所定の図形によって表す線画
像を生成し、表示する。
づいて、指定の時刻ごとの各該プロセッサ及び該プロセ
ッサ間の状態を、それぞれ所定の図形によって表す線画
像を生成し、表示する。
【0018】第6の発明では、図2(b)に示すように、
複数の前記プロセッサに共通のシステムタイマ10を設
け、前記表示用情報通知手順17は、前記送受信情報の生
起時刻をシステムタイマ10から読み取る。
複数の前記プロセッサに共通のシステムタイマ10を設
け、前記表示用情報通知手順17は、前記送受信情報の生
起時刻をシステムタイマ10から読み取る。
【0019】又、第7の発明では、第5又は第6の発明
における前記ログ収集指定情報16には、所要の情報を表
す記録記号の指定を有し、前記情報収集部13は、前記実
行ログ19を各該当する記録記号を使用して記録し、前記
動作表示部14は、前記線画像の生成の場合に、実行ログ
19の該記録記号をログ収集指定情報16の指定に従って解
釈して処理する。
における前記ログ収集指定情報16には、所要の情報を表
す記録記号の指定を有し、前記情報収集部13は、前記実
行ログ19を各該当する記録記号を使用して記録し、前記
動作表示部14は、前記線画像の生成の場合に、実行ログ
19の該記録記号をログ収集指定情報16の指定に従って解
釈して処理する。
【0020】
【作用】本発明によるプログラムの動作表示処理装置に
より、並列に動作するプロセスの動作が、必要なプロセ
ス間の情報授受状況によって表示され、又所要の各時刻
ごとのシステム全体の状況を、線画像によって視覚的に
捉えることができるように表示されるので、並列処理の
状況を把握し易くなる。
より、並列に動作するプロセスの動作が、必要なプロセ
ス間の情報授受状況によって表示され、又所要の各時刻
ごとのシステム全体の状況を、線画像によって視覚的に
捉えることができるように表示されるので、並列処理の
状況を把握し易くなる。
【0021】
【実施例】図1(a)の場合に、ブロック間情報7は、図
3に例示するような概念的にブロック図として表される
情報であって、「線分の接続の型を求める」等がそれぞ
れブロックであり、それらの必要なブロック間を矢印の
線でつなぐ。
3に例示するような概念的にブロック図として表される
情報であって、「線分の接続の型を求める」等がそれぞ
れブロックであり、それらの必要なブロック間を矢印の
線でつなぐ。
【0022】この矢印は、例えば「線分の接続の型を求
める」ブロックから「可能な解釈を求める」ブロックと
の間に情報授受があることを示し、ここの情報を動作表
示のための表示情報として採取することを指定する意味
を持つ。
める」ブロックから「可能な解釈を求める」ブロックと
の間に情報授受があることを示し、ここの情報を動作表
示のための表示情報として採取することを指定する意味
を持つ。
【0023】対応付け生成部1は、指定入力としてプロ
グラム5の指定と、ブロック間情報7に示す各ブロック
とプログラム5とを対応付けるための指定とを受け取
り、各ブロックがプログラム5の何れの部分と対応する
かを示す情報として、対応付け情報6を生成する。
グラム5の指定と、ブロック間情報7に示す各ブロック
とプログラム5とを対応付けるための指定とを受け取
り、各ブロックがプログラム5の何れの部分と対応する
かを示す情報として、対応付け情報6を生成する。
【0024】図1(b)に示す対応付け生成部9の場合に
は、ブロックにするプログラミング単位を、例えば並列
に動く構成単位(関数、手続き、述語等)とするように
予め指定しておいて、対応付け生成部9がプログラム5
を解析し、各ブロックとするプログラムの部分を決定す
る。
は、ブロックにするプログラミング単位を、例えば並列
に動く構成単位(関数、手続き、述語等)とするように
予め指定しておいて、対応付け生成部9がプログラム5
を解析し、各ブロックとするプログラムの部分を決定す
る。
【0025】対応付け生成部9は、決定したそれらのブ
ロックについて、前記と同様の対応付け情報6を生成す
ると共に、プログラム5の解析結果からブロック間の情
報授受を判定して、ブロック間のつながり情報を付加す
ることにより、前記のような内容のブロック間情報7も
生成する。
ロックについて、前記と同様の対応付け情報6を生成す
ると共に、プログラム5の解析結果からブロック間の情
報授受を判定して、ブロック間のつながり情報を付加す
ることにより、前記のような内容のブロック間情報7も
生成する。
【0026】表示手順付加部2は、プログラム5、対応
付け情報6、ブロック間情報7を入力として、プログラ
ム5の実行結果から表示用情報を取り出して情報収集部
3に渡すための表示用情報通知手順を、プログラム5の
各必要個所に付加して、動作表示用プログラム8を生成
する。
付け情報6、ブロック間情報7を入力として、プログラ
ム5の実行結果から表示用情報を取り出して情報収集部
3に渡すための表示用情報通知手順を、プログラム5の
各必要個所に付加して、動作表示用プログラム8を生成
する。
【0027】次にデバッグのために動作用プログラム8
を情報収集部3と共に実行させると、動作用プログラム
8を実行するプロセス間の通信が行われるごとに、付加
されている表示用情報通知手順が作用して、授受される
情報を情報収集部3に通知する。
を情報収集部3と共に実行させると、動作用プログラム
8を実行するプロセス間の通信が行われるごとに、付加
されている表示用情報通知手順が作用して、授受される
情報を情報収集部3に通知する。
【0028】情報収集部3は、プロセス間で授受される
情報を通知されると、その送信プロセスの識別番号、受
信プロセスの識別番号、実行中のブロックの識別情報、
及び要すれば両プロセスを実行している各プロセッサの
番号を採取して、受け取った情報と共に表示用情報とし
て蓄積する。
情報を通知されると、その送信プロセスの識別番号、受
信プロセスの識別番号、実行中のブロックの識別情報、
及び要すれば両プロセスを実行している各プロセッサの
番号を採取して、受け取った情報と共に表示用情報とし
て蓄積する。
【0029】動作表示部4は、情報収集部3が蓄積した
表示用情報から、所定の表示内容に従って必要な情報を
抽出し編集して、適当な表示装置に出力する。図5〜図
8は線画の稜線を解釈するプログラムを例として、同じ
動作についての動作表示の異なる表示例を説明する図で
あり、このプログラムのブロック間情報は前記の図3に
示すものである。
表示用情報から、所定の表示内容に従って必要な情報を
抽出し編集して、適当な表示装置に出力する。図5〜図
8は線画の稜線を解釈するプログラムを例として、同じ
動作についての動作表示の異なる表示例を説明する図で
あり、このプログラムのブロック間情報は前記の図3に
示すものである。
【0030】図5に示す表示例は、左から右へ各列が図
3の各ブロックに対応し、各長方形の各枠がプロセスに
対応し、各枠内の上欄にブロックの名前とプロセス識別
番号が表示されている。
3の各ブロックに対応し、各長方形の各枠がプロセスに
対応し、各枠内の上欄にブロックの名前とプロセス識別
番号が表示されている。
【0031】下欄に、当該プロセスと他のプロセスとの
授受情報が列挙され、不等号の右が授受情報の内容であ
り、左が送信元又は受信先の他プロセスのプロセス識別
番号であって、不等号の向きで送信元と受信先の区別を
表している。
授受情報が列挙され、不等号の右が授受情報の内容であ
り、左が送信元又は受信先の他プロセスのプロセス識別
番号であって、不等号の向きで送信元と受信先の区別を
表している。
【0032】この例のプログラムは、3面頂点だけで構
成される多面体を扱うものとし、その場合には線分は図
4(a)に示す4種類のみの異なる接続の型があり、又各
接続の型には例えばL型とarrow 型について図4(b)に
例示するように、有限個の解釈のみが可能である。
成される多面体を扱うものとし、その場合には線分は図
4(a)に示す4種類のみの異なる接続の型があり、又各
接続の型には例えばL型とarrow 型について図4(b)に
例示するように、有限個の解釈のみが可能である。
【0033】なお、図4(b)の解釈は、稜線上を矢印の
方向に進むとき、右手側が物体の面、左手側が背景(他
の面)であり、+は凸の稜線で、−は凹の稜線と解釈し
ていることを表している。
方向に進むとき、右手側が物体の面、左手側が背景(他
の面)であり、+は凸の稜線で、−は凹の稜線と解釈し
ていることを表している。
【0034】プログラムは、前記矢印の基準方向を左か
ら右(垂直のときは上から下)として、基準方向をs、
反対方向をdで表し、与えられたすべての稜線につい
て、s、d、+、−の何れかを割り当てれば解釈ができ
たことになる。
ら右(垂直のときは上から下)として、基準方向をs、
反対方向をdで表し、与えられたすべての稜線につい
て、s、d、+、−の何れかを割り当てれば解釈ができ
たことになる。
【0035】前記の図5は、図4(c)に示す線画を解釈
する処理を行った例であって、図4(c)に示す数字を各
稜線の番号として、図5に「#main>(5,1,3,5) 」等のよ
うに示される動作表示が、主プロセスから各プロセスに
それぞれ稜線の組を通知していることを示し、この例は
稜線5個からなる図で、稜線番号1と3と5が組になる
ことを示す。
する処理を行った例であって、図4(c)に示す数字を各
稜線の番号として、図5に「#main>(5,1,3,5) 」等のよ
うに示される動作表示が、主プロセスから各プロセスに
それぞれ稜線の組を通知していることを示し、この例は
稜線5個からなる図で、稜線番号1と3と5が組になる
ことを示す。
【0036】このようにして、稜線の組1と3と5、1
と2、4と5、4と3と2がそれぞれ組になるので、図
の動作表示にあるように、4個のプロセスが各組を個別
に受け取って、それぞれについて並行に「線分の接続の
型を求める」処理をする。
と2、4と5、4と3と2がそれぞれ組になるので、図
の動作表示にあるように、4個のプロセスが各組を個別
に受け取って、それぞれについて並行に「線分の接続の
型を求める」処理をする。
【0037】型を求めた結果を、「可能な解釈を求め
る」ブロックのプロセスへ送って解釈の候補を求め、求
めた解釈を「比較して取捨選択する」ブロックのプロセ
スで比較して可能な解を出す。
る」ブロックのプロセスへ送って解釈の候補を求め、求
めた解釈を「比較して取捨選択する」ブロックのプロセ
スで比較して可能な解を出す。
【0038】解釈は「(s,-,+,-,s) 」のようなベクトル
で表され、各要素が先頭から稜線1〜5に対応し、図5
等でnは未決定の値を表している。図5の最後の枠にあ
る、#main 宛の情報が結論であって、この場合には3個
の可能な解釈が図4(c)の線画にあり得ることになる。
で表され、各要素が先頭から稜線1〜5に対応し、図5
等でnは未決定の値を表している。図5の最後の枠にあ
る、#main 宛の情報が結論であって、この場合には3個
の可能な解釈が図4(c)の線画にあり得ることになる。
【0039】図6は、図5に示す内容をプロセスを実行
するプロセッサ別に分類編集して表示する例であり、こ
の例では図5に表れたプロセスについて、プロセス#
0、1、4、5、8がプロセッサ0、プロセス#2、
3、6、7、9がプロセッサ1、プロセス#10がプロセ
ッサ2で実行されたとしている。
するプロセッサ別に分類編集して表示する例であり、こ
の例では図5に表れたプロセスについて、プロセス#
0、1、4、5、8がプロセッサ0、プロセス#2、
3、6、7、9がプロセッサ1、プロセス#10がプロセ
ッサ2で実行されたとしている。
【0040】図7は、図5と同様にブロックごとにまと
めてあるが、情報の送信元プロセスごとに、送信情報の
みを受信先プロセスの識別番号と共に表示する例であ
り、図8は逆に、情報の受信先プロセスごとに、受信情
報のみを送信元プロセスの識別番号と共に表示する例で
ある。
めてあるが、情報の送信元プロセスごとに、送信情報の
みを受信先プロセスの識別番号と共に表示する例であ
り、図8は逆に、情報の受信先プロセスごとに、受信情
報のみを送信元プロセスの識別番号と共に表示する例で
ある。
【0041】図2(b)に示す第5〜第7の発明におい
て、情報収集部13は例えば図9のようなシステム構成で
実行される。即ち各プロセッサ40はインタプリタ41が動
作表示用プログラムを実行し、I/Oインタフェース42
を介して相互通信可能なように接続され、又、第6の発
明の場合に共通のシステムタイマ10と接続し、必要な場
合にI/Oインタフェース42によって時刻を読み取るこ
とができる。
て、情報収集部13は例えば図9のようなシステム構成で
実行される。即ち各プロセッサ40はインタプリタ41が動
作表示用プログラムを実行し、I/Oインタフェース42
を介して相互通信可能なように接続され、又、第6の発
明の場合に共通のシステムタイマ10と接続し、必要な場
合にI/Oインタフェース42によって時刻を読み取るこ
とができる。
【0042】インタプリタ41によって、動作表示用プロ
グラムに挿入されている表示用情報通知手順が実行され
ると、その表示用情報通知手順は、その時の時刻をシス
テムタイマ10から読み取り、そのときの処理状態、或い
はI/Oインタフェース42を介して他プロセッサと授受
したメッセージ等に時刻を付けて実行ログ19に記録す
る。
グラムに挿入されている表示用情報通知手順が実行され
ると、その表示用情報通知手順は、その時の時刻をシス
テムタイマ10から読み取り、そのときの処理状態、或い
はI/Oインタフェース42を介して他プロセッサと授受
したメッセージ等に時刻を付けて実行ログ19に記録す
る。
【0043】そのために、図2におけるログ収集指定情
報16には、プログラムの表示用情報通知手順の挿入位置
ごとの項からなるテーブルに、挿入位置を指定する文番
号或いは述語名等、採集する情報の種類(状態名か、挿
入位置のプログラムで送信するメッセージに関する情報
か等)、及びその処理段階を表す状態名、及び状態名や
メッセージの記録を短縮するために設ける記録記号など
を指定しておく。
報16には、プログラムの表示用情報通知手順の挿入位置
ごとの項からなるテーブルに、挿入位置を指定する文番
号或いは述語名等、採集する情報の種類(状態名か、挿
入位置のプログラムで送信するメッセージに関する情報
か等)、及びその処理段階を表す状態名、及び状態名や
メッセージの記録を短縮するために設ける記録記号など
を指定しておく。
【0044】例えば、論理設計を処理するプログラム
を、全体を部分問題に分割して複数のプロセッサで並列
処理するように構成すると、設計した回路が所要の制約
条件を満たすために、属性値や違反情報を通信し合いな
がら設計処理を進める。
を、全体を部分問題に分割して複数のプロセッサで並列
処理するように構成すると、設計した回路が所要の制約
条件を満たすために、属性値や違反情報を通信し合いな
がら設計処理を進める。
【0045】そのようなプログラムは、例えば図10に示
すような処理の流れとなり、各プロセッサが異なる部分
回路を分担して処理するものとし、各プロセッサでは先
ず処理ステップ20で、分担する部分回路をゲートレベル
に詳細化する。
すような処理の流れとなり、各プロセッサが異なる部分
回路を分担して処理するものとし、各プロセッサでは先
ず処理ステップ20で、分担する部分回路をゲートレベル
に詳細化する。
【0046】詳細化処理では、部分回路をゲートレベル
に詳細化すると、他の部分回路の設計値は0と考えて、
別途与えられている制約条件と照合することにより詳細
化の妥当性を評価し、不都合があれば詳細化をやり直
す。
に詳細化すると、他の部分回路の設計値は0と考えて、
別途与えられている制約条件と照合することにより詳細
化の妥当性を評価し、不都合があれば詳細化をやり直
す。
【0047】以上により、各プロセッサで制約条件を満
足する詳細化ができたら、処理ステップ21において、そ
の部分回路の詳細化により定まる属性値(ゲート数と遅
延時間)を他のプロセッサに通知する。
足する詳細化ができたら、処理ステップ21において、そ
の部分回路の詳細化により定まる属性値(ゲート数と遅
延時間)を他のプロセッサに通知する。
【0048】各プロセッサでは、処理ステップ22で、他
のプロセッサから通知された属性値を制約条件に代入し
て、自身の部分回路が制約条件を満足するか判定し、す
べての制約条件を満足した場合のみ判定成功として、処
理ステップ23で判定結果として成功か失敗かをプロセッ
サ相互で通知する。
のプロセッサから通知された属性値を制約条件に代入し
て、自身の部分回路が制約条件を満足するか判定し、す
べての制約条件を満足した場合のみ判定成功として、処
理ステップ23で判定結果として成功か失敗かをプロセッ
サ相互で通知する。
【0049】その結果処理ステップ24で、自身の部分回
路が判定に失敗した場合は無条件に処理ステップ20に戻
り、又自身は判定に成功しても、他の1プロセッサから
でも失敗の通知があれば処理ステップ20に戻り、すべて
のプロセッサで判定に成功した場合のみ処理を終わる。
路が判定に失敗した場合は無条件に処理ステップ20に戻
り、又自身は判定に成功しても、他の1プロセッサから
でも失敗の通知があれば処理ステップ20に戻り、すべて
のプロセッサで判定に成功した場合のみ処理を終わる。
【0050】処理ステップ24から戻って処理ステップ20
の処理に入った場合に、自身で部分回路の判定が失敗で
あった場合には、判定を成功側に近づけるような条件で
詳細化を修正し、自身は判定に成功している場合には、
そのまま処理ステップ21に進む。
の処理に入った場合に、自身で部分回路の判定が失敗で
あった場合には、判定を成功側に近づけるような条件で
詳細化を修正し、自身は判定に成功している場合には、
そのまま処理ステップ21に進む。
【0051】以上のような処理の場合に、ログ収集指定
情報には、例えば各処理ステップに状態名を付与して、
各処理ステップの入口で、その状態名を実行ログに記録
するように挿入位置その他を指定し、又処理ステップ2
1、23においてプロセッサ間で授受する通知のメッセー
ジを実行ログに記録するように指定する。
情報には、例えば各処理ステップに状態名を付与して、
各処理ステップの入口で、その状態名を実行ログに記録
するように挿入位置その他を指定し、又処理ステップ2
1、23においてプロセッサ間で授受する通知のメッセー
ジを実行ログに記録するように指定する。
【0052】図11は、図2の動作表示部14の構成例であ
って、実行ログ30を入力として、表示画面作成部31がデ
ィスプレイ32にシステムの状態を示す線画像を表示す
る。そのために、表示画面作成部31は表示密度情報33
と、表示図形テーブル34を持ち、又ログ収集指定情報か
ら記録記号指定情報を取り出した説明用テーブル35を参
照する。
って、実行ログ30を入力として、表示画面作成部31がデ
ィスプレイ32にシステムの状態を示す線画像を表示す
る。そのために、表示画面作成部31は表示密度情報33
と、表示図形テーブル34を持ち、又ログ収集指定情報か
ら記録記号指定情報を取り出した説明用テーブル35を参
照する。
【0053】なお、実行ログ30は図2に示す各プロセッ
サの実行ログ19の全体であるが、予めすべての実行ログ
19の内容に各プロセッサ名を付加し、時刻でソートして
1個のログファイルに集成しておけば都合がよい。
サの実行ログ19の全体であるが、予めすべての実行ログ
19の内容に各プロセッサ名を付加し、時刻でソートして
1個のログファイルに集成しておけば都合がよい。
【0054】図の実行ログ30において、時刻欄は情報の
生起時刻をシステムタイマから読み取った値で示すもの
で、時刻値は例えばシステムの起動時からの経過時間を
ミリ秒値で表す値とする。又、プロセッサ欄は各ログ情
報を収集したプロセッサを示す。
生起時刻をシステムタイマから読み取った値で示すもの
で、時刻値は例えばシステムの起動時からの経過時間を
ミリ秒値で表す値とする。又、プロセッサ欄は各ログ情
報を収集したプロセッサを示す。
【0055】実行ログ30の内容欄は、状態名或いは送受
信メッセージの情報であり、元の実行ログ19では説明用
テーブル35に例示するような、その左端に示す記号(図
のa、p等)に短縮して記録されており、図に示すのは
それを説明用テーブル35を参照して元の記録に復元した
結果である。
信メッセージの情報であり、元の実行ログ19では説明用
テーブル35に例示するような、その左端に示す記号(図
のa、p等)に短縮して記録されており、図に示すのは
それを説明用テーブル35を参照して元の記録に復元した
結果である。
【0056】表示密度情報33は、表示の時刻間隔、詳細
度その他の指定からなる表示密度についてシステムが定
める組合せを保持し、表示に際して指定された値により
参照して、表示を制御するものである。
度その他の指定からなる表示密度についてシステムが定
める組合せを保持し、表示に際して指定された値により
参照して、表示を制御するものである。
【0057】ここで、詳細度とは、例えば後に例で説明
するような態様で、各プロセッサの状態のみを表示する
とか、通信のあったプロセッサ間を結んだ表示をすると
か、更にメッセージまで表示するとかいう、表示内容の
細かさをいう。
するような態様で、各プロセッサの状態のみを表示する
とか、通信のあったプロセッサ間を結んだ表示をすると
か、更にメッセージまで表示するとかいう、表示内容の
細かさをいう。
【0058】表示図形テーブル34は、表示図形に関して
指定する情報であって、プロセッサを円で表すとか、プ
ロセッサの状態を、円内の色で区別する場合の状態と表
示との対応とかを定義する情報がある。
指定する情報であって、プロセッサを円で表すとか、プ
ロセッサの状態を、円内の色で区別する場合の状態と表
示との対応とかを定義する情報がある。
【0059】図12〜図15は表示例を示し、前記図10によ
り説明したプログラムを3プロセッサ、プロセッサA
(各図の右上の円)、プロセッサB(右下の円)、プロ
セッサC(左の円)で処理するシステムの動作表示であ
り、各図何れも(a)が処理開始時の状態を、(b)が時刻3
150における状態を示し、図12〜図14の各図は異なる表
示密度の例に対応する。
り説明したプログラムを3プロセッサ、プロセッサA
(各図の右上の円)、プロセッサB(右下の円)、プロ
セッサC(左の円)で処理するシステムの動作表示であ
り、各図何れも(a)が処理開始時の状態を、(b)が時刻3
150における状態を示し、図12〜図14の各図は異なる表
示密度の例に対応する。
【0060】又、各表示画面の右上にある数字は「経過
時間/総時間」を示し、下部の水平に延びる棒図形は黒
点の位置で、表示している図の時刻を示すものである。
右下の長方形枠内は操作のためのアイコン表示であっ
て、表示の操作は例えば「PLAY」で表示が一定時間間隔
で自動更新され、「STOP」で同じ表示で停止し、「STE
P」で1画面づつ進むようにする。
時間/総時間」を示し、下部の水平に延びる棒図形は黒
点の位置で、表示している図の時刻を示すものである。
右下の長方形枠内は操作のためのアイコン表示であっ
て、表示の操作は例えば「PLAY」で表示が一定時間間隔
で自動更新され、「STOP」で同じ表示で停止し、「STE
P」で1画面づつ進むようにする。
【0061】図12は、各プロセッサの状態のみをプロセ
ッサごとの円で表示する例であり、状態は色(図では網
かけ模様の違いで代用)で表す。図13は、図11の表示に
プロセスの円を結ぶ線による通信経路と、メッセージの
有無を示す表示(通信経路上の小さな正方形)が加わっ
たものであり、通信経路は例えば右側を送信経路として
表す。
ッサごとの円で表示する例であり、状態は色(図では網
かけ模様の違いで代用)で表す。図13は、図11の表示に
プロセスの円を結ぶ線による通信経路と、メッセージの
有無を示す表示(通信経路上の小さな正方形)が加わっ
たものであり、通信経路は例えば右側を送信経路として
表す。
【0062】図14は、図13のメッセージに、メッセージ
の種類による区別を色や模様で表すようにした例であ
り、メッセージの種類には属性情報及びメッセージを含
む通常の形のメッセージ、属性情報のみのメッセージ、
前記プログラム例の説明における判定に失敗したことを
通知する特定のメッセージ等がある。
の種類による区別を色や模様で表すようにした例であ
り、メッセージの種類には属性情報及びメッセージを含
む通常の形のメッセージ、属性情報のみのメッセージ、
前記プログラム例の説明における判定に失敗したことを
通知する特定のメッセージ等がある。
【0063】図15は、指定のプロセッサについて実行ロ
グの詳細を表示する例であって、図の例は左側のプロセ
ッサ(詳細情報表示のウィンドウが重ねられている)に
ついて、実行ログから時刻情報を削除したものを文字列
で表示している。
グの詳細を表示する例であって、図の例は左側のプロセ
ッサ(詳細情報表示のウィンドウが重ねられている)に
ついて、実行ログから時刻情報を削除したものを文字列
で表示している。
【0064】なお、図12〜図15に示す表示例の各(b)の
図は、左側に表示されているプロセッサBが前記図10の
処理の処理ステップ20にあり、右上側表示のプロセッサ
Aが処理ステップ21による属性値通知を終わって、プロ
セッサBからの通知を受け処理ステップ22による評価中
であり、右下側表示のプロセッサCがプロセッサAから
の属性値通知に関する評価を終わって、プロセッサBか
らの通知待ち状態である場合に相当する。
図は、左側に表示されているプロセッサBが前記図10の
処理の処理ステップ20にあり、右上側表示のプロセッサ
Aが処理ステップ21による属性値通知を終わって、プロ
セッサBからの通知を受け処理ステップ22による評価中
であり、右下側表示のプロセッサCがプロセッサAから
の属性値通知に関する評価を終わって、プロセッサBか
らの通知待ち状態である場合に相当する。
【0065】
【発明の効果】以上の説明から明らかなように本発明に
よれば、計算機における、並列プログラムの実行デバッ
グにおいて、プログラムの動作状況を指定のブロック間
の情報授受状況によって表示し、又、所要の各時刻ごと
のシステム全体の状況を、線画像によって視覚的に捉え
ることができるように表示するので、並列プログラムの
動作状況の把握を容易にするという著しい効果がある。
よれば、計算機における、並列プログラムの実行デバッ
グにおいて、プログラムの動作状況を指定のブロック間
の情報授受状況によって表示し、又、所要の各時刻ごと
のシステム全体の状況を、線画像によって視覚的に捉え
ることができるように表示するので、並列プログラムの
動作状況の把握を容易にするという著しい効果がある。
【図1】 本発明の構成を示すブロック図(その1)
【図2】 本発明の構成を示すブロック図(その2)
【図3】 ブロック間情報を説明する図
【図4】 例題プログラムを説明する図
【図5】 第1の動作表示例を説明する図
【図6】 第2の動作表示例を説明する図
【図7】 第3の動作表示例を説明する図
【図8】 第4の動作表示例を説明する図
【図9】 情報収集部の構成例を示すブロック図
【図10】 プログラム例を説明する図
【図11】 動作表示部の構成例を示すブロック図
【図12】 第5の動作表示例を説明する図
【図13】 第6の動作表示例を説明する図
【図14】 第7の動作表示例を説明する図
【図15】 第8の動作表示例を説明する図
1、9 対応付け生成部 2、12 表示手順付加部 3、13 情報収集部 4、14 動作表示部 5、15 プログラム 6 対応付け情報 7 ブロック間情報 8、18 動作表示用プログラム 10 システムタイマ 16 ログ収集指定情報 17 表示用情報通知手順 19、30 実行ログ 20〜24 処理ステップ 31 表示画面作成部 32 ディスプレイ 33 表示密度情報 34 表示図形テーブル 35 説明用テーブル 40 プロセッサ 41 インタプリタ 42 I/Oインタフェース
フロントページの続き (72)発明者 丸山 文宏 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内
Claims (7)
- 【請求項1】 複数のプロセッサによってプログラムを
並列実行するシステムの、該プログラムの実行状況を示
す情報を表示する装置であって、 対応付け生成部(1) と、表示手順付加部(2) と、情報収
集部(3)と、動作表示部(4)とを有し、 該対応付け生成部(1)は、所定の入力に従って、所与の
プログラム(5)について所定の対応付け情報(6)を生成
し、 該対応付け情報(6)は、該プログラム(5)の該入力による
各指定部分と指定のブロックとを対応付けて示す情報で
あり、 該表示手順付加部(2)は、該対応付け情報(6)と該ブロッ
ク間についての所与のブロック間情報(7) とに基づい
て、該ブロック間情報に指定された情報授受位置に対応
する該プログラム(5) の所要位置に、所定の表示用情報
通知手順をそれぞれ付加して、動作表示用プログラム
(8)とし、 該ブロック間情報(7) は、各該ブロック間について情報
授受の有無を指定する情報であり、 該情報収集部(3)は、該動作表示用プログラム(8)の実行
によって、該表示用情報通知手順によって通知される表
示用情報を収集し、 該動作表示部(4)は、該情報収集部(3)が収集した表示用
情報を、該ブロックに対応付けて分類し、所定の形式に
編集して表示するように構成されていることを特徴とす
るプログラムの動作表示処理装置。 - 【請求項2】 前記対応付け生成部(9)は、所与のプロ
グラム(5)を解析し、該プログラムを所定のプログラミ
ング単位ごとにブロック分けし、該プログラムの各部分
と該ブロックとを対応付けて示す対応付け情報(6) と、
前記ブロック間情報(7)とを生成する、請求項1記載の
プログラムの動作表示処理装置。 - 【請求項3】 前記情報収集部(3) は、前記動作表示用
プログラム(8) の実行によって、前記表示用情報通知手
順によって通知される表示用情報を、該表示用情報を通
知したプロセスを実行しているプロセッサを識別する情
報と共に収集し、 前記動作表示部(4)は、該情報収集部(3)が収集した表示
用情報を、該プロセッサ別に分類し、所定の形式に編集
して表示する、請求項1又は請求項2記載のプログラム
の動作表示処理装置。 - 【請求項4】 前記動作表示部(4)は、前記情報収集部
(3)が収集した表示用情報を、該ブロック別に分類し、
該表示用情報の送信側プロセス及び受信側プロセスの何
れか所定の一方ごとにまとめて、それぞれの場合に応じ
て受信先プロセス又は送信元プロセスを示す情報を付し
て表示する、請求項1又は請求項2記載のプログラムの
動作表示処理装置。 - 【請求項5】 複数のプロセッサによってプログラム(1
5)を並列実行するシステムの、該プログラムの実行状況
を示す情報を表示する装置であって、 表示手順付加部(12)と、情報収集部(13)と、動作表示部
(14)とを有し、 該表示手順付加部(12)は、ログ収集指定情報(16)に従っ
て、該プログラム(15)の指定位置に、所定の表示用情報
通知手順(17)をそれぞれ付加して、動作表示用プログラ
ム(18)とし、 該表示用情報通知手順(17)は、該プログラム(15)で各指
定部分が実行されるごとに、指定の情報を当該情報の生
起時刻と共に表示用情報として該情報収集部に通知する
プログラムであり、 該情報収集部(13)は各該プロセッサごとに、該動作表示
用プログラム(18)の実行によって、該表示用情報通知手
順によって通知される表示用情報を各実行ログ(19)とし
て記録し、 該動作表示部(14)は、すべての該実行ログ(19)に基づい
て、指定の時刻ごとの各該プロセッサ及び該プロセッサ
間の状態を、それぞれ所定の図形によって表す線画像を
生成し、表示するように構成されていることを特徴とす
るプログラムの動作表示処理装置。 - 【請求項6】 複数の前記プロセッサに共通のシステム
タイマ(10)を設け、前記表示用情報通知手順(17)は、前
記送受信情報の生起時刻を該システムタイマから読み取
る、請求項5記載のプログラムの動作表示処理装置。 - 【請求項7】 前記ログ収集指定情報(16)には、所要の
情報を表す記録記号の指定を有し、 前記情報収集部(13)は、前記実行ログ(19)を各該当する
記録記号を使用して記録し、 前記動作表示部(14)は、前記線画像の生成の場合に、該
実行ログ(19)の該記録記号を該ログ収集指定情報(16)の
指定に従って解釈して処理する、請求項5又は請求項6
記載のプログラムの動作表示処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4169745A JPH05197587A (ja) | 1991-11-12 | 1992-06-29 | プログラムの動作表示処理装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3-295389 | 1991-11-12 | ||
JP29538991 | 1991-11-12 | ||
JP4169745A JPH05197587A (ja) | 1991-11-12 | 1992-06-29 | プログラムの動作表示処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05197587A true JPH05197587A (ja) | 1993-08-06 |
Family
ID=26492990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4169745A Withdrawn JPH05197587A (ja) | 1991-11-12 | 1992-06-29 | プログラムの動作表示処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05197587A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006022204A1 (ja) * | 2004-08-23 | 2006-03-02 | Pacific Design Inc. | ソースプログラムの分析装置および方法 |
-
1992
- 1992-06-29 JP JP4169745A patent/JPH05197587A/ja not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006022204A1 (ja) * | 2004-08-23 | 2006-03-02 | Pacific Design Inc. | ソースプログラムの分析装置および方法 |
JPWO2006022204A1 (ja) * | 2004-08-23 | 2008-05-08 | パシフィック・デザイン株式会社 | ソースプログラムの分析装置および方法 |
JP4866241B2 (ja) * | 2004-08-23 | 2012-02-01 | 株式会社ガイア・システム・ソリューション | ソースプログラムの分析装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6978440B1 (en) | System and method for developing test cases using a test object library | |
US7380239B1 (en) | Method and mechanism for diagnosing computer applications using traces | |
US5590270A (en) | Method and apparatus for detecting a lower level software reusable product in generating an upper level software product from a lower level software product and changing the upper level software product | |
JP2973913B2 (ja) | 入力シートシステム | |
JPH05197587A (ja) | プログラムの動作表示処理装置 | |
JP3347477B2 (ja) | 単語辞書登録装置及び文書認識装置 | |
JP2570592B2 (ja) | インタラクティブ型マルチウインドウプログラム自動テスト装置 | |
US5450606A (en) | System for dynamically exchanging and matching revision information between host and terminal | |
JPH1063744A (ja) | 文書のレイアウト解析方法及びシステム | |
JPH11188584A (ja) | 稼動管理装置および稼動管理方法、記憶媒体 | |
JPS61245274A (ja) | ワ−ドプロセツサ | |
JP2653276B2 (ja) | キーボードシュミレータ | |
JP4208468B2 (ja) | ソフトウェアシステム動作確認装置 | |
CA1340592C (en) | Software agent used to provide information to a user for a plurality of computer | |
JPS58107957A (ja) | 投入ジヨブの表示方法 | |
JP3068698B2 (ja) | 記憶装置付きファクシミリ装置 | |
JPH08328897A (ja) | 並列プログラム動作解析方法及びその装置 | |
JPH11184684A (ja) | 状態遷移表自動生成方法及び記録媒体 | |
JPH10187884A (ja) | 文字認識装置および記録媒体 | |
JPH07129437A (ja) | メッセージロギング情報出力方式 | |
JP2001076165A (ja) | アニメーション編集システムおよびアニメーション編集プログラムを記録した記憶媒体 | |
JP2940186B2 (ja) | 配線経路/通過ガイドの配線可不可の状態表示方式 | |
JP2606665B2 (ja) | 対話システム開発装置 | |
JPH0567015A (ja) | シミユレーシヨンデータ生成方式 | |
JPH03251924A (ja) | エキスパートシステムにおける知識編集・表示装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19990831 |