(57)【要約】【課題】実行されるプロセス数が多く、事前にどのプロセスのプロセス情報がデバッグ調査に必要になるか分かっていない場合でも、デバッグ作業を効率的に行えるようにする。【解決手段】各ノード1,2-1〜2-nのデバッグ制御手段12,22は、自ノード上で実行されるプロセスのプロセス情報を収集し、プロセス情報記憶部141,241に格納する。ノード１上の検索手段13は、ユーザによって検索条件が入力されると、他のノード2-1〜2-nに対してプロセス情報取得要求を送信し、これに応答してプロセス情報読み出し手段２３が、プロセス情報記憶部２４１に格納されているプロセス情報を読み出し、ノード1へ送信する。検索手段13は、各ノード2-1〜nから送られてくるプロセス情報をプロセス情報記憶部141に格納し、その後、プロセス情報記憶部141に格納されているプロセス情報の中からユーザによって指定された検索条件を満たすプロセス情報を検索し、表示部16に表示する。【選択図】図１
2008217195.tif 000002
【特許請求の範囲】
【請求項１】
複数のコンピュータが、それぞれ、
プロセス情報記憶部と、
自コンピュータ上で実行されるプロセスのプロセス情報を収集し、自コンピュータ上のプロセス情報記憶部に格納するデバッグ制御手段とを備え、
前記複数のコンピュータの内の特定コンピュータが、
前記各プロセス情報記憶部に格納されているプロセス情報の中から、ユーザによって指定された検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を表示装置に表示する検索手段を備えたことを特徴とするデバッグ装置。
【請求項２】
請求項１記載のデバッグ装置において、
前記特定コンピュータを除いた各コンピュータが、前記特定コンピュータから送られてくるプロセス情報取得要求に応答して自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報を前記特定コンピュータに送信するプロセス情報読み出し手段を備え、且つ、
前記検索手段が、他のコンピュータに対してプロセス情報取得要求を送信し、該プロセス情報取得要求に応答して前記他のコンピュータから送られてきたプロセス情報および自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記表示装置に表示することを特徴とするデバッグ装置。
【請求項３】
請求項１記載のデバッグ装置において、
前記特定コンピュータを除いたコンピュータが、前記特定コンピュータから送られてくる検索条件を含んだプロセス情報取得要求に応答して、自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記特定コンピュータに送信する検索機能付きプロセス情報読み出し手段を備え、
前記検索手段が、自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索して前記表示装置に表示すると共に、他のコンピュータに対して前記検索条件を含んだプロセス情報取得要求を送信し、該プロセス情報取得要求に応答して前記他のコンピュータから送られてきたプロセス情報を前記表示装置に表示することを特徴とするデバッグ装置。
【請求項４】
請求項２記載のデバッグ装置において、
前記特定コンピュータが、検索結果記憶部を備え、且つ、
前記検索手段が、前記他のコンピュータから送られてきたプロセス情報および自コンピュータ上のプロセス情報記憶部から検索した前記検索条件を満たすプロセス情報を前記検索結果記憶部に格納し、新たな検索条件を含む絞り込み検索要求が入力されたとき、前記検索結果記憶部に格納されているプロセス情報の中から前記新たな検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記表示装置に表示することを特徴とするデバッグ装置。
【請求項５】
請求項３記載のデバッグ装置において、
前記特定コンピュータが、検索結果記憶部を備え、且つ、
前記検索手段が、自コンピュータ上のプロセス情報記憶部から検索した前記検索条件を満たすプロセス情報および前記他のコンピュータから送られてきたプロセス情報を前記検索結果記憶部に格納し、新たな検索条件を含む絞り込み検索要求が入力されたとき、前記検索結果記憶部に格納されているプロセス情報の中から前記新たな検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記表示装置に表示することを特徴とするデバッグ装置。
【請求項６】
複数のコンピュータが、それぞれ、自コンピュータ上で実行されるプロセスのプロセス情報を収集し、自コンピュータ上のプロセス情報記憶部に格納するプロセス情報収集ステップと、
前記複数のコンピュータの内の特定コンピュータが、前記各プロセス情報記憶部に格納されているプロセス情報の中から、ユーザによって指定された検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を表示装置に表示する検索ステップとを含むことを特徴とするデバッグ方法。
【請求項７】
請求項６記載のデバッグ方法において、
前記特定コンピュータを除いた各コンピュータが、前記特定コンピュータから送られてくるプロセス情報取得要求に応答して自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報を前記特定コンピュータに送信するプロセス情報読み出しステップを含み、且つ、
前記検索ステップでは、他のコンピュータに対してプロセス情報取得要求を送信し、該プロセス情報取得要求に応答して前記他のコンピュータから送られてきたプロセス情報および自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記表示装置に表示することを特徴とするデバッグ方法。
【請求項８】
請求項６記載のデバッグ方法において、
前記特定コンピュータを除いたコンピュータが、前記特定コンピュータから送られてくる検索条件を含んだプロセス情報取得要求に応答して、自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記特定コンピュータに送信する検索機能付きプロセス情報読み出しステップを含み、且つ、
前記検索ステップでは、自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索して前記表示装置に表示すると共に、他のコンピュータに対して前記検索条件を含んだプロセス情報取得要求を送信し、該プロセス情報取得要求に応答して前記他のコンピュータから送られてくるプロセス情報を前記表示装置に表示することを特徴とするデバッグ方法。
【請求項９】
コンピュータを、
自コンピュータ上で実行されるプロセスのプロセス情報を収集し、自コンピュータ上のプロセス情報記憶部に格納するデバッグ制御手段、
他のコンピュータ上のプロセス情報記憶部および自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から、ユーザによって指定された検索条件を満たすプロセス情報を検索し、表示装置に表示する検索手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多数のプロセスが実行される分散並列プログラム等のデバッグ作業を効率的に行うことができるデバッグ技術に関する。
【背景技術】
【０００２】
従来より、プログラムのデバッグを行うための伝統的な手法として、処理内容を記録する特殊なコードを予めプログラムに埋め込んでおき、プログラムの実行後、記録された処理の履歴情報から処理の流れを把握するトレース手法がある。
【０００３】
また、ユーザがプロセス名、プロセスＩＤ或いはプロセス番号を用いて指定したプロセスのプロセス情報のみを収集するようにしたデバッグ装置も従来から知られている（例えば、特許文献１、２参照）。
【０００４】
特許文献１に記載されているデバッグ装置では、ユーザがプロセス番号を用いて指定したプロセスのプロセス情報だけを収集し、収集したプロセス情報をユーザに分かりやすい形に変換（収集したプロセス情報では、数字１、２、…によって表されているプロセスの状態を、ユーザが理解できる文字列ＲＵＮ、ＲＥＡＤＹ、…に変換）してから表示するようにしている。
【０００５】
また、特許文献２に記載されているデバッグ装置では、ユーザがプロセス名或いはプロセスＩＤを用いて指定したプロセスのプロセス情報を収集し、更に、収集したプロセス情報中の、ユーザによって指定された項目のみをログファイルに格納するようにしている。
【０００６】
【特許文献１】特開２０００−１７２５２８号公報
【特許文献２】特開２００３−２５６１６１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
プログラム中に特殊なコードを埋め込む伝統的なトレース手法では、各プロセスで処理される個々の内容の妥当性を把握することはできるが、プロセス間の処理の流れの把握は困難である。特に、大規模システムにおける分散並列プログラムの実行時には、記録されるトレースの量が膨大で、その中から目的とするトレースを探す必要があり、デバッグ作業を効率的に行うことができないという問題がある。
【０００８】
また、特許文献１、２に記載されているデバッグ装置によれば、ユーザが指定したプロセスのプロセス情報のみを収集することができるので、事前にどのプロセスのプロセス情報がデバッグ調査のために必要になるのかが分かっている場合には、デバッグ作業を効率的に行うことができる。しかしながら、大規模システムにおける分散並列プログラム実行のように、実行されるプロセス数が多く、事前にどのプロセスのプロセス情報がデバッグのために必要になるのかが分かっていない場合には、デバッグ作業を効率的に行うことができない。
【０００９】
〔発明の目的〕
そこで、本発明の目的は、実行されるプロセス数が多く、事前にどのプロセスのプロセス情報がデバッグ調査のために必要になるのかが分かっていない場合においても、デバッグ作業を効率的に行えるようにすることにある。
【課題を解決するための手段】
【００１０】
本発明にかかる第１のデバッグ装置は、
複数のコンピュータが、それぞれ、
プロセス情報記憶部と、
自コンピュータ上で実行されるプロセスのプロセス情報を収集し、自コンピュータ上のプロセス情報記憶部に格納するデバッグ制御手段とを備え、
前記複数のコンピュータの内の特定コンピュータが、
前記各プロセス情報記憶部に格納されているプロセス情報の中から、ユーザによって指定された検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を表示装置に表示する検索手段を備えたことを特徴とする。
【００１１】
本発明にかかる第２のデバッグ装置は、第１のデバッグ装置において、
前記特定コンピュータを除いた各コンピュータが、前記特定コンピュータから送られてくるプロセス情報取得要求に応答して自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報を前記特定コンピュータに送信するプロセス情報読み出し手段を備え、且つ、
前記検索手段が、他のコンピュータに対してプロセス情報取得要求を送信し、該プロセス情報取得要求に応答して前記他のコンピュータから送られてきたプロセス情報および自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記表示装置に表示することを特徴とする。
【００１２】
本発明にかかる第３のデバッグ装置は、第１のデバッグ装置において、
前記特定コンピュータを除いたコンピュータが、前記特定コンピュータから送られてくる検索条件を含んだプロセス情報取得要求に応答して、自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記特定コンピュータに送信する検索機能付きプロセス情報読み出し手段を備え、
前記検索手段が、自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索して前記表示装置に表示すると共に、他のコンピュータに対して前記検索条件を含んだプロセス情報取得要求を送信し、該プロセス情報取得要求に応答して前記他のコンピュータから送られてきたプロセス情報を前記表示装置に表示することを特徴とする。
【００１３】
本発明にかかる第４のデバッグ装置は、第２のデバッグ装置において、
前記特定コンピュータが、検索結果記憶部を備え、且つ、
前記検索手段が、前記他のコンピュータから送られてきたプロセス情報および自コンピュータ上のプロセス情報記憶部から検索した前記検索条件を満たすプロセス情報を前記検索結果記憶部に格納し、新たな検索条件を含む絞り込み検索要求が入力されたとき、前記検索結果記憶部に格納されているプロセス情報の中から前記新たな検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記表示装置に表示することを特徴とする。
【００１４】
本発明にかかる第５のデバッグ装置は、第３のデバッグ装置において、
前記特定コンピュータが、検索結果記憶部を備え、且つ、
前記検索手段が、自コンピュータ上のプロセス情報記憶部から検索した前記検索条件を満たすプロセス情報および前記他のコンピュータから送られてきたプロセス情報を前記検索結果記憶部に格納し、新たな検索条件を含む絞り込み検索要求が入力されたとき、前記検索結果記憶部に格納されているプロセス情報の中から前記新たな検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記表示装置に表示することを特徴とする。
【００１５】
本発明にかかる第１のデバッグ方法は、
複数のコンピュータが、それぞれ、自コンピュータ上で実行されるプロセスのプロセス情報を収集し、自コンピュータ上のプロセス情報記憶部に格納するプロセス情報収集ステップと、
前記複数のコンピュータの内の特定コンピュータが、前記各プロセス情報記憶部に格納されているプロセス情報の中から、ユーザによって指定された検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を表示装置に表示する検索ステップとを含むことを特徴とする。
【００１６】
本発明にかかる第２のデバッグ方法は、第１のデバッグ方法において、
前記特定コンピュータを除いた各コンピュータが、前記特定コンピュータから送られてくるプロセス情報取得要求に応答して自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報を前記特定コンピュータに送信するプロセス情報読み出しステップを含み、且つ、
前記検索ステップでは、他のコンピュータに対してプロセス情報取得要求を送信し、該プロセス情報取得要求に応答して前記他のコンピュータから送られてきたプロセス情報および自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記表示装置に表示することを特徴とする。
【００１７】
本発明にかかる第３のデバッグ方法は、第１のデバッグ方法において、
前記特定コンピュータを除いたコンピュータが、前記特定コンピュータから送られてくる検索条件を含んだプロセス情報取得要求に応答して、自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索し、該検索したプロセス情報を前記特定コンピュータに送信する検索機能付きプロセス情報読み出しステップを含み、且つ、
前記検索ステップでは、自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から前記検索条件を満たすプロセス情報を検索して前記表示装置に表示すると共に、他のコンピュータに対して前記検索条件を含んだプロセス情報取得要求を送信し、該プロセス情報取得要求に応答して前記他のコンピュータから送られてくるプロセス情報を前記表示装置に表示することを特徴とする。
【００１８】
本発明にかかるプログラムは、
コンピュータを、
自コンピュータ上で実行されるプロセスのプロセス情報を収集し、自コンピュータ上のプロセス情報記憶部に格納するデバッグ制御手段、
他のコンピュータ上のプロセス情報記憶部および自コンピュータ上のプロセス情報記憶部に格納されているプロセス情報の中から、ユーザによって指定された検索条件を満たすプロセス情報を検索し、表示装置に表示する検索手段として機能させる。
【００１９】
〔作用〕
各コンピュータのデバッグ制御手段は、自コンピュータ上で実行されるプロセスのプロセス情報を収集し、自コンピュータ上のプロセス情報記憶部に格納する。特定コンピュータ上の検索手段は、各コンピュータのプロセス情報記憶部に格納されているプロセス情報の中から、ユーザによって指定された検索条件を満たすプロセス情報を検索し、表示装置に表示する。
【発明の効果】
【００２０】
本発明によれば、実行されるプロセス数が多く、事前にどのプロセスのプロセス情報がデバッグ調査のために必要になるのかが分かっていない場合においても、デバッグ作業を効率的に行うことが可能になる。その理由は、分散並列プログラムなどを実行する各コンピュータが、自コンピュータで実行されるプロセスのプロセス情報を自コンピュータ上のプロセス情報記憶部に格納し、特定コンピュータ上の検索手段が、各コンピュータのプロセス情報記憶部に格納されているプロセス情報の中からユーザによって指定された検索条件を満たすプロセス情報を検索するようにしているからである。即ち、ユーザによって指定された条件を満たすプロセスグループに限定したデバッグ調査を行うことができるので、デバッグ作業を効率的に行うことが可能になる。
【発明を実施するための最良の形態】
【００２１】
次に、本発明を実施するための最良の形態について図面を参照して詳細に説明する。
【００２２】
〔第１の実施の形態の構成の説明〕
図１を参照すると、本発明の第１の実施の形態は、分散並列プログラムを実行する複数のノード（コンピュータ）１、２−１〜２−ｎから構成され、それらはネットワーク３を介して相互に接続されている。
【００２３】
ノード１は、他のノード２−１〜２−ｎに対してプロセス情報の収集を指示する機能や、他のノード２−１〜２−ｎで収集されたプロセス情報を取得する機能などを有するノードであり、送受信手段１１と、デバッグ制御手段１２と、検索手段１３と、記憶装置１４と、キーボード等の入力部１５と、ＬＣＤなどの表示部１６とを備えている。なお、以下の説明では、ノード１を特定ノードという場合もある。
【００２４】
記憶装置１４は、ディスク装置などにより構成されるものであり、プロセス情報記憶部１４１と、第１の検索結果記憶部１４２と、第２の検索結果記憶部１４３とを備えている。
【００２５】
送受信手段１１は、ネットワーク３を介してデータを送受信する機能を有する。
【００２６】
デバッグ制御手段１２は、自ノード上で実行されるプロセスのプロセス情報を収集してプロセス情報記憶部１４１に格納する機能や、他のノード２−１〜２−ｎに対してプロセス情報収集指示を送信する機能を有する。
【００２７】
検索手段１３は、入力部１５から検索条件を含む検索要求が入力されたとき、他のノード２−１〜２−ｎに対してプロセス情報取得要求を送信する機能や、このプロセス情報取得要求に応答して他のノード２−１〜２−ｎから送られてきたプロセス情報をプロセス情報記憶部１４１に格納する機能や、プロセス情報記憶部１４１に格納されているプロセス情報の中から検索条件を満たすプロセス情報を検索する機能や、検索したプロセス情報を表示部１６に表示する機能や、検索したプロセス情報を第１の検索結果記憶部１４２に格納する機能を有する。
【００２８】
更に、検索手段１３は、入力部１５から検索結果を更に絞り込むための絞り込み検索要求（検索条件を含む）が入力されたとき、第１、第２の検索結果記憶部１４２、１４３の内の、現在絞り込み検索対象となっている検索結果記憶部から上記検索条件を満たすプロセス情報を検索する機能や、検索したプロセス情報を表示部１６に表示する機能や、検索したプロセス情報を第１、第２の検索結果記憶部１４２、１４３の内の、現在絞り込み検索対象となっていない検索結果記憶部に格納する機能を有する。
【００２９】
なお、送受信手段１１、デバッグ制御手段１２、検索手段１３は、ＣＰＵ（コンピュータ）によって実現可能であり、ＣＰＵによって実現する場合は、例えば、次のようにする。ＣＰＵを送受信手段１１、デバッグ制御手段１２、検索手段１３として機能させるためのプログラムを記録したディスク、半導体メモリ、その他の記録媒体を用意し、ＣＰＵに上記プログラムを読み取らせる。ＣＰＵは、読み取ったプログラムに従って自身の動作を制御し、自ＣＰＵ上に送受信手段１１、デバッグ制御手段１２、検索手段１３を実現する。
【００３０】
ノード２−１は、特定ノード１からの指示に従って、自ノード２−１上で実行されるプロセスのプロセス情報を収集したり、収集したプロセス情報を特定ノード１に送信する機能などを有するノードであり、送受信手段２１と、デバッグ制御手段２２と、プロセス情報読み出し手段２３と、記憶装置２４とを備えている。なお、他のノード２−２〜２−ｎもノード２−１と同様の構成を有している。
【００３１】
記憶装置２４は、ディスク装置などによって実現されるものであり、プロセス情報記憶部２４１を備えている。
【００３２】
送受信手段２１は、ネットワーク３を介してデータを送受信する機能を有する。
【００３３】
デバッグ制御手段２２は、特定ノード１から送られてくるプロセス情報収集指示に従って自ノード２−１上で実行されるプロセスのプロセス情報を収集し、プロセス情報記憶部２４１に格納する機能を有する。
【００３４】
プロセス情報読み出し手段２３は、特定ノード１から送られてくるプロセス情報取得要求に応答して、プロセス情報記憶部２４１に格納されているプロセス情報を特定ノード１へ送信する機能を有する。
【００３５】
なお、送受信手段２１、デバッグ制御手段２２、プロセス情報読み出し手段２３は、ＣＰＵ（コンピュータ）によって実現可能であり、コンピュータによって実現する場合は、例えば、次のようにする。ＣＰＵを送受信手段２１、デバッグ制御手段２２、プロセス情報読み出し手段２３として機能させるためのプログラムを記録したディスク、半導体メモリ、その他の記録媒体を用意し、ＣＰＵに上記プログラムを読み取らせる。ＣＰＵは、読み取ったプログラムに従って自身の動作を制御することにより、自ＣＰＵ上に送受信手段２１、デバッグ制御手段２２、プロセス情報読み出し手段２３を実現する。
【００３６】
〔第１の実施の形態の動作の説明〕
次に、本実施の形態の動作について詳細に説明する。
【００３７】
先ず、ユーザは、特定ノード１の入力部１５を用いてプロセス情報収集指示を入力する。このプロセス情報収集指示には、プロセス情報の収集条件（例えば、ブレークポイント）が含まれている。
【００３８】
特定ノード１上のデバッグ制御手段１２は、プロセス情報収集指示が入力されると、図２のフローチャートに示すように、先ず、他のノード２−１〜２−ｎに対してプロセス情報収集指示を送信し（ステップＳ２１）、次いで、ブレークポイントまで分散並列プログラムを実行し、その間に自ノード１において実行されたプロセスのプロセス情報を収集し、図３に示すようにプロセス情報記憶部１４１に格納する（ステップＳ２２）。その後、デバッグ制御手段１２は、プロセス情報収集完了通知待ち状態となる（ステップＳ２３）。図３を参照すると、プロセス情報には、スタック情報と、プロセス状態情報と、プロセス情報を収集したプロセスのプロセス名が含まれ、プロセス状態情報には、受信シグナルと、停止位置と、起動ノードとが含まれている。
【００３９】
一方、ノード２−１〜２−ｎ上のデバッグ制御手段２２は、特定ノード１からプロセス情報収集指示が送られてくると、ブレークポイントまで分散並列プロセスを実行し、その間に自ノード２−１〜２−ｎにおいて実行されたプロセスのプロセス情報を収集し、プロセス情報記憶部２４１に格納する。その後、デバッグ制御手段２２は、プロセス情報収集完了通知を特定ノード１へ送信する。
【００４０】
プロセス情報収集完了待ち状態（ステップＳ２３）にあるデバッグ制御手段１２は、プロセス情報収集完了通知を受信すると、他の全てのノード２−１〜２−ｎでプロセス情報の収集が完了したか否かを判定する（ステップＳ２４）。
【００４１】
そして、プロセス情報の収集が完了していないノードが存在すると判定した場合（ステップＳ２４がＮＯ）は、プロセス情報収集完了通知待ち状態に戻る（ステップＳ２３）。これに対して、他の全てのノード２−１〜２−ｎにおいて、プロセス情報の収集が完了したと判定した場合（ステップＳ２４がＹＥＳ）は、表示部１６に全てのノード１、２−１〜２−ｎでプロセス情報の収集が完了したことを表示する（ステップＳ２５）。
【００４２】
この表示を見て、全てのノード１、２−１〜２−ｎにおいてプロセス情報の収集が完了したことを認識したユーザは、入力部１５から検索要求を入力する。この検索要求には、デバッグ調査に使用するプロセス情報が満たすべき条件が、検索条件として含まれている。検索条件としては、例えば、プロセスの受信シグナル、プロセスの停止位置、スタック情報に含まれている呼び出し関数、プロセスの起動ノードなどがある。
【００４３】
図４のフローチャートに示すように、検索手段１３は、検索要求が入力されると（ステップＳ４１がＹＥＳ）、他のノード２−１〜２−ｎに対してプロセス情報取得要求を送信し（ステップＳ４２）、その後、プロセス情報の受信待ち状態になる（ステップＳ４３）。
【００４４】
一方、ノード２−１〜２−ｎ上のプロセス情報読み出し手段２３は、特定ノード１からプロセス情報取得要求が送られてくると、自ノード２−１〜２−ｎ上のプロセス情報記憶部２４１に格納されているプロセス情報を読み出し、特定ノード１へ送信する。
【００４５】
特定ノード１上の検索手段１３は、ノード２−ｉ（１≦ｉ≦ｎ）からプロセス情報が送られてくると、それをプロセス情報記憶部１４１に格納し（ステップＳ４４）、その後、全てのノード２−１〜２−ｎからプロセス情報を受信したか否かを判定する（ステップＳ４５）。
【００４６】
そして、プロセス情報を受信していないノードが存在すると判定した場合（ステップＳ４５がＮＯ）は、ステップＳ４３に戻る。これに対して、全てのノード２−１〜２−ｎからプロセス情報を受信したと判定した場合（ステップＳ４５がＹＥＳ）は、プロセス情報記憶部１４１に格納されているプロセス情報の中から検索条件に合致するプロセス情報を検索し、第１の検索結果記憶部１４２に格納する（ステップＳ４６）。その後、検索手段１３は、検索結果を表示部１６に表示し（ステップＳ４７）、更に、絞り込み検索要求が入力されたとき、第１、第２の検索結果記憶部１４２、１４３の内のどちらを検索するのかを示す絞り込み検索対象情報を、最新の検索結果が格納されている第１の検索結果記憶部１４２を示すものにする（ステップＳ４８）。
【００４７】
今、例えば、プロセス情報記憶部１４１の内容が図３に示すものであり、検索要求に含まれている検索条件が「スタック情報に呼び出し関数sub1()が含まれているプロセス情報」であったとすると、プロセス名「Ｐ１」のプロセス情報が検索されることになる。
【００４８】
ユーザは、表示部１６に表示されたプロセス情報（検索結果）を見て、更に、デバッグ調査に使用するプロセス情報を絞り込みたい場合は、入力部１５から絞り込み検索要求を入力する。この絞り込み検索要求にも、検索条件が含まれている。
【００４９】
検索手段１３は、絞り込み検索要求が入力されると（ステップＳ４９がＹＥＳ）、第１、第２の検索結果記憶部１４２、１４３の内の、絞り込み検索対象情報によって示されている検索結果記憶部から検索条件を満たすプロセス情報を検索して表示部１６に表示すると共に、他方の検索結果記憶部に格納する（ステップＳ５０、Ｓ５１）。その後、検索手段１３は、絞り込み検索対象情報を変更する（ステップＳ５２）。
【００５０】
今、例えば、絞り込み検索対象情報が第１の検索結果記憶部１４２を示しているときに絞り込み検索要求が入力されたとすると、検索手段１３は、ステップＳ５０において、第１の検索結果記憶部１４２に格納されているプロセス情報の中から検索条件を満たすプロセス情報を検索し、ステップＳ５１においてステップＳ５０で検索したプロセス情報を表示部１６に表示すると共に、第２の検索結果記憶部１４３に格納し、ステップＳ５２において絞り込み検索対象情報を第２の検索結果記憶部１４３を示すものに変更することになる。
【００５１】
ユーザは、デバッグ調査が終了すると、入力部１５から終了指示を入力する。検索手段１３は、終了指示が入力されると（ステップＳ５３がＹＥＳ）、その処理を終了する。
【００５２】
〔第１の実施の形態の効果〕
本実施の形態によれば、実行されるプロセス数が多く、事前にどのプロセスのプロセス情報がデバッグのために必要になるのかが分かっていない場合においても、デバッグ作業を効率的に行うことが可能になる。その理由は、分散並列プログラムなどを実行する各ノード１、２−１〜２−ｎが、自ノード１、２−１〜２−ｎで実行されるプロセスのプロセス情報を自ノード上１、２−１〜２−ｎのプロセス情報記憶部１４１、２４１に格納し、特定ノード１上の検索手段１３が、各ノード１、２−１〜２−ｎのプロセス情報記憶部１４１、２４１に格納されているプロセス情報の中からユーザによって指定された検索条件を満たすプロセス情報を検索するようにしているからである。即ち、ユーザによって指定された条件を満たすプロセスグループに限定したデバッグ調査を行うことができるので、デバッグ作業を効率的に行うことが可能になる。
【００５３】
〔第２の実施の形態〕
次に、本発明の第２の実施の形態について説明する。本実施の形態は、各ノードが特定ノードにプロセス情報を送信する際、特定ノードから指定された検索条件を満たすプロセス情報のみを送信するようにしたことを特徴とする。
【００５４】
〔第２の実施の形態の構成の説明〕
図５を参照すると、本発明の第２の実施の形態は、分散並列プログラムを実行する複数のノード１ａ、２−１ａ〜２−ｎａから構成され、各ノード１ａ、２−１ａ〜２−ｎａはネットワーク３により相互に接続されている。
【００５５】
本実施の形態のノード１ａは、検索手段１３の代わりに検索手段１３ａを備えている点が、図１に示したノード１と相違している。なお、他の図１と同一符号は、同一部分を表している。また、以下の説明において、ノード１ａを特定ノードと呼ぶ場合もある。
【００５６】
検索手段１３ａは、入力部１５から検索条件を含む検索要求が入力されたとき、他のノード２−１ａ〜２−ｎａに対して、上記検索条件を含んだプロセス情報取得要求を送信する機能や、このプロセス情報取得要求に応答して各ノード２−１ａ〜２−ｎａから送られてきたプロセス情報を表示部１６に表示したり、第１の検索結果記憶部１４２に格納する機能や、プロセス情報記憶部１４１に格納されているプロセス情報の中から検索条件を満たすプロセス情報を検索する機能などを有する。
【００５７】
なお、送受信手段１１、デバッグ制御手段１２、検索手段１３ａは、ＣＰＵ（コンピュータ）に所定のプログラムを実行させることにより実現可能である。
【００５８】
ノード２−１ａは、プロセス情報読み出し手段２３の代わりに検索機能付き読み出し手段２３ａを備えている点が、図１に示したノード２−１と相違している。なお、他の図１と同一符号は、同一部分を表している。また、他のノード２−２ａ〜２−ｎａもノード２−１ａと同一の構成を有している。
【００５９】
検索機能付きプロセス情報読み出し手段２３ａは、特定ノード１ａから検索条件を含むプロセス情報取得要求が送られてきたとき、プロセス情報記憶部２４１に格納されているプロセス情報から上記検索条件を満たすプロセス情報を検索し、特定ノード１ａへ送信する機能を有する。
【００６０】
なお、送受信手段２１、デバッグ制御手段２２、検索機能付きプロセス情報読み出し手段２３ａは、ＣＰＵ（コンピュータ）に所定のプログラムを実行させることにより実現可能である。
【００６１】
〔第２の実施の形態の動作の説明〕
次に、本実施の形態の動作について説明する。本実施の形態と第１の実施の形態とでは、検索要求が入力された場合の動作が異なるだけであるので、この場合の動作についてのみ説明する。
【００６２】
ユーザが、特定ノード１ａの入力部１５から検索条件を含んだ検索要求を入力すると（図６のステップＳ６１がＹＥＳ）、検索手段１３ａは、他のノード２−１ａ〜２−ｎａに対して、上記検索条件を含んだプロセス情報取得要求を送信し（ステップＳ６２）、次いで、自ノード１ａ上のプロセス情報記憶部１４１から上記検索条件に適合したプロセス情報を検索し、第１の検索結果記憶部１４２に格納する（ステップＳ６３）。その後、検索手段１３ａは、検索結果受信待ち状態となる（ステップＳ６４）。
【００６３】
一方、特定ノード１ａから検索条件を含んだプロセス情報取得要求が送られてきた各ノード２−１ａ〜２−ｎａ上の検索機能付きプロセス情報読み出し手段２３ａは、自ノード２−１ａ〜２−ｎａ上のプロセス情報記憶部２４１から上記検索条件を満たすプロセス情報を検索し、検索したプロセス情報を特定ノード１ａへ送信する。
【００６４】
検索手段１３ａは、ノード２−ｊａ（０≦ｊ≦ｎ）から検索結果が送られてくると、それを第１の検索結果記憶部１４２に格納し（ステップＳ６５）、その後、全てのノード２−１ａ〜２−ｎａから検索結果を受信したか否かを判定する（ステップＳ６６）。そして、検索結果を受信していないノードが存在すると判定した場合（ステップＳ６６がＮＯ）は、ステップＳ６４に戻る。これに対して、全てのノード２−１ａ〜２−ｎａから検索結果を受信済みであると判定した場合（ステップＳ６６がＹＥＳ）は、第１の検索結果記憶部１４２に格納されている検索結果（プロセス情報）を表示部１６に表示し（ステップＳ６７）、その後、絞り込み検索対象情報を、最新の検索結果が格納されている第１の検索結果記憶部１４２を示すものにする（ステップＳ６８）。
【００６５】
なお、絞り込み検索要求が入力された場合（ステップＳ６９がＹＥＳ）は、前述した図４のステップＳ５０〜Ｓ５２と同様の処理が行われ（ステップＳ７０）、終了指示が入力された場合（ステップＳ７１がＹＥＳ）は、処理終了となる。
【００６６】
〔第２の実施の形態の効果〕
本実施の形態によれば、各ノード２−１ａ〜２−ｎａが検索機能付きプロセス情報読み出し手段２３ａを備え、特定ノード１ａから検索条件を含むプロセス情報取得要求が送られてきた場合、上記検索条件を満たすプロセス情報のみを特定ノード１ａに送信するようにしているので、特定ノード１ａの負荷を少なくすることができる。
【産業上の利用可能性】
【００６７】
大規模システムにおける分散並列プログラムに対するデバッグ作業に適用すると好適である。
【図面の簡単な説明】
【００６８】
【図１】本発明の第１の実施の形態の構成例を示すブロック図である。
【図２】デバッグ制御手段１２の処理例を示すフローチャートである。
【図３】プロセス情報記憶部１４１の内容例を示す図である。
【図４】検索手段１３の処理例を示すフローチャートである。
【図５】本発明の第２の実施の形態の構成例を示すブロック図である。
【図６】検索手段１３ａの処理例を示すフローチャートである。
【符号の説明】
【００６９】
１、１ａ…ノード（コンピュータ）
１１…送受信手段
１２…デバッグ制御手段
１３、１３ａ…検索手段
１４…記憶装置
１４１…プロセス情報記憶部
１４２…第１の検索結果記憶部
１４３…第２の検索結果記憶部
１５…入力部
１６…表示部
２−１〜２−ｎ、２−１ａ〜２−ｎａ…ノード（コンピュータ）
２１…送受信手段
２２…デバッグ制御部
２３…プロセス情報読み出し手段
２３ａ…検索機能付きプロセス情報読み出し手段
２４…記憶装置
２４１…プロセス情報記憶部
３…ネットワーク
【図１】
2008217195.tif 000003
【図２】
2008217195.tif 000004
【図３】
2008217195.tif 000005
【図４】
2008217195.tif 000006
【図５】
2008217195.tif 000007
【図６】
2008217195.tif 000008