(57)【特許請求の範囲】
【請求項１】
複数のノード装置を含む情報処理システムの試験方法であって、前記複数のノード装置のそれぞれは、プロセッサと、前記プロセッサがアクセスするローカルメモリと、を有し、前記複数のノード装置の１つはマスタノードとして動作し、前記マスタノード以外のノード装置は、スレーブノードとして動作しており、前記情報処理システムは、前記複数のノード装置がアクセス可能な共有メモリを有し、
前記マスタノードのプロセッサまたはスレーブノードのプロセッサは、前記スレーブノードに対して実行させる指令の実行先ノードを指定する指令実行先情報と前記指令の実行先ノードをさらに絞り込む場合に用いられる特定ノード指定情報を前記共有メモリに事前に設定しておき、
前記マスタノードのプロセッサは、
前記マスタノードまたは前記スレーブノードで実行される指令の入力を受け付け、
前記指令に応じて設定される属性情報であって、前記指令の実行先を分類する際に用いられる前記属性情報を前記マスタノードのローカルメモリから読み出して参照し、
前記入力を受け付けた指令に対応する属性情報が特定ノードでの試験の実行を指定する場合に、前記指令実行先情報と前記特定ノード指定情報との論理演算により、前記指令実行先情報で指定される実行先ノードから、前記指令を実行するスレーブノードを選択し、
前記共有メモリに前記指令を設定するとともに、前記共有メモリへの前記スレーブノードからの前記指令の実行結果の報告を監視し、
前記スレーブノードのそれぞれのプロセッサは、前記共有メモリに指令が設定されたか否かを監視し、前記設定された指令を実行し、前記実行した指令の実行結果を前記共有メモリに格納し、
前記マスタノードのプロセッサは、前記共有メモリから前記指令が設定されたスレーブノードでの前記指令の実行結果を取得する、情報処理システムの試験方法。
【請求項２】
複数のノード装置と
前記複数のノード装置がアクセス可能な共有メモリと、を備え
前記複数のノード装置のそれぞれは、
プロセッサと、
前記プロセッサがアクセスするローカルメモリと、を有し、
前記複数のノード装置の１つはマスタノードとして動作し、前記マスタノード以外のノード装置は、スレーブノードとして動作し、
前記マスタノードのプロセッサまたはスレーブノードのプロセッサは、前記スレーブノードに対して実行させる指令の実行先ノードを指定する指令実行先情報と前記指令の実行先ノードをさらに絞り込む場合に用いられる特定ノード指定情報を前記共有メモリに事前に設定しておき、
前記マスタノードのプロセッサは、
前記マスタノードまたは前記スレーブノードで実行される指令の入力を受け付け、
前記指令に応じて設定される属性情報であって、前記指令の実行先を分類する際に用いられる前記属性情報を前記マスタノードのローカルメモリから読み出して参照し、
前記入力を受け付けた指令に対応する属性情報が特定ノードでの試験の実行を指定する場合に、前記指令実行先情報と前記特定ノード指定情報との論理演算により、前記指令実行先情報で指定される実行先ノードから、前記指令を実行するスレーブノードを選択し、
前記共有メモリに前記指令を設定するとともに、前記共有メモリへの前記スレーブノードからの前記指令の実行結果の報告を監視し、
前記スレーブノードのそれぞれのプロセッサは、前記共有メモリに指令が設定されたか否かを監視し、前記設定された指令を実行し、前記実行した指令の実行結果を前記共有メモリに格納し、
前記マスタノードのプロセッサは、前記共有メモリから前記指令が設定されたスレーブノードでの前記指令の実行結果を取得する情報処理システム。
【請求項３】
複数のノード装置を含む情報処理システムの試験プログラムであって、前記複数のノード装置のそれぞれは、プロセッサと、前記プロセッサがアクセスするローカルメモリと、を有し、前記複数のノード装置の１つはマスタノードとして動作し、前記マスタノード以外のノード装置は、スレーブノードとして動作しており、前記情報処理システムは、前記複数のノード装置がアクセス可能な共有メモリを有し、前記情報処理システムの試験プログラムは、第１のプログラムと第２のプログラムとを有し、前記第１のプログラムを実行する前記マスタノードのプロセッサまたは前記第２のプログラムを実行するスレーブノードのプロセッサは、前記スレーブノードに対して実行させる指令の実行先ノードを指定する指令実行先情報と前記指令の実行先ノードをさらに絞り込む場合に用いられる特定ノード指定情報を前記共有メモリに事前に設定しておき、
前記第１のプログラムは、前記マスタノードのプロセッサに、
前記マスタノードまたは前記スレーブノードで実行される指令の入力を受け付けることと、
前記指令に応じて設定される属性情報であって、前記指令の実行先を分類する際に用いられる前記属性情報を前記マスタノードのローカルメモリから読み出して参照することと、
前記入力を受け付けた指令に対応する属性情報が特定ノードでの試験の実行を指定する場合に、前記指令実行先情報と前記特定ノード指定情報との論理演算により、前記指令実行先情報で指定される実行先ノードから、前記指令を実行するスレーブノードを選択することと、
前記共有メモリに前記スレーブノードに対して実行させる指令を設定するとともに、前記共有メモリへの前記スレーブノードからの前記指令の実行結果の報告を監視することと、を実行させ、
前記第２のプログラムは、前記スレーブノードのそれぞれのプロセッサに、前記共有メモリに指令が設定されたか否かを監視させ、前記設定された指令を実行させ、前記実行した指令の実行結果を前記共有メモリに格納させ、
前記第１のプログラムは、さらに、前記マスタノードのプロセッサに、前記共有メモリから前記指令が設定されたスレーブノードでの前記指令の実行結果を取得させる情報処理システムの試験プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムの試験方法、情報処理システム、および試験プログラムに関する。
【背景技術】
【０００２】
マルチノードシステム試験は、複数のコンピュータで構築されたコンピュータシステムを試験対象とする試験である。マルチノードシステムにおいて、複数のコンピュータは、それぞれノードと呼ばれる。また、コンピュータシステムは、情報処理システムとも呼ばれる。マルチノードシステム試験は、例えば、コンピュータシステムの動作や機能が設計仕様を満たしているかどうか等を確認するテストのことである。
【０００３】
従来は、システム内の全ての試験ノードにおいて、試験設定パラメータ、試験実行コマンドが入力される。そして、全ての試験ノードへの入力が完了後、各ノードの試験実行部がノード間同期を行い、同期して試験を開始する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−７０６４２号公報
【特許文献２】特許第３３８４９１１号公報
【特許文献３】特開平０６−１１０７１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、ノード数は年々増加の傾向にある。したがって、個々のノードに対し、試験の構成や試験内容に応じて、試験実行コマンドを設定するのは現実的ではない。開示の実施形態の１つの側面は、ノード数が増加しても効率よくマルチノードシステム試験を実行できる情報処理システムを提供することである。
【課題を解決するための手段】
【０００６】
１つの側面では、開示の実施形態は、複数のノード装置を含む情報処理システムの試験方法によって例示できる。ここで、複数のノード装置のそれぞれは、プロセッサと、前記プロセッサがアクセスするローカルメモリと、を有する。また、複数のノード装置の１つはマスタノードとして動作し、マスタノード以外のノード装置は、スレーブノードとして動作している。そして、マスタノードのプロセッサは、複数のノード装置がアクセス可能な共有メモリにスレーブノードに対して実行させる試験指令を設定するとともに、共有メモリへのスレーブノードからの試験指令の実行結果の報告を監視する。一方、スレーブノードのそれぞれのプロセッサは、共有メモリに試験指令が設定されたか否かを監視し、設定された試験指令を実行し、実行した試験指令の実行結果を共有メモリに格納する。そして、マスタノードのプロセッサは、共有メモリから試験指令が設定されたスレーブノードでの試験指令の実行結果を取得する。
【発明の効果】
【０００７】
本情報処理システムによれば、ノード数が増加しても効率よくマルチノードシステム試験を実行できる。
【図面の簡単な説明】
【０００８】
【図１】比較例のマルチノードシステム試験の制御の流れを例示する図である。
【図２】実施形態の情報処理システムの処理を例示する図である。
【図３】情報処理システムのハードウェア構成を例示する図である。
【図４】情報処理システムのハードウェア構成の１つの詳細例である。
【図５】情報処理システムのハードウェア構成の他の詳細例である。
【図６】情報処理装置のローカルメモリ空間およびグローバルメモリ空間でのデータの配置を例示する図である。
【図７】コマンド情報テーブルの構造を例示する図である。
【図８】フラグ域の構造を例示する図である。
【図９】マスタノードの処理フローを例示する図である。
【図１０】スレーブノードの処理フローを例示する図である。
【図１１】マスタノードとスレーブノードを含むシーケンスチャートを例示する図である。
【図１２】情報処理システムの各部において処理フローに対応する制御とデータの流れを例示する図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照して、一実施形態に係る情報処理装置について説明する。以下の実施形態の構成は例示であり、本情報処理装置は実施形態の構成には限定されない。
［比較例］
図１に、比較例に係るマルチノードシステム試験の制御の流れを例示する。図１のマルチノードシステムは、ノード０からノードＮを含む。各ノードは、ＣＰＵ（Central Processing Unit）、メモリ等を含むコンピュータである。各ノードは、例えば、クロスバー、インターコネクト等のノード間接続部を通じて相互に接続される。各ノードのメモリのうち、一部の領域は、各ノードが専用にアクセスする。一方、各ノードのメモリのうち、一部の領域は、ノード間接続部を介して他のノードからアクセス可能な共有メモリとなっている。
【００１０】
図１のマルチノードシステムでは、ノード０からノードＮのそれぞれは、例えば、オペレータからコマンド“ｒｕｎ”のような試験実行コマンドの設定を受け付ける。ノード０からノードＮのそれぞれは、例えば、共有メモリを用いて同期処理を実行し、相互の同期をとった後、コマンド“ｒｕｎ”する。図１のマルチノードシステムは、以上のような手順で、ノード０からノードＮが相互に同期した試験を実行する。
【００１１】
しかしながら、図１の情報処理システムにおいても、ノード０からノードＮのそれぞれに対し、オペレータにより試験実行コマンドが設定されるため、ノード数が増加した場合には、試験実行コマンド設定のための作業負担は小さくない。
［実施形態］
以下、図２から図１０を参照し、一実施形態に係る情報処理システム１００を説明する。
【００１２】
＜システム構成＞
図２に、情報処理システム１００の処理を例示する。図２のように、情報処理システム１００も、図１の比較例と同様に、複数のノードＮ０からＮＮと、ノード間で共有される共有メモリを有する。ただし、情報処理システム１００は、試験対象ノードＮ０からＮＮ中に、１つのマスタノードが指定される。図２の例では、ノードＮ０がマスタノードに指定される。マスタノード（例えば、ノードＮ０）は、他の試験対象ノードＮ１からＮＮに対し、共有メモリを介して、試験コマンドを転送するとともに、情報処理システム１００全体の試験実行を監視する。本実施形態では、マスタノード以外の試験対象ノードＮ１からＮＮは、スレーブノードと呼ばれる。複数のノードＮ０からＮＮがノード装置の一例である。
【００１３】
図２の処理では、例えば、マスタノードは、オペレータからの試験実行コマンド“ｒｕｎ”の設定を受け付け、受け付けた試験実行コマンド“ｒｕｎ”を共有メモリ上のコマンド情報バッファにコピーする。スレーブノードは、共有メモリ上のコマンド情報バッファを監視している。そして、共有メモリ上のコマンド情報バッファに、試験実行コマンド“ｒｕｎ”が設定されると、試験対象のそれぞれのスレーブノードは、試験実行コマンド“ｒｕｎ”の設定を自ノードに取得し、試験を開始する。
【００１４】
図３に、情報処理システム１００のハードウェア構成を例示する。情報処理システム１００のノードＮ０からＮＮは、それぞれＣＰＵ１０１と、メモリ１０２を有する。ＣＰＵ１０１がプロセッサの一例である。
【００１５】
ノードＮ０からＮＮは、クロスバー、インターコネクト等の接続部ＸＢによって相互に接続される。ノードＮ０からＮＮのそれぞれは、ノードごとのメモリ空間に、自ノードが専用で読み書き可能で他ノードからは読み書きできないレジスタ空間およびローカルメモリ空間を有する。メモリ１０２のうち、レジスタ空間およびローカルメモリ空間の部分がローカルメモリの一例である。また、ノードＮ０からＮＮのそれぞれは、他ノードからも読み書き可能な共有メモリ空間を有する。メモリ１０２のうち、他ノードからも読み書き可能な共有メモリ空間の部分が共有メモリの一例である。共有メモリ空間はグローバル領域とも呼ばれる。
【００１６】
各ノードは、共有メモリ空間のサイズを設定するための共有メモリＣＯＮＦＩＧレジスタ、および共有空間のアドレス情報をコントロールするための共有メモリ機能制御レジスタを有している。共有メモリＣＯＮＦＩＧレジスタおよび共有メモリ機能制御レジスタは、例えば、図３のレジスタ空間に設けられる。
【００１７】
共有メモリＣＯＮＦＩＧレジスタの値は、ＣＰＵ１０１に割り当てられたメモリをローカルメモリと共有メモリとに分けるアドレスを示す。また、共有メモリＣＯＮＦＩＧレジスタの値は、例えば、値が0x0のとき、共有メモリサイズが２５６ＭＢ、値が0x1のときに共有メモリサイズが５１２ＭＢ、値が0x2のときに共有メモリサイズが１０２４ＭＢ、値が0x3のときに共有メモリサイズが２０４８ＭＢ等を示す。つまり、共有メモリＣＯＮＦＩＧレジスタの値は共有メモリサイズを定義するとも言える。
【００１８】
一方、共有メモリ機能制御レジスタは、ＣＰＵ１０１が共有メモリ動作モードであるか否かを示す。例えば、共有メモリ機能制御レジスタの値“１”で共有メモリ動作モードが有効であることを示す。したがって、共有メモリ機能制御レジスタは、ＣＰＵ１０１に、共有メモリを読み書き可能か否かを指定することになる。すなわち、共有メモリ機能制御レジスタの値“１”のとき、各ノードのＣＰＵ１０１は、共有メモリ空間への読み書きが可能となる。
【００１９】
図３の例では、メモリ１０２のうち、アドレス０ｘ００００  ００００〜０ｘ００００
２ＦＦＦの範囲が各ノードにおいて、レジスタ空間となる。また、アドレス０ｘ００００  ３０００〜０ｘ００００  ８０００の範囲が各ノードにおいて、ローカルメモリ空間となる。さらに、アドレス０ｘ００１０  ０８０００以上の範囲は、共有メモリ空間に設定される。
【００２０】
図４に、情報処理システム１００のハードウェア構成の１つの詳細を例示する。図４のように、情報処理システム１００のノードＮ０は、ＣＰＵ１０１と、メモリ１０２と、キャッシュ１０３と、システムコントローラ１０４とを有する。ノードＮ１からＮＮの構成もノードＮ０と同様である。図３で説明したように、メモリ１０２の一部は、ＣＰＵ１０１から専用にアクセスされるローカルメモリ空間となる。メモリ１０２のうち、ローカルメモリ空間の部分がローカルメモリの一例である。
【００２１】
一方、メモリ１０２の一部は、自ノード以外のノードのＣＰＵからアクセスされる共有メモリ空間となる。メモリ１０２のうち、共有メモリ空間の部分が共有メモリの一例である。ＣＰＵ１０１は、キャッシュ１０３を介して、ローカルメモリ空間および共有メモリ空間にアクセスする。ＣＰＵ１０１がアクセスしたデータがキャッシュミスであった場合、キャッシュ１０３はシステムコントローラ１０４にキャッシュミスしたデータの取得を要求する。システムコントローラ１０４は、キャッシュミスしたデータのアドレスに応じて、自ノードのメモリ２または他のノードからデータを取得する。図４の構成の場合に、共有メモリCONFIGレジスタおよび共有メモリ機能制御レジスタは、例えば、システムコントローラ４内に設けてもよい。つまり、図４のハードウェア構成の場合には、システムコントローラ１０４が複数ノード間で連携することで、図３のローカルメモリ空間と、共有メモリ空間とをそれぞれのノードＮ０、Ｎ１等のＣＰＵ１０１に提供する。各ノードのＣＰＵ１０１は、キャッシュ１０３を介して、ローカルメモリ空間と、共有メモリ空間にアクセスする。また、各ノードのキャッシュ１０３は、システムコントローラ１０４および接続部ＸＢを介して、共有メモリ空間のデータを相互に授受する。
【００２２】
図５に、情報処理システム１００のハードウェア構成の他の詳細を例示する。図５のように、情報処理システム１００のノードＮ０は、ＣＰＵ１０１と、メモリ１０２と、キャッシュ１０３と、ディレクトリ１０５を有する。ノードＮ１からＮＮの構成もノードＮ０と同様である。ディレクトリ１０５は、アドレス空間に対応するデータがどのノードに格納されているか、どのノードにキャッシュされているか等の情報を有している。ＣＰＵ１０１が要求したデータがキャッシュミスした場合、キャッシュ１０３は、ディレクトリ１０５を参照し、キャッシュミスしたデータの格納先ノードの情報を取得する。そして、キャッシュ１０３は、自ノードのメモリ１０２、または、接続部ＸＢを介して接続される他のノードのメモリ１０２からキャッシュミスしたデータを取得する。このとき、自ノードおよび他ノードのディレクトリ１０５には、キャッシュ１０３にデータを取得したノード（Ｎ０）が記録され、データの持ち出し状態が管理される。図５の構成の場合に、共有メモリCONFIGレジスタおよび共有メモリ機能制御レジスタは、例えば、ディレクトリ５内に設けてもよい。つまり、図５のハードウェア構成の場合には、キャッシュ１０３が複数ノード間で連携するとともにディレクトリ１０５を用いて各ノードのメモリ１０２を管理する。そして、各ノードのキャッシュ１０３が図３のローカルメモリ空間と、共有メモリ空間とをそれぞれのノードのＣＰＵ１０１に提供する。各ノードのＣＰＵ１０１は、キャッシュ１０３を介して、ローカルメモリ空間と、共有メモリ空間にアクセスする。
【００２３】
なお、図４、図５においては、各ノードのメモリ１０２の一部が接続部ＸＢを介して、情報処理システム１００の他のノードに共有メモリとして提供される構成を例示した。しかし、情報処理システム１００の構成が、図４、図５の構成に限定される訳ではない。例えば、情報処理システム１００において、ノードＮ０からＮＮの共通バスを介して、ノードＮ０からＮＮが共有メモリをアクセスする構成であってもよい。共通バス上に共有メモリが設けられる構成の場合に、各ノードはそれぞれローカルメモリを有するようにしてもよい。
【００２４】
図６に、情報処理システム１００のローカルメモリ空間およびグローバルメモリ空間でのデータの配置を例示する。図６においても、ノードＮ０がマスタノードであり、ノードＮ１からＮＮがスレーブノードであると想定する。マスタノード、スレーブノードのいずれにおいても、ローカルメモリ空間には、コマンド情報テーブルとローカルコマンド情報バッファが設けられる。一方、共有メモリ空間には、共有メモリコマンド情報バッファおよび各種フラグ域が設けられる。図６では、フラグ域として、制御対象ノードフラグ域、OTHER対象ノードフラグ域、およびコマンド実行有効フラグ域が例示されている。
【００２５】
共有メモリ空間に対し、試験対象となるノードを定義した制御対象ノードフラグ域、特定のノードに対し制御を行うためのOTHER対象ノードフラグ域、及びコマンド実行有効フラグ域を設けることにより、マスタノードが試験対象となるスレーブノードを特定し、試験実行コマンド実行の指示を与えることを可能とする。図６の構成において、マスタノードおよびスレーブノードは、以下の処理を実行する。
【００２６】
（処理 i）マスタノードにおける試験実行コマンドのローカルメモリへの設定；
マスタノードは、オペレータから試験対象ノードの設定を受け付ける。また、マスタノードは、試験実行コマンドを受け付け、自ノードのローカルメモリのコマンド情報バッファに保存する。また、マスタノードは、試験実行コマンドのコマンド属性を受け付け、ローカルメモリのコマンド情報テーブルに設定する。
【００２７】
（処理 ii）共有メモリのコマンド実行有効フラグ設定；
マスタノードは、ローカルメモリ空間のコマンド属性情報テーブルを参照し、コマンド毎に定義した属性から、コマンドがスレーブノードで実行するか否かを判断する。コマンドがスレーブノードで実行するコマンドの場合、マスタノードは、共有メモリ上の実行対象ノードフラグ域、あるいはOTHER対象ノードフラグ域に基づく情報をコマンド実行有効フラグ域に設定するとともに、ローカルコマンド情報バッファに保持された試験実行コマンド（例えば、”ｒｕｎ”コマンド）を共有メモリのコマンド情報バッファに転送する。
【００２８】
（処理 iii）スレーブノードによるコマンド実行有効フラグに基づいた試験実行情報の設定；
スレーブノードは、共有メモリのコマンド実行有効フラグ域にアクセスし、自ノードが実行対象かどうかをチェックする。自ノードが実行対象の場合、スレーブノードは、共有メモリのコマンド情報バッファから自ノードのローカルメモリのコマンド情報バッファにコマンドをコピーし、共有メモリのコマンド実行有効フラグのリセットを行い、コマンドを実行する。
【００２９】
（処理 iv）マスタノードによるコマンド実行有効フラグに基づいたマルチノードシステム試験の実行開始；
試験対象スレーブノードのコマンド情報が各スレーブノードのローカルコマンド情報バッファに保存完了されたことを確認するため、マスタノードは共有メモリのコマンド実行有効フラグ域のリセットを確認する。試験対象の各スレーブノードでのリセットが完了後、マスタノードは、自ノードのコマンドを実行し、マルチノードシステム試験を実行する。
【００３０】
＜ローカルメモリ空間のデータ＞
情報処理システム１００は、マスタノードとスレーブノードのローカルメモリ空間に、コマンド情報テーブルとローカルコマンド情報バッファとを設ける。
【００３１】
（i）コマンド情報テーブル；
図７に、コマンド情報テーブルの構造を例示する。コマンド情報テーブルは、コマンド名称及びそのコマンドに対する属性を定義する。情報処理システム１００において、属性は、例えば、それぞれのコマンドの実行先に基づいてコマンドを分類する情報である。属性としては、以下の３種類が設定される。コマンド情報テーブルが指令の実行先に応じて前記指令を分類するための属性情報の一例である。
【００３２】
ALL属性    ： ALL属性は、マルチノードシステム試験の全ての試験対象ノードでコマンドを実行することを指定する。すなわち、ALL属性を有するコマンドは、マルチノードシステム試験の全ての試験対象ノードで実行されるコマンドである。
【００３３】
OTHER属性  ： 一実施形態では、OTHER属性は、１つの特定スレーブノードでコマンド
を実行することを指定する。ただし、OTHER属性が、２以上の特定スレーブノードでコマ
ンドを実行することを指定するものであってもよい。つまり、第２の実施形態では、OTHER属性を指定されるコマンドの実行先ノードが複数あってもよい。
【００３４】
MYSELF属性 ： MYSELF属性は、ローカルメモリ空間にアクセスする自ノードでコマンドを実行することを指定する。すなわち、MYSELF属性を有するコマンドは、オペレータがコマンドを設定したノードだけで実行されるコマンドである。
【００３５】
（ii）ローカルコマンド情報バッファ；
ローカルコマンド情報バッファは、オペレータがノードごとに入力したコマンドの情報、又は共有メモリコマンド情報バッファからスレーブノードにコピーしたコマンドの情報を格納する。コマンドの情報とは、コマンドの名称、および、コマンドにパラメータが指定される場合のパラメータ等である。
【００３６】
＜共有メモリ空間のデータ＞
情報処理システム１００は、マルチノードシステムの共有メモリ空間上に、（i）共有メモリコマンド情報バッファ（ii）コマンド実行有効フラグ域（iii）制御対象ノードフラグ域（iv）OTHER対象ノードフラグ域（v）試験終了フラグ域（vi）試験結果フラグ域という６つの領域を設ける。図８に、（ii）から（vi）の各フラグ域の構造を例示する。図８に例示のように、（ii）から（vi）の各フラグ域はノードごとにエントリを有する。ただし、図８では、ノードＮ０からノードＮＮを単にｎｏｄｅ０からｎｏｄｅＮの名称で例示している。
【００３７】
（i）共有メモリコマンド情報バッファ；
共有メモリコマンド情報バッファには、マスタノードのローカルコマンド情報バッファからコピーしたコマンド情報が格納される。マスタノードは、自ノードのローカルコマンド情報バッファの内容を共有メモリコマンド情報バッファにコピーする。
【００３８】
（ii）コマンド実行有効フラグ域；
図８（Ａ）にコマンド実行有効フラグ域の構造を例示する。コマンド実行有効フラグ域は、共有メモリにある連続したビット領域であり、ノードごとにエントリを有する。コマンド実行有効フラグ域の１ビットは、そのビットのエントリに対応するノードが試験実行対象ノードに該当するかどうかを示すとともに、ノードのコマンド受付けステータスを示す。ビットの値が“0”の場合、当該ビットは、本ノードがコマンド実行対象外であること、又はコマンド実行有効フラグ域のエントリに対応するノードがコマンドを受付け済であることを示す。ビットの値が“1”の場合、当該ビットは、当該エントリに対応するノードがコマンド実行対象であること、又は当該エントリに対応するノードがコマンドを受付け前であることを示す。したがって、コマンド実行有効フラグ域の各エントリは、各エントリに対応するノードがコマンド実行対象であることを指定するとともに、各エントリに対応するノード（スレーブノード）がマスタノードからの指定を受け付けたか否かを示す確認用のフラグとしての役割を兼用できる。
【００３９】
コマンド実行有効フラグ域の値は、コマンド情報テーブルに設定されるコマンドの属性がALLかOTHERかに応じて決定される。コマンドの属性がALLの場合、コマンド実行有効フラグ域の値は制御対象ノードフラグ域値のコピーである。また、コマンドの属性がOTHERの場合、コマンド実行有効フラグ域の値はOTHER対象ノードフラグ域値と制御対象ノードフラグ域値のAND演算結果のコピーである。コマンド実行有効フラグ域の初期値は全ビットが“0”である。コマンド実行有効フラグ域は、第１の指令実行先情報部の一例である。コマンド実行有効フラグ域に設定された情報は、第１の指令実行先情報の一例である。
【００４０】
（iii）制御対象ノードフラグ域；
図８（Ｂ）に制御対象ノードフラグ域の構造を例示する。制御対象ノードフラグ域は、共有メモリにある連続したビット領域であり、ノードごとにエントリを有する。制御対象ノードフラグ域の１ビットは、そのビットのエントリに対応するノードが試験対象に該当するかどうかを示す。ビットの値が“0”の場合、当該ビットは、当該エントリに対応するノードが試験制御対象外のノードであることを示す。ビットの値が“1”の場合、当該ビットは、当該エントリに対応するノードが試験制御対象ノードであることを示す。
【００４１】
制御対象ノードフラグ域の値は、試験内容と試験構成に応じて、試験実行前、または試験実行中に、マスタノード、またはスレーブノードのオペレータ入力でフラグ値の設定が可能である。制御対象ノードフラグ域の初期値は全ビットが“0”である。制御対象ノードフラグ域は、第２の指令実行先情報部の一例である。制御対象ノードフラグ域に設定された情報は、第２の指令実行先情報の一例である。
【００４２】
（iv）OTHER対象ノードフラグ域；
図８（Ｃ）に制御対象ノードフラグ域の構造を例示する。OTHER対象ノードフラグ域は
、共有メモリにある連続したビット領域であり、ノードごとにエントリを有する。ビットの値が“0”の場合、当該ビットは、当該エントリに対応するノードが試験制御対象外であることを示す。ビットの値が“1”の場合、当該ビットは、当該エントリに対応するノードが試験制御対象ノードであることを示す。一実施形態では、OTHER対象ノードフラグ域はスレーブノードのうち、コマンドを実施される対象１ノードに対応する１つのエントリにビット“1”を設定する。ただし、第２の実施形態として、OTHER対象ノードフラグ域で指定可能なノードを１つに限定せず、OTHER対象ノードフラグ域の複数のエントリにビット１を設定できるようにしてもよい。
【００４３】
OTHER対象ノードフラグ域は、試験内容と試験構成に応じて、試験実行前、または試験
実行中に、マスタノード、またはスレーブノードのオペレータ入力でフラグ値の設定が可能である。OTHER対象ノードフラグ域の設定によって、マスタノードから、オペレータ所
望のスレーブノードの試験実行状況、試験結果メッセージの確認が可能となる。OTHER対
象ノードフラグ域の初期値は全ビットが“0”である。OTHER対象ノードフラグ域は、制御対象ノードフラグ域値を維持した状態で、さらに、コマンドの実行対象ノードを絞り込む役割を有している。OTHER対象ノードフラグ域は、特定ノード指定情報部の一例である。OTHER対象ノードフラグ域に設定された情報は、特定ノード指定情報の一例である。
【００４４】
（v）試験終了フラグ域；
図８（Ｄ）に制御対象ノードフラグ域の構造を例示する。試験終了フラグ域は、共有メモリにある連続したビット領域であり、ノードごとにエントリを有する。ビットの値が“0”の場合、当該ビットは、当該エントリに対応するノードがマルチノードシステム試験対象外であること、又は本ノードがマルチノードシステム試験実行中であることを示す。ビットの値が“1”の場合、当該ビットは、当該エントリに対応するノードがマルチノードシステム試験対象であること、かつ当該エントリに対応するノードにおいてマルチノードシステム試験の実行が終了したことを示す。
【００４５】
試験対象のスレーブノードは、試験を終了し、マスタノードに完了通知をするため、試験終了フラグの自ノードに対応するエントリに“1”に設定する。マスタノードは、コマ
ンド属性がALLの場合は、試験終了フラグ域の値が制御終了フラグと一致するまで、マル
チノードシステム試験実行が未終了のエントリをポーリングする。つまり、マスタノードは、全試験対象ノードの実行完了まで試験終了フラグ域をポーリングする。また、コマンド属性がOTHERの場合、マスタノードは、試験終了フラグ域の値がOTHER対象ノードフラグと一致するまで該当エントリをポーリングする。つまり、マスタノードは、特定対象ノードの実行完了まで該当エントリをポーリングする。コマンド属性がMYSELFの場合、自ノードのローカル空間に閉じた処理のため、マスタノードは、共有メモリ空間情報の読み出し処理と書き込み処理を実行しない。したがって、コマンド属性がMYSELFの場合には、試験終了フラグ域の初期値は全ビットが“0”である。
【００４６】
（vi）試験結果フラグ域；
図８（Ｅ）に制御対象ノードフラグ域の構造を例示する。試験結果フラグ域は、共有メモリにある連続したビット領域であり、ノードごとにエントリを有する。ビットの値が“0”の場合、当該ビットは、当該エントリに対応するノードがマルチノードシステム試験対象外であること、又は当該エントリに対応するノードにおいて、マルチノードシステム試験が正常終了したことを示す。ビットの値が“1”の場合、当該ビットは、当該エントリに対応するノードがマルチノードシステム試験対象であること、かつ当該ノードにおいてマルチノードシステム試験が異常終了したことを示す。試験結果フラグ域の初期値は全ビットが“0”である。
【００４７】
＜処理フロー＞
図９にマスタノードの処理フローを例示する。また、図１０にスレーブノードの処理フローを例示する。さらに、図１１にマスタノードとスレーブノードを含むシーケンスチャートを例示する。図１１で、実線はデータの流れを示し、点線は制御の流れを示す。さらにまた、図１２に、情報処理システム１００の各部において、図９、図１０の処理フローに対応する制御とデータの流れを例示する。ただし、図１１において、ローカルコマンド情報テーブルを単に「テーブル」という文字列で示し、ローカルコマンド情報バッファを単に「バッファ」という文字で示す。同様に、図１１で共有メモリコマンド情報バッファを「コマンドバッファ」という文字列で、コマンド実行有効フラグ域を「有効フラグ」という文字列で、制御対象ノードフラグ域を「制御対象フラグ」という文字列で示す。また、OTHER対象ノードフラグ域を「OTHER対象フラグ」という文字列で、試験終了フラグ域を「終了フラグ」という文字列で、試験結果フラグ域を「結果フラグ」という文字で示す。以下、図９−１２の参照符号の数字を（）内に記載し、図９−１２との対応をとって説明する。
【００４８】
（１）マスタノードは、オペレータが入力したコマンドをローカルコマンド情報バッファに格納する。
【００４９】
（２）マスタノードのオペレータがコマンドを入力した場合、マスタノードは、自ノードのコマンド情報テーブルの内容を参照し、自ノードのローカルコマンド情報バッファに格納されているコマンドの属性を判定する。マスタノードが自ノードのコマンド情報テーブルの内容を参照ことは、指令を分類するための属性情報を読み出すことの一例である。
【００５０】
図９の例では、マスタノードは、まず、コマンドの属性がMYSELFか否かを判定する。コマンド属性がMYSELFの場合、マスタノードは、入力されたコマンドをローカル空間で実行し（２２）、処理を終了する（Ｅｎｄ）。
【００５１】
（３）コマンド属性がMYSELF以外の場合、マスタノードは、自ノードのローカルコマンド情報バッファの内容を共有メモリコマンド情報バッファにコピーする。なお、図１２に示すように、オペレータの設定によっては、制御対象ノードフラグ域あるいは、OTHER対
象ノードフラグ域に値が設定される。マスタノードが自ノードのローカルコマンド情報バッファの内容を共有メモリコマンド情報バッファにコピーする処理（図９、１１、１２の３）は、前記共有メモリに前記スレーブノードに対して実行させる試験指令を設定することの一例である。
【００５２】
（４）コマンド属性がOTHERの場合（４Ａ）、マスタノードは、共有メモリの制御対象ノードフラグ域の値とOTHER対象ノードフラグ域の値を読み出す。そして、マスタノードは、制御対象ノードフラグ域の値とOTHER対象ノードフラグ域の値のAND演算結果をコマンド実行有効フラグ域にコピーし（４Ｂ）、自ノードに対応するコマンド実行有効フラグ域のエントリに０を書き込む。ここで、制御対象ノードフラグ域の値とOTHER対象ノードフ
ラグ域の値のAND演算結果をコマンド実行有効フラグ域にコピーすること（４Ｂの処理）
は、第２の指令実行先情報で指定される実行先ノードから、前記特定ノード指定情報を基に前記指令を実行するスレーブノードを選択することの一例である。また、４Ｂの処理は、スレーブノードを選択して指令を実行させることの一例でもある。そして、マスタノードは、１４の処理に制御を進める。したがって、コマンド属性がOTHERの場合には、試験実行対象となるノードのうち、オペレータがOTHER対象ノードフラグ域のエントリに値を設定したノードがコマンド実行対象となる。１４の処理は、スレーブノードにおいてコマンドを受け付けたことをマスタノードが確認するための処理である。なお、４Ａ、４Ｂの処理は、図１１、図１２において、４の処理に対応する。
【００５３】
（５）コマンド属性がALLの場合（５Ａ）、マスタノードは制御対象ノードフラグ域の
値をコマンド実行有効フラグ域にコピーし（５Ｂ）、自ノードに対応するコマンド実行有効フラグ域のエントリに０を書き込み、１４の処理に制御を進める。したがって、コマンド属性がALLの場合には、試験実行対象となるすべてのノードがコマンド実行対象となる
。以下、説明は図９から図１０に移動する。図９、図１１、図１２の４および５の処理は、第１の指令実行先情報を設定することの一例である。なお、５Ａ、５Ｂの処理は、図１１、図１２において、５の処理に対応する。
【００５４】
（６）スレーブノードは、マスタノードからのコマンド実行を依頼されるまで、つまり、コマンド実行有効フラグ域の自ノードに対応するエントリの値が“1”になるまでポーリングする。エントリの値が“1”となった場合、つまり、マスタノードからのコマンド実行依頼がある場合、スレーブノードは８の処理に制御を進める。スレーブノードが、コマンド実行有効フラグ域の自ノードに対応するエントリの値が“1”になるまでポーリングする処理（図１０〜図１２の６の処理）は、共有メモリに試験指令が設定されたか否かを監視することの一例である。
【００５５】
（７）マスタノードからのコマンド実行依頼がない場合、スレーブノードはポーリングのたびにローカルコマンド情報バッファにコマンド入力があるかどうかチェックを行う（図１０の７Ａ）。ローカルコマンド情報バッファにコマンド入力がない場合、スレーブノードは、制御を６のポーリング処理に戻す。一方、図１０の７Ａの判定で、ローカルコマンド情報バッファにコマンド入力がある場合、スレーブノードはコマンド情報テーブルを参照し、ローカルコマンド情報バッファに入力されたコマンド属性がMYSELFか否かを判定する（図１０の７Ｂ）。ローカルコマンド情報バッファに入力されたコマンド属性がMYSELFである場合、スレーブノードは、ローカル空間でコマンド実行する（図１０の７Ｃ）。ローカルコマンド情報バッファに入力されたコマンド属性がMYSELFでない場合、スレーブノードは、制御を６のポーリング処理に戻す。図１０の７Ａと７Ｂの処理が図１１、図１２における７の処理に相当する。
【００５６】
（８）スレーブノードは、共有メモリコマンド情報バッファの内容を自ノードのローカルコマンド情報バッファにコピーする。
【００５７】
（９）スレーブノードは、コマンド実行有効フラグ域の自ノードに対応するエントリに“0”を書き込む。コマンド実行有効フラグ域の値が１から０に変更されることで、スレ
ーブノードは、コマンドを受付けたことをマスタノードへ通知する。
【００５８】
（１０）スレーブノードは、自ノードのローカルコマンド情報バッファの内容を読み出す。
【００５９】
（１１）スレーブノードは、コマンドがマルチノードシステム試験コマンドであるか判定する（１１Ａ）。コマンドがマルチノードシステム試験コマンドである場合、スレーブノードは１２Ａの処理に制御を進める。コマンドがマルチノードシステム試験コマンドでない場合、スレーブノードは、ローカル空間でコマンドを実行し（１１Ｂ）、１３の処理に制御を進める。ここで、コマンドがマルチノードシステム試験コマンドでない場合とは、例えば、コマンドが単にスレーブノードに指定パラメータ、あるいは試験条件等を設定するコマンド、あるいは、スレーブノードのレジスタ等から値を取得するコマンド等の場合をいう。なお、１１Ａ、１１Ｂの処理は、図１１、図１２において、１１の処理に対応する。
【００６０】
（１２）スレーブノードは、マルチノードシステム試験を実行する（１２Ａ）。１２Ａの処理は、スレーブノードのそれぞれのプロセッサが設定された試験指令を実行することの一例である。そして、スレーブノードは、共有メモリ空間の自ノード試験結果フラグ域に試験結果を書き込む。より具体的には、スレーブノードは、試験結果が正常終了か否かを判定する（１２Ｂ）。なお、本実施形態では、試験自体の詳細には直接言及しない。本実施形態の情報処理システムの処理は、試験の具体的内容に依存せず、マルチノードシステム試験一般に適用可能である。１２Ｂの判定で、試験結果が正常である場合、スレーブノードは、共有メモリの試験結果フラグ域の自ノードに対応するエントリに０を書き込む。一方、１２Ｂの判定で、試験結果が正常でない場合、スレーブノードは、共有メモリの試験結果フラグ域の自ノードに対応するエントリに１を書き込む（１２Ｄ）。１２Ｃ、１２Ｄの処理によって、スレーブノードは試験実行結果をマスタノードへ通知する。なお、１２Ａ−１２Ｄの処理は、図１１、図１２において、１２の処理に対応する。
【００６１】
（１３）スレーブノードは、共有メモリ空間の試験終了フラグ域の自ノードに対応するエントリに試験終了を示す“１”を書き込む。スレーブノードが試験終了したことをマスタノードへ通知するためである。以下、説明は図９から図１０に戻る。１２Ｃ、１２Ｄおよび１３の処理は、実行した試験指令の実行結果を前記共有メモリに格納することの一例である。
【００６２】
（１４）マスタノードは、コマンド実行有効フラグ域の自ノード域の値を“0”にリセ
ットして、コマンド実行有効フラグ域の全てのビット値が“0”になるまでポーリングす
る。１４の処理は、スレーブノードのコマンドが全て受付けられるのを確認するための処理である。スレーブノードのコマンドがすべて受付けられと、マスタノードは１５の処理に制御を進める。したがって、本実施形態の情報処理システム１００によれば、マスタノードにおける１〜５、１４の処理、及びスレーブノードにおける６〜８の処理によって、マスタノードとスレーブノードとの間のコマンド実行指示、受付確認を簡易な共有メモリの構成で実現できる。したがって、情報処理システム１００では、マスタノードとスレーブノード間の割り込み処理機構等がなくてもよい。
【００６３】
（１５）マスタノードは、スレーブノードで受け付けられたコマンド属性がOTHERか否
かを判定する（１５Ａ）。コマンド属性がOTHERの場合、マスタノードは共有メモリにあ
る試験終了フラグの値がOTHER対象ノードフラグと一致するまでボーリングする（１５Ｂ
）。すなわち、マスタノードは、スレーブノードのうち、OTHER対象ノードからの実行終
了を待つ。共有メモリにある試験終了フラグの値がOTHER対象ノードフラグと一致するフ
ラグ値が一致すれば、マスタノードは２１の処理に制御を進める。なお、１５Ａ、１５Ｂの処理は、図１１、図１２において、１５の処理に対応する。
【００６４】
（１６）コマンド属性がOTHERでない場合、マスタノードはコマンドがマルチノードシ
ステム試験コマンドであるかを判定する。コマンドがマルチノードシステム試験コマンドの場合は、マスタノードは１７Ａの処理に制御を進める。コマンドがマルチノードシステム試験コマンドでない場合、マスタノードは、ローカル空間でコマンドを実行し、２２の処理に制御を進める。ここで、コマンドがマルチノードシステム試験コマンドでない場合とは、１１の処理で説明した場合と同様である。すなわち、例えば、コマンドが単にスレーブノードに指定パラメータ、あるいは試験条件等を設定するコマンド、あるいは、スレーブノードのレジスタ等から値を取得するコマンド等の場合が該当する。
【００６５】
（１７）マスタノードは、試験対象ノードの１つとして、マルチノードシステム試験コマンドを実行する（１７Ａ）。そして、マスタノードは、試験結果を共有メモリ空間にある試験結果フラグ域に通知する。すなわち、マスタノードは、自ノードでの試験結果が正常か否かを判定する（１７Ｂ）。試験結果が正常である場合、マスタノードは、共有メモリの試験結果フラグ域の自ノードに対応するエントリに０を書き込む（１７Ｃ）。一方、試験結果が正常でない場合、マスタノードは、共有メモリの試験結果フラグ域の自ノードに対応するエントリに０を書き込む（１７Ｄ）。１７Ａ−１７Ｄの処理が、図１１、図１２における１７の処理に該当する。
【００６６】
（１８）マスタノードは、共有メモリ空間の自ノード試験終了フラグ域に試験終了を示す“１”を書き込む。
【００６７】
（１９）マスタノードは、共有メモリ空間にある試験終了フラグの値が制御対象ノードフラグの値と一致するまでポーリングする。マスタノードが共有メモリ空間にある試験終了フラグの値が制御対象ノードフラグの値と一致するまでポーリングする処理（図９、図１１、図１２の１９）は、共有メモリへの前記スレーブノードからの前記試験指令の実行結果の報告を監視することの一例である。また、４Ｂと１９の処理は、スレーブノードを選択して指令を実行させることの一例でもある。
【００６８】
（２０）１９の処理で、試験終了フラグの値が制御対象ノードフラグの値と一致すると、マスタノードは、共有メモリの試験結果フラグ域から、スレーブノードでの試験実行結果を取得する。そして、マスタノードはマルチノードシステム試験を終了する。共有メモリの試験結果フラグ域から、スレーブノードでの試験実行結果を取得する処理は、共有メモリから前記試験指令が設定されたスレーブノードでの試験指令の実行結果を取得することの一例である。したがって、本実施形態の情報処理システム１００によれば、スレーブノードにおける６〜８の処理、及びマスタノードにおける２０の処理によって、スレーブノードとマスタノードとの間のマルチノードシステム試験実行結果の伝達を簡易な共有メモリの構成で実現できる。したがって、情報処理システム１００では、マスタノードとスレーブノード間の割り込み処理機構等がなくてもよい。
【００６９】
（２１）マスタノードは試験結果をオペレータ端末１１０に通知する。
【００７０】
（２２）マスタノードはローカルメモリコマンド情報バッファのコマンドを実行し、全処理を終了する。
【００７１】
以下、本実施形態の処理を具体的に適用した例を説明する。
【００７２】
＜適用例１＞
（前提条件）
適用例１では、コマンド属性がALLの場合の処理を例示する。適用例１のマルチノード
システムは、8ノードであると想定する。マスタノードがノードＮ0と設定されている。スレーブノードがノードＮ1からノードＮ7と設定されている。マスタノード（ノードＮ０）のコマンド情報テーブルに、コマンド“run”の属性がALLと設定されている。なお、“run”コマンドがマルチノードシステム試験コマンドである。共有メモリ空間の制御対象ノードフラグの値が“0xff”と設定されている。即ち、本マルチノードシステムの8ノードに対応するエントリのビットがすべて１であり、8ノードが全て試験制御対象ノードと設定されている。
【００７３】
（処理例）
適用例１の場合、マスタノード（ノードＮ０）は、コマンド“run”を共有メモリコマ
ンド情報バッファにコピーするとともに（図９の３の処理）、制御対象ノードフラグ域の値“0xff”をコマンド実行有効フラグ域にコピーし（５Ｂの処理）、スレーブノード（Ｎ１−Ｎ８）が受け取るまでコマンド実行有効フラグ域をポーリングする（１４の処理）。マスタノードは、コマンド実行有効フラグ域の値が“0xff”から“0x00”になると、自ノードでマルチノードシステム試験コマンド”ｒｕｎ”を実行する（１７の処理）。マスタノードは、試験終了フラグ域の自ノードに対応するエントリに１を書き込むとともに（１８の処理）、スレーブノードからの試験終了を待ち、マルチノードシステム試験を終了する（２０の処理）。
【００７４】
＜適用例２＞
（前提条件）
適用例２は、コマンド属性がOTHERの場合の処理を例示する。適用例２のマルチノード
システムは、１６ノードであると想定する。適用例２では、マスタノードはノードＮ１５と設定されている。また、スレーブノードがノードＮ０からノードＮ１４と設定されている。また、マスタノードＮ１５のコマンド情報テーブルに、コマンド“patch”の属性がOTHERと設定されている。ここで、“patch”コマンドは、マルチノードシステム試験コマンドではなく、メモリの値を書き換えるコマンドである。また、共有メモリ空間の制御対象ノードフラグの値が“0xffff”となっている。即ち、本マルチノードシステムの16ノードが全て試験制御対象ノードと設定されている。一方、共有メモリ空間のOTHER対象ノー
ドフラグの値が“0x8000”となっている。即ち、本マルチノードシステムのノードＮ０が特定対象ノード、ノードＮ１からＮ１５は試験対象ノード外と設定されている。
【００７５】
（処理例）
適用例２の場合、マスタノード（ノードＮ１５）は、コマンド“patch”を共有メモリ
コマンド情報バッファにコピーする（図９の３の処理）。さらに、マスタノードは、制御対象ノードフラグ域の値“0xffff”とOTHER対象ノードフラグの値”0x8000”のAND演算結果、“0x8000”をコマンド実行有効フラグ域にコピーし（４Ｂの処理）、スレーブノード（Ｎ０）が受け取るまでコマンド実行有効フラグ域をポーリングする（１４の処理）。マスタノードは、コマンド実行有効フラグ域の値が“0x8000”から“0x0000”になるとポーリング処理を終了し、コマンド属性がOTHERのため、共有メモリの終了フラグをチェック
し、終了フラグの値“0x8000”とOTHER対象ノードフラグが一致することを確認する（１
５Ｂの処理）。そして、マスタノードは、実行結果をオペレータの端末１１０に通知する（２１の処理）。
【００７６】
＜適用例３＞
（前提条件）
適用例３では、コマンド属性がMYSELFの場合の処理を例示する。適用例３のマルチノードシステムは、４ノードであると想定する。適用例３では、マスタノードがノードＮ0と
設定されている。また、スレーブノードがノードＮ1からＮ3と設定されている。
スレーブノードＮ3のコマンド情報テーブルに、コマンド“reset”の属性がMYSELFと設定されている。共有メモリ空間の制御対象ノードフラグの値が“0xf”となっている。即ち
、本マルチノードシステムの4ノードが全て試験制御対象ノードと設定されている。
【００７７】
（処理例）
例えば、スレーブノードＮ3は、オペレータが入力したコマンド“reset”を自ノードのローカルコマンド情報バッファに格納する（図９の１の処理）。スレーブノードＮ3は、
自ノードのコマンド情報テーブルの内容を参照し、自ノードのローカルコマンド情報バッファの“reset”コマンドの属性がMYSELFであると判定し（２の処理）、ローカル情報バ
ッファの“reset”コマンドを読み出し、実行し（２２の処理）、処理を終了する。
【００７８】
＜実施形態の効果＞
本実施形態の情報処理システム１００によれば、マスタノードがマルチノードシステム試験コマンドを共有メモリにコピーし、試験対象のスレーブノードでの実行を待つ。また、スレーブノードは、共有メモリにマルチノードシステム試験コマンドが設定されるのを待ち、マルチノードシステム試験コマンドが設定されると、ローカルメモリにコピーし、自ノードでの試験を実行する。したがって、情報処理システム１００によれば、情報処理システム１００内のノード数が増加した場合でも、オペレータが各試験対象のノードに逐一マルチノードシステム試験コマンドを設定しなくても、複数の試験対象のノードに対してマルチノードシステム試験を実行できる。
【００７９】
また、本実施形態の情報処理システム１００は、共有メモリ上にコマンド実行有効フラグ域を有し、情報処理システム１００に含まれるノードごとに、マルチノードシステム試験コマンドを含むコマンドの実行先を指定できる。
【００８０】
また、本実施形態の情報処理システム１００は、マルチノードシステム試験コマンドの実行先ノードを指定する制御対象ノードフラグ域と、マルチノードシステム試験コマンドの実行先ノードから特定のノードに絞り込むためのOTHER対象ノードフラグ域を有してい
る。そして、コマンド属性がOTHERの場合、マスタノードが制御対象ノードフラグ域とOTHER対象ノードフラグ域との論理演算（ＡＮＤ）によってコマンド実行有効フラグ域の値を決定する。したがって、本情報処理システムでは、マルチノードシステム試験コマンドの実行先ノードの指定を保存した上で、マルチノードシステム試験コマンドの実行先ノードから特定のノードにコマンドの実行先を絞り込むことができる。
【００８１】
＜記録媒体＞
コンピュータその他の機械、装置（以下、コンピュータ等）に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。そして、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
【００８２】
ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ／Ｗ、ＤＶＤ、ブルーレイディスク、ＤＡＴ、８ｍｍテープ、フラッシュメモリなどのメモリカード等がある。また、コンピュータ等に固定された記録媒体としてハードディスク、ＲＯＭ（リードオンリーメモリ）等がある。さらに、ＳＳＤ（Solid State Drive）は、コンピュータ等から取り外し可能な記録媒体としても、コンピュータ等に固定された記録媒体としても利用可能である。
【００８３】
＜その他＞
本実施形態は、以下の態様を含む。下記態様に含まれる構成は、他の態様に含まれる構成と組み合わせるようにしてもよい。
（付記１）
複数のノード装置と
前記複数のノード装置がアクセス可能な共有メモリと、を備え
前記複数のノード装置のそれぞれは、
プロセッサと、
前記プロセッサがアクセスするローカルメモリと、を有し、
前記複数のノード装置の１つはマスタノードとして動作し、前記マスタノード以外のノード装置は、スレーブノードとして動作し、
前記マスタノードのプロセッサは、前記共有メモリに前記スレーブノードに対して実行させる試験指令を設定するとともに、前記共有メモリへの前記スレーブノードからの前記試験指令の実行結果の報告を監視し、
前記スレーブノードのそれぞれのプロセッサは、前記共有メモリに試験指令が設定されたか否かを監視し、前記設定された試験指令を実行し、前記実行した試験指令の実行結果を前記共有メモリに格納し、
前記マスタノードのプロセッサは、前記共有メモリから前記試験指令が設定されたスレーブノードでの試験指令の実行結果を取得する情報処理システム。
（付記２）
前記共有メモリは、前記試験指令を含む指令の実行先を指定する第１の指令実行先情報部を有する付記１に記載の情報処理システム。
（付記３）
前記共有メモリは、さらに、前記指令の実行先ノードを指定する第２の指令実行先情報部と、前記指令の実行先ノードをさらに絞り込むための特定ノード指定情報部とを有し、
前記マスタノードのローカルメモリは、前記指令の実行先に応じて前記指令を分類するための属性情報を記憶し、
前記マスタノードのプロセッサは、前記指令の属性情報が所定条件に該当する場合に、前記第２の指令実行先情報部で指定される実行先ノードから、前記特定ノード指定情報部を基に前記指令を実行するスレーブノードを選択して前記指令を実行させる付記２に記載の情報処理システム。
（付記４）
複数のノード装置を含む情報処理システムの試験方法であって、前記複数のノード装置のそれぞれは、プロセッサと、前記プロセッサがアクセスするローカルメモリと、を有し、前記複数のノード装置の１つはマスタノードとして動作し、前記マスタノード以外のノード装置は、スレーブノードとして動作しており、
前記マスタノードのプロセッサは、前記複数のノード装置がアクセス可能な共有メモリに前記スレーブノードに対して実行させる試験指令を設定するとともに、前記共有メモリへの前記スレーブノードからの前記試験指令の実行結果の報告を監視し、
前記スレーブノードのそれぞれのプロセッサは、前記共有メモリに試験指令が設定されたか否かを監視し、前記設定された試験指令を実行し、前記実行した試験指令の実行結果を前記共有メモリに格納し、
前記マスタノードのプロセッサは、前記共有メモリから前記試験指令が設定されたスレーブノードでの試験指令の実行結果を取得する、情報処理システムの試験方法。
（付記５）
前記マスタノードのプロセッサは、さらに、前記共有メモリに前記試験指令を含む指令の実行先を指定する第１の指令実行先情報を設定する付記４に記載の情報処理システムの試験方法。
（付記６）
前記マスタノードのプロセッサは、
前記マスタノードのローカルメモリから、前記指令の実行先に応じて前記指令を分類するための属性情報を読み出し、
前記指令の属性情報が所定条件に該当する場合に、前記共有メモリに記憶された前記指令の実行先ノードを指定する第２の指令実行先情報と前記指令の実行先ノードをさらに絞り込むための特定ノード指定情報とにより、前記第２の指令実行先情報で指定される実行先ノードから前記指令を実行するスレーブノードを選択して前記指令を実行させる付記５に記載の情報処理システムの試験方法。
（付記７）
複数のノード装置を含む情報処理システムの試験プログラムであって、前記複数のノード装置のそれぞれは、プロセッサと、前記プロセッサがアクセスするローカルメモリと、を有し、前記複数のノード装置の１つはマスタノードとして動作し、前記マスタノード以外のノード装置は、スレーブノードとして動作しており、前記情報処理システムの試験プログラムは、
前記マスタノードのプロセッサに、前記複数のノード装置がアクセス可能な共有メモリに前記スレーブノードに対して実行させる試験指令を設定させるとともに、前記共有メモリへの前記スレーブノードからの前記試験指令の実行結果の報告を監視させる第１のプログラムと、
前記スレーブノードのそれぞれのプロセッサに、前記共有メモリに試験指令が設定されたか否かを監視させ、前記設定された試験指令を実行させ、前記実行した試験指令の実行結果を前記共有メモリに格納させる第２のプログラムと、を有し
前記第１のプログラムは、さらに、前記マスタノードのプロセッサに、前記共有メモリから前記試験指令が設定されたスレーブノードでの試験指令の実行結果を取得させる情報処理システムの試験プログラム。
（付記８）
前記第１のプログラムは、さらに、前記マスタノードのプロセッサに、前記共有メモリに前記試験指令を含む指令の実行先を指定する第１の指令実行先情報を設定させる付記７に記載の情報処理システムの試験プログラム。
（付記９）
前記第１のプログラムは、さらに、前記マスタノードのプロセッサに、
前記マスタノードのローカルメモリから、前記指令の実行先に応じて前記指令を分類するための属性情報を読み出させ、
前記指令の属性情報が所定条件に該当する場合に、前記共有メモリに記憶された前記指令の実行先ノードを指定する第２の指令実行先情報と前記指令の実行先ノードをさらに絞り込むための特定ノード指定情報とにより、前記第２の指令実行先情報で指定される実行先ノードから前記指令を実行するスレーブノードを選択させ、前記選択されたスレーブノードで前記指令を実行させる付記８に記載の情報処理システムの試験プログラム。
【符号の説明】
【００８４】
１００  情報処理システム
１０１    ＣＰＵ 
１０２    メモリ
Ｎ０−ＮＮ  ノード
ＸＢ      接続部
【図１】
0006330519.tif 000002
【図２】
0006330519.tif 000003
【図３】
0006330519.tif 000004
【図４】
0006330519.tif 000005
【図５】
0006330519.tif 000006
【図６】
0006330519.tif 000007
【図７】
0006330519.tif 000008
【図８】
0006330519.tif 000009
【図９】
0006330519.tif 000010
【図１０】
0006330519.tif 000011
【図１１】
0006330519.tif 000012
【図１２】
0006330519.tif 000013