(57)【特許請求の範囲】
【請求項１】
ネットワークで接続された各々ノードがメモリを備える計算機で構成されたメモリ分散型並列計算機は、
第一の時間間隔でデータ受信領域のモニタデータを参照し、表示手段、記録手段、他のプログラムの少なくとも一つへ出力する手段を含む収集ノードと、
前記収集ノードからの制御メッセージに基づいて、各々が前記収集ノードの持つデータ受信領域へ、前記収集ノードがモニタデータを参照する処理とは独立に第二の時間間隔でモニタデータを書き込む手段を含む複数の採集ノードとを有することを特徴とするメモリ分散型並列計算機。
【請求項２】
前記収集ノードは、採取対象のモニタの種類と採取間隔の少なくとも一方を定めた制御メッセージを送信する手段を有し、前記制御メッセージ中のモニタの種類及び採取間隔の少なくとも一方は、採集ノードに応じて定められていることを特徴とする請求項１記載のメモリ分散型並列計算機。
【請求項３】
ネットワークで接続された各々計算機がメモリを備える複数のモニタ対象計算機である採集ノードとそれをモニタするメモリを備えた計算機である収集ノードで構成されるメモリ分散型並列計算機システムのモニタデータ収集方法において、
前記収集ノードは採取対象のモニタの種類と採取間隔の少なくとも一方を定めた制御メッセージを前記採集ノードに送信し、
前記制御メッセージに基づいて、各々の採集ノードが前記収集ノードの持つデータ受信領域へ第一の時間間隔でモニタデータを書き込み、
前記収集ノードは、前記採集ノードがモニタデータを書き込む処理とは独立に第二の時間間隔でデータ受信領域の前記モニタデータを参照し、表示手段、記録手段、他のプログラムの少なくとも一つへ出力することを特徴とするモニタデータ収集方法。
【請求項４】
前記制御メッセージ中のモニタの種類及び採取間隔の少なくとも一方は、採集ノードに応じて定められていることを特徴とする請求項３記載のモニタデータ収集方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のプロセサを高速ネットワークで結合し、全プロセサの稼動状況を管理する管理ノードを具備した並列計算機システムにおけるモニタデータの収集方法に関する。
【０００２】
【従来の技術】
従来のモニタデータ採取方法は、収集ノードがモニタ採取ノードに対して問い合わせを行い、採取ノードからのデータの到着ごとに割込みが発生してそれを契機にデータの収集を行う方法であった。
【０００３】
この方法では、採取ノードからのデータの到着ごとに収集ノードでの割込みが発生するため、採取ノードの数が多くなるほど、また、採取間隔が短くなるほど、収集ノードのＣＰＵオーバヘッドが多くなり他の処理への影響が大きくなる。
【０００４】
さらに、収集ノードでの負荷が増加すると受信処理が間に合わなくなり採取ノードからのデータがあふれてしまうことになる。この場合、収集ノードで表示装置に出力するデータは古いものになり、リアルタイムでの表示は不可能である。
【０００５】
なお、この種の技術として関連するものが、例えば、特開平４−６９７６５号公報に示される。
【０００６】
【発明が解決しようとする課題】
このように、収集ノードから採取ノードへの問い合わせや、収集ノードでの割込みの発生は収集ノードのＣＰＵオーバヘッドを増加させ、リアルタイムでのモニタ情報の採取を難しくする。
【０００７】
本発明の目的は、採取ノードの数が増加しても、採取ノードでの採取間隔が短縮しても、収集ノードでの負荷が高くなりすぎず、常に可能な最新モニタデータを表示装置に出力できる並列計算機システムにおけるモニタデータ収集方法を提供することにある。
【０００８】
【課題を解決するための手段】
本発明は、複数のコンソール装置を持たない計算ノードを高速ネットワークで結合し、モニタ情報を収集する収集ノードと収集ノードに接続された表示装置を具備し、通信手段として非同期で送信先のメモリに直接書き込む方法を持つ並列計算機システムにおいて、採取ノードが採取したモニタデータを一定の間隔で収集ノードに送り出し、ノードごとに決まったデータ受信領域に割り込みを発生せずに書き込み、収集ノードがそのデータ受信領域を任意の時間間隔で参照することによりデータを取り出すようにしたものである。
【０００９】
本発明における並列計算機システムのモニタデータ収集方法は、採取ノード主導でモニタデータを収集ノードのメモリに直接書き込むことにより、リアルタイムに近いモニタ情報が得られ、また採取ノードの数が増加したり、採取の時間間隔が短い場合でも、収集ノードの処理能力に応じた時間間隔を設定できる。
【００１０】
【発明の実施の形態】
以下、本発明の一実施例を図面を参照して詳細に説明する。なお、これで本発明が限定されるものではない。
【００１１】
実施例の並列計算機システム(1000)のハードウェア構成は、図1に示すようにプロセッサとメモリを有する16台のノード群(10)、(11)、(12)、(13)、(20)、(21)、(22)、(23)、(30)、(31)、(32)、(33)、(40)、(41)、(42)、(43)とこれらのノード群を結合するネットワーク装置(90)、ネットワークインタフェース機構(91)とメッセージログファイルが存在するディスク装置(80)、(81)、(82)、(83)、メッセージ管理ファイルが存在するディスク装置(84)、(85)、(86)、(87)とノード管理ファイルが存在するディスク装置(88)とシステムの操作や監視をするコンソール装置(70)とからなっている。
【００１２】
また、これらのノード群を論理的に分割して、ノード群(10)、(11)、(12)、(13) はノードグループＡ，ノード群(20),(21),(22),(23)をノードグループＢ，ノード群(30),(31),(32),(33)をノードグループＣ，およびノード群(40)、(41)、(42)、 (43)をノードグループＤとし、特にノード(10)を管理ノード兼サブ管理ノード、ノード(20)、(30)、(40)をサブ管理ノードとする。
【００１３】
次に、本実施例の基本的な概念を図1で説明する。
【００１４】
モニタデータの採取は、各ノード(10−43)上のプログラムが採取するモニタデータをネットワーク(90)を介して管理ノードに送信し、管理ノード(10)はモニタデータをリアルタイムでコンソール装置(70)に表示する。
【００１５】
図2に示すソフトウェア構成は、ＯＳ(01)の中のモニタ採取制御プログラム(02)、その中のモニタ採取ユーザインタフェース(03)、制御メッセージ送信プロセス(04)、モニタデータ受信プロセス(05)、モニタデータ加工プロセス(06)、およびモニタデータ表示プロセス(07)、さらにＯＳ(01)の中の制御メッセージ受信プロセス(08)、モニタデータ採取プロセス(09)およびデータ送信プロセス(010)からなっている。
【００１６】
なお、制御メッセージ受信プロセス(08)、モニタデータ採取プロセス(09)、およびモニタデータ送信プロセス(010)は全ノードに存在し、モニタ採取ユーザインタフェース(03)、制御メッセージ送信プロセス(04)、モニタデータ受信プロセス(05)、およびモニタデータ表示プロセス(07)は管理ノードだけに存在する。
【００１７】
また、モニタデータの受信領域の構成を図3に示す。
【００１８】
モニタデータを受信する管理ノード(10)上のメモリには、モニタデータ受信領域(110)があり、ノード(11-43)ごとの受信領域(111-143)がある。各受信領域(111-143)の中には受信完了フラグ(1111-1431)がある。
【００１９】
モニタデータの採取時のＯＳの動作例を図4のフロ−チャ−トに示す。
【００２０】
モニタデータの採取は、管理ノード(10)上のモニタ採取制御プログラム(02)が起動されることによって開始する。モニタ採取ユーザインタフェース(03)により採取対象のモニタの種類および採取間隔を決定し（４０２）、制御メッセージ送信プロセス(04)によりモニタの種類および採取間隔を含んだモニタ採取要求メッセージを各ノード(11-43)に送信する（４０３）。
【００２１】
各ノード(11-43)では、制御メッセージ受信プロセス(08)がモニタ採取要求メッセージを受信し（４０９）、モニタデータ採取プロセス(09)が指定された採取間隔でモニタデータ採取を開始する（４１０）。
【００２２】
各ノード(11-43)は採取したモニタデータを、モニタデータ送信プロセス(010) により管理ノード(10)のモニタデータ用受信領域(110)の中の各ノードごとに設けられた受信領域(111-143)へネットワーク(90)を介し送信する（４１１）。モニタデータ用受信領域(110)は、物理メモリ領域を仮想アドレス空間に固定的に割り付けたものであり、各ノード(11-43)のモニタデータ送信プロセス(010)はあらかじめ各ノード用受信領域(111-143)への送信権と受信領域アドレス情報を獲得していて、そのアドレスを指定してデータを送信する。
【００２３】
管理ノード(10)のネットワークインタフェース機構(91)は、各ノード(11-43) からネットワーク(90)経由でデータが到着したら、割込みを発生させず、ただちに指定されたアドレスの示す受信領域(111-143)にデータを直接書き込み、受信完了フラグ(1111-1431)をセットする。管理ノード(10)のネットワークインタフェース機構(91)は、受信プロセス(05)が受信領域(111-143)に格納された前回のモニタデータをまだ処理していなくても、次のデータをオーバラップして書き込むことができる。
【００２４】
管理ノード(01)は、モニタデータ受信プロセス(05)によりモニタデータ受信領域(110)に受信し（４０４）、モニタデータ表示プロセス(07)により受信領域(111-143)を任意の間隔で参照し、参照した時点で各ノードの受信領域(111-143)に格納されているデータをコンソール装置(70)に出力する。さらにモニタデータログファイル(80)に出力する。
【００２５】
なお、制御メッセージ受信プロセス(08)、モニタデータ採取プロセス(09)、およびモニタデータ送信プロセス(010)は全ノードに存在し、制御メッセージ送信プロセス(04)、モニタデータ受信プロセス(05)、およびモニタデータ加工プロセス(06)は管理ノードとサブ管理ノードに存在し、モニタ採取ユーザインタフェース(03)、およびモニタデータ表示プロセス(07)は管理ノードだけに存在する。
【００２６】
また、モニタデータの受信領域の構成を図5に示す。
【００２７】
ノードグループＡ，Ｂ，ＣおよびＤに属するノードからのモニタデータを受信するサブ管理ノード(10)、(20)、(30)、(40)上のメモリには、モニタデータ受信領域(310)、(320)、(330)、(340)があり、各ノードごとの受信領域(311-313)、(321-323)、(331-333)、(341-343)がある。サブ管理ノードからのモニタデータを受信する管理ノード(10)上のメモリには、モニタデータ受信領域(200)があり、サブ管理ノード(10)、(20)、(30)、(40)ごとの受信領域(210)、(220)、(230)、(240)がある。
【００２８】
モニタデータの採取は、管理ノード(10)上のモニタ採取制御プログラム(02)が起動されることによって開始する。モニタ採取ユーザインタフェースにより採取対象のモニタの種類および採取間隔を決定し、制御メッセージ送信プロセス(04) によりモニタの種類および採取間隔を含んだモニタ採取要求メッセージをサブ管理ノード(10)、(20)、(30)、(40)に送信する。
【００２９】
サブ管理ノード(10)、(20)、(30)、(40)では、制御メッセージ受信プロセス(08)によりモニタ採取要求メッセージを受信し、制御メッセージ送信プロセスによりそれぞれノードグループＡ(11-13)，Ｂ(21-23)，Ｃ(31-33)，Ｄ(41-43)に属する各ノードにモニタ採取要求メッセージを送信する。
【００３０】
各ノード(11-43)では、制御メッセージ受信プロセス(08)がモニタ採取要求メッセージを受信し、モニタデータ採取プロセス(09)が指定された採取間隔でモニタデータ採取を開始する。各ノード(11-43)は採取したモニタデータを、モニタデータ送信プロセス(010)によりサブ管理ノード(10)、(20)、(30)、(40)のモニタデータ受信領域(310)、(320)、(330)、(340)の中の各ノードごとに設けられた受信領域(311-313)、(321-323)、(331-333)、(341-343)へネットワーク(90)を介し送信する。モニタデータ用受信領域(311-313)、(321-323)、(331-333)、(341-343)は、物理メモリ領域を仮想アドレス空間に固定的に割り付けたものであり、各ノード(11-43)のモニタデータ送信プロセス(010)はあらかじめ各ノード用受信領域(311-313)、(321-323)、(331-333)、(341-343)への送信権と受信領域アドレス情報を獲得していて、そのアドレスを指定してデータを送信する。受信完了フラグ(1111-1431)をセットする。
【００３１】
サブ管理ノード(10、20、30、40)のネットワークインタフェース機構(91)は、各ノード(11-43)からネットワーク(90)経由でデータが到着したら、割込みを発生させず、ただちに指定されたアドレスの示す受信領域(311-313)、(321-323)、(331-333)、(341-343)にデータを直接書き込み、受信完了フラグ(3111-3131)、(3211-3231)、(3311-3331)、(3411-3431)をセットする。
【００３２】
サブ管理ノード(10)、(20)、(30)、(40)は、受信領域(311-313)、(321-323)、 (331-333)、(341-343)に到着したデータをモニタデータ加工プロセス(06)によりノードグループごとにまとめてデータ量を減らし、管理ノード(01)にネットワーク(09)を介して送信する。
【００３３】
モニタデータ用受信領域(200)は、物理メモリ領域を仮想アドレス空間に固定的に割り付けてあり、各サブ管理ノード(10)、(20)、(30)、(40)のモニタデータ送信プロセス(010)は各ノード用受信領域(210)、(220)、(230)、(240)への送信権と受信領域アドレス情報を獲得していて、そのアドレスを指定してデータを送信する。
【００３４】
管理ノード(10)のネットワークインタフェース機構(91)は、各サブ管理ノード (10)、(20)、(30)、(40)からネットワーク(90)経由でデータが到着したら、割込みを発生させず、ただちに指定されたアドレスの示す受信領域(210)、(220)、(230)、 (240)にデータを直接書き込み、受信完了フラグ(2101)、(2201)、(2301)、(2401)をセットする。
【００３５】
管理ノード(01)は、モニタデータ受信プロセス(05)によりモニタデータを受信領域(200)に受信し、モニタデータ表示プロセス(07)により受信領域を任意の間隔で参照し、参照した時点で各ノードの受信領域(210-240)に格納されているデータをコンソール装置(70)に出力する。
【００３６】
【発明の効果】
本発明によれば、採取ノードが収集したノードごとのモニタデータを収集ノードの受信領域に割込みを発生せず直接書き込むため、収集ノードは採取とは非同期に任意の間隔でデータを表示することができ、ノードの数が増えていずれかのノードに異常が発生する可能性が高くなっても収集プロセスがその影響を受けなくて済むという効果がある。
【００３７】
また、中間の管理ノードに一旦集めて必要な編集を行ってから収集ノードに集めることにより、収集ノードへの負荷の集中を防ぐことができるという効果がある。
【図面の簡単な説明】
【図１】並列計算機システムのシステム構成図である。
【図２】ソフトウェア構成図である。
【図３】管理ノードモニタデータ受信領域を示す図である。
【図４】モニタデータ採取時のＯＳの動作例を示すフロ−チャ−トである。
【図５】管理ノードおよびサブ管理ノードモニタデータ受信領域を示す図である。
【符号の説明】
01：ＯＳ，  02：モニタ採取制御プログラム、
03：モニタ採取ユーザインタフェース、
04：制御メッセージ送信プロセス、
05：モニタデータ受信プロセス、  06：モニタデータ加工プロセス、
07：モニタデータ表示プロセス、  08：制御メッセージ受信プロセス、
09：モニタデータ採取プロセス、  010：モニタデータ送信プロセス、
11、12、13、21、22、23、31、32、33、41、42、43：ノード、
10：管理ノード・サブ管理ノード、  20、30、40：サブ管理ノード、
70：コンソール装置、  80：モニタデータログファイル、
90：ネットワーク、  91：ネットワークインタフェース機構、
110：管理ノードモニタデータ受信領域、
200：管理ノード(10)モニタデータ受信領域、
310：サブ管理ノード(10)モニタデータ受信領域、
320：サブ管理ノード(20)モニタデータ受信領域、
330：サブ管理ノード(30)モニタデータ受信領域、
340：サブ管理ノード(40)モニタデータ受信領域。
【図１】
0003678036.tif 000002
【図２】
0003678036.tif 000003
【図３】
0003678036.tif 000004
【図４】
0003678036.tif 000005
【図５】
0003678036.tif 000006