(57)【要約】      （修正有）【課題】計算ノードの相互接続ネットワーク・シミュレータを提供する。【解決手段】相互接続ネットワーク・シミュレータ１０は特にトポロジ・シミュレーション・モジュール１１を備える。トポロジ・シミュレーション・モジュール１１は定義された数のシミュレーション対象モジュール１２、１３、２０を選択及び開始し、シミュレーション対象相互接続ネットワーク３０を形成するように、開始されたシミュレーション対象モジュール１２、１３間の接続リンク１５を確立し、ユーザが開始されたシミュレーション対象モジュール１２、１３、２０と相互作用することが可能となるように構成されている。【選択図】図２
2015233283.tif 000002
【特許請求の範囲】
【請求項１】
計算ノードの相互接続ネットワーク・シミュレータ（１０）であって、
前記相互接続ネットワーク・シミュレータ（１０）はトポロジ・シミュレーション・モジュール（１１）を備え、
前記トポロジ・シミュレーション・モジュール（１１）は、
−  定義された数のシミュレーション対象モジュール（１２、１３、２０）を選択および開始し、
−  シミュレーション対象相互接続ネットワーク（３０）を形成するように、前記開始されたシミュレーション対象モジュール（１２、１３）間の接続リンク（１５）を確立し、
−  ユーザが前記開始されたシミュレーション対象モジュール（１２、１３、２０）と相互作用することを可能とする、
ように構成されていることを特徴とする相互接続ネットワーク・シミュレータ（１０）。
【請求項２】
前記開始されたシミュレーション対象モジュールは、前記相互接続ネットワーク（３０）に属する複数の開始されたシミュレーション対象スイッチ・モジュール（１２）および前記相互接続ネットワーク（３０）に属する複数の開始されたシミュレーション対象ネットワーク制御モジュール（１３）によって形成されていることを特徴とする請求項１に記載の相互接続ネットワーク・シミュレータ（１０）。
【請求項３】
前記開始されたシミュレーション対象モジュールは、前記シミュレーション対象相互接続ネットワーク（３０）および前記シミュレーション対象相互接続ネットワーク（３０）の管理装置（１４）間の相互接続をシミュレーションするように構成されている複数の開始されたシミュレーション対象管理モジュール（２０）によって形成されていることを特徴とする請求項１または２に記載の相互接続ネットワーク・シミュレータ（１０）。
【請求項４】
前記トポロジ・シミュレーション・モジュール（１１）は、少なくとも１つの前記開始されたシミュレーション対象モジュール（１２、１３、２０）をパラメータ化することによって、ユーザが前記開始されたシミュレーション対象モジュール（１２、１３、２０）と相互作用することが可能となるように構成されていることを特徴とする請求項１から３のいずれか一項に記載の相互接続ネットワーク・シミュレータ（１０）。
【請求項５】
前記トポロジ・シミュレーション・モジュール（１１）は、少なくとも１つの前記開始されたシミュレーション対象モジュール（１２、１３、２０）を活性化または非活性化することによって、ユーザが前記開始されたシミュレーション対象モジュール（１２、１３、２０）と相互作用することが可能となるように構成されていることを特徴とする請求項１から４のいずれか一項に記載の相互接続ネットワーク・シミュレータ（１０）。
【請求項６】
前記トポロジ・シミュレーション・モジュール（１１）は、
−  前記開始されたシミュレーション対象モジュール（１２、１３）のそれぞれに識別子を付与する、および
−  前記開始されたシミュレーション対象モジュール（１２、１３）のそれぞれに対して、前記開始されたシミュレーション対象モジュール（１２、１３）およびその周辺の開始されたシミュレーション対象モジュール間で確立される前記接続リンク（１５）を記述するローカル・マップを生成する、
ことによって、ユーザが前記開始されたシミュレーション対象モジュール（１２、１３）と相互作用することが可能となるように構成されていることを特徴とする請求項１から５のいずれか一項に記載の相互接続ネットワーク・シミュレータ（１０）。
【請求項７】
前記トポロジ・シミュレーション・モジュール（１１）は、通信シナリオを定義することによって、ユーザが前記開始されたシミュレーション対象モジュール（１３）と相互作用することが可能となるように構成されていることを特徴とする請求項１から６のいずれか一項に記載の相互接続ネットワーク・シミュレータ（１０）。
【請求項８】
少なくとも１つの前記開始されたシミュレーション対象モジュール（１２、１３、２０）はシミュレーション・ログを生成するように構成されていることを特徴とする請求項１から７のいずれか一項に記載の相互接続ネットワーク・シミュレータ（１０）。
【請求項９】
計算ノードの相互接続ネットワークをシミュレーションする方法（１００）であって、
前記方法（１００）は、
−  トポロジ・シミュレーション・モジュール（１１）が定義された数のシミュレーション対象モジュール（１２、１３、２０）を選択するステップ（１０１）と、
−  前記トポロジ・シミュレーション・モジュール（１１）が定義された数の前記シミュレーション対象モジュール（１２、１３、２０）を開始するステップ（１０２）と、
−  前記トポロジ・シミュレーション・モジュール（１１）が、シミュレーション対象相互接続ネットワークネットワーク（３０）を形成するように、前記開始されたシミュレーション対象モジュール（１２、１３）間の接続リンク（１５）を確立するステップ（１０３）と、
−  前記トポロジ・シミュレーション・モジュール（１１）経由で、ユーザが前記開始されたシミュレーション対象モジュール（１２、１３、２０）と相互作用するステップ（１０４）と、
を備えることを特徴とする方法（１００）。
【請求項１０】
前記相互作用するステップ（１０４）は少なくとも１つの前記開始されたシミュレーション対象モジュール（１２、１３、２０）をパラメータ化するサブ・ステップ（１０４ａ）を備えることを特徴とする請求項９に記載の方法（１００）。
【請求項１１】
前記相互作用するステップ（１０４）は少なくとも１つの通信シナリオを定義するサブ・ステップ（１０４ｂ）を備えることを特徴とする請求項９または１０に記載の方法（１００）。
【請求項１２】
前記相互作用するステップ（１０４）は少なくとも１つの前記開始されたシミュレーション対象モジュール（１２、１３、２０）を活性化する、または非活性化するサブ・ステップ（１０４ｃ）を備えることを特徴とする請求項９から１１のいずれか一項に記載の方法（１００）。
【請求項１３】
前記相互作用するステップ（１０４）は、
−  前記開始されたシミュレーション対象モジュール（１２、１３）のそれぞれに識別子を付与するサブ・ステップ（１０４ｄ）と、
−  前記開始されたシミュレーション対象モジュール（１２、１３）のそれぞれに対して、前記開始されたシミュレーション対象モジュール（１２、１３）およびその周辺のシミュレーション対象モジュール間で確立された前記接続リンク（１５）を記述するローカル・マップを生成するサブ・ステップ（１０４ｅ）と、
を備えることを特徴とする請求項９から１２のいずれか一項に記載の方法（１００）。
【請求項１４】
少なくとも１つの前記開始されたシミュレーション対象モジュール（１２、１３、２０）がシミュレーション・ログ（１０５）を生成するステップを備えることを特徴とする請求項９から１３のいずれか一項に記載の方法（１００）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータ科学分野において、試作、開発および試験すべき相互接続ネットワークの管理用ソフトウェアのみならず、相互接続ネットワークを可能とする相互接続ネットワーク・シミュレータに関する。本発明はまた、相互接続ネットワークをシミュレーションする方法に関する。この発明は数千のノードを含むことが可能なスーパーコンピュータに適用可能である。
【背景技術】
【０００２】
スーパーコンピュータは数個のプロセッサの集合である各ノードを結合して形成されることは既知である。これらのスーパーコンピュータは同時に多数の計算を実行可能になるよう多数のプロセッサで構成される。図１に図示するように、技術水準でのスーパーコンピュータ１は、典型的にはそれぞれがネットワーク・コントローラ３を有する数個のノード２を備え、相互接続ネットワーク４によって相互接続される。さらに、管理ネットワーク５は、それらを環境設定し、モニターし、そして管理するためのノード２と相互作用する。
【０００３】
相互接続ネットワークの主要機能は異なるノード間でデータを運搬することである。このため、相互接続ネットワークはスーパーコンピュータの性能を制約する要因であり、このスーパーコンピュータの性能は特に通信遅延および通過帯域に依存する。換言すれば、これらスーパーコンピュータの性能は相互接続ネットワークの性能に部分的に依存する。
【０００４】
膨大な数の接続、ルータおよびノードのために、そのような相互接続ネットワークの設計は複雑である。研究および検証すべき相互接続ネットワークを設計する際に、異なる技術的選択を可能とするシミュレータを、設計を検証するために使用することは既知である。
【０００５】
ｎｓ−２、ＯＭＮｅＴ＋＋／ＯＭＮＥＳＴ、ＳＳＴあるいはｓｉｍＧｒｉｄのような離散事象シミュレータは時間に亘ってのイベント順序を考慮する。しかし、これらは２つのイベントの間の時間間隔において何が発生するかは考慮しない。しかしながら、２つのイベント間の挙動は大容量シミュレーションではしばしば必要となる。この（離散事象シミュレータの）実行は、例えばＳＮＭＰタイプの、リアルタイムでの運用インタフェースの使用を禁止する。このため、これらの（離散事象シミュレータの）アプローチにおいては、リアルタイムでの高速レート相互接続ネットワークをシミュレーションする必要がない。
【発明の概要】
【課題を解決するための手段】
【０００６】
本発明の１つの目的は、従来技術における課題を克服することである。この意味において、本発明の１つの目的は、（非常に）大容量スーパーコンピュータ用のシミュレーション対象相互接続ネットワークを効率的に試作、開発および試験することを可能とする相互接続ネットワーク・シミュレータを提供することである。
【０００７】
そのために、本発明はトポロジ・シミュレーション・モジュールを有する、計算ノードの相互接続ネットワーク・シミュレータに関し、トポロジ・シミュレーション・モジュールは、以下のように構成されている：
−  定義された数のシミュレーション対象のモジュールを選択、および開始する、
−  シミュレーション対象相互接続ネットワークを形成するように、開始されたシミュレーション対象モジュール間の接続リンクを確立する、
−  ユーザが前記開始されたシミュレーション対象モジュールと相互作用することを可能とする。
【０００８】
以下の説明では、開始されたシミュレーション対象のモジュールは、例えばスイッチ・タイプのモジュール、またはネットワーク制御タイプのモジュールさえもシミュレーションするシミュレーション方法を意味する。
【０００９】
トポロジ・シミュレーション・モジュールによって、ユーザはシミュレーション対象の相互接続ネットワークと相互作用可能である、例えば、少なくとも１つの開始されたシミュレーション対象のモジュールをパラメータ化し、通信シナリオを定義する。あるいは少なくとも１つの開始されたシミュレーション対象のモジュール、もしくは少なくとも１つの確立されたコネクション・リンクを活性化もしくは不活性化することさえも行う。このように、このトポロジ・シミュレーション・モジュールによって、シミュレーション対象相互接続ネットワークは、可能な限り効率的な３２，０００個以上のノードを有するスーパーコンピュータの相互接続ネットワーク・トポロジを決定できるように、完全にパラメータ化可能であり、修正可能である。
【００１０】
本発明による相互接続ネットワーク・シミュレータは、以降においては、単独またはあらゆる技術的に可能な組合せを考慮した、１つ以上の特性を有することができる。
【００１１】
非限定的な実施形態によれば、開始されたシミュレーション対象モジュールは、相互接続ネットワークに属する複数の開始されたシミュレーション対象スイッチ・モジュールおよび前記相互接続ネットワークに属する複数の開始されたシミュレーション対象ネットワーク制御モジュールによって形成されている。
【００１２】
非限定的な実施形態によれば、開始されたシミュレーション対象モジュールは、シミュレーション対象相互接続ネットワークおよびシミュレーション対象相互接続ネットワークの管理装置間の相互作用をシミュレーションするように構成されている複数の開始されたシミュレーション対象管理モジュールによって形成されている。
【００１３】
非限定的な実施形態によれば、トポロジ・シミュレーション・モジュールは少なくとも１つの開始されたシミュレーション対象モジュールをパラメータ化することによって、ユーザが開始されたシミュレーション対象モジュールと相互作用することが可能となるように構成されている。
【００１４】
非限定的な実施形態によれば、トポロジ・シミュレーション・モジュールは少なくとも１つの開始されたシミュレーション対象モジュールを活性化または非活性化することによって、ユーザが開始されたシミュレーション対象モジュールと相互作用することが可能となるように構成されている。
【００１５】
非限定的な実施形態によれば、トポロジ・シミュレーション・モジュールは、
−  開始されたシミュレーション対象モジュールのそれぞれに識別子を付与する、
−  開始されたシミュレーション対象モジュールのそれぞれに対して、前記開始されたシミュレーション対象モジュールおよびその周辺の開始されたシミュレーション対象モジュール間で確立される接続リンクを記述するローカル・マップを生成する、
ことによって、ユーザが開始されたシミュレーション対象モジュールと相互作用することが可能となるように構成されている。
【００１６】
非限定的な実施形態によれば、トポロジ・シミュレーション・モジュールは通信シナリオを定義することによって、ユーザが開始されたシミュレーション対象モジュールと相互作用することが可能となるように構成されている。
【００１７】
非限定的な実施形態によれば、少なくとも１つの開始されたシミュレーション対象モジュールはシミュレーション・ログを生成するように構成されている。
【００１８】
本発明は、また、計算ノードの相互接続ネットワークをシミュレーションする方法に関し、前記方法は以下のステップを備える：
−  トポロジ・シミュレーション・モジュールが、定義された数のシミュレーション対象モジュールを選択するステップ、
−  トポロジ・シミュレーション・モジュールが、前記定義された数のシミュレーション対象モジュールを開始するステップ、
−  トポロジ・シミュレーション・モジュールが、シミュレーション対象相互接続ネットワークを形成するように、前記開始されたシミュレーション対象モジュール間の接続リンクを確立するステップ、
−  トポロジ・シミュレーション・モジュール経由で、ユーザが前記開始されたシミュレーション対象モジュールと相互作用するステップ。
【００１９】
非限定的な実施形態によれば、相互作用するステップは少なくとも１つの開始されたシミュレーション対象モジュールをパラメータ化するサブ・ステップを備える。
【００２０】
非限定的な実施形態によれば、相互作用するステップは少なくとも１つの通信シナリオを定義するサブ・ステップを備える。
【００２１】
非限定的な実施形態によれば、相互作用するステップは少なくとも１つの開始されたシミュレーション対象モジュールを活性化または非活性化するサブ・ステップを備える。
【００２２】
非限定的な実施形態によれば、相互作用するステップは以下のサブ・ステップを備える。
−  開始されたシミュレーション対象モジュールのそれぞれに識別子を付与するサブ・ステップ、
−  開始されたシミュレーション対象モジュールのそれぞれに対して、前記開始されたシミュレーション対象モジュールおよびその周辺のシミュレーション対象モジュールとの間で確立された接続リンクを記述するローカル・マップを生成するサブ・ステップ。
【００２３】
非限定的な実施形態によれば、本発明の１つの実施形態による相互接続ネットワークをシミュレーションする方法は、少なくとも１つの開始されたシミュレーション対象モジュールがシミュレーション・ログを生成するステップを備える。
【図面の簡単な説明】
【００２４】
本発明のさらなる特徴および利点は、添付図面に図示されている例示的および非限定的な実施形態と対応する、以下の説明から明らかになるであろう。
【００２５】
【図１】技術水準でのスーパーコンピュータを例示するブロック図である。
【図２】本発明による相互接続ネットワーク・シミュレータの非限定的実施形態を示すシステム図である。
【図３】本発明の相互接続ネットワークをシミュレーションする方法のステップを示すフローチャートである。
【００２６】
本発明を明瞭に理解する上で有効な要素のみを、スケールを示すものではないシステムとして表示、図示している。さらに、異なる図上の類似要素は参照番号で示す。
【発明を実施するための形態】
【００２７】
図２は、シミュレーション対象相互接続ネットワーク３０のみならず、特に本発明による計算ノードの相互接続ネットワーク・シミュレータ１０を図示する。
【００２８】
特に、本発明による計算ノードの相互接続ネットワーク・シミュレータ１０はトポロジ・シミュレーション・モジュール１１を備え、このトポロジ・シミュレーション・モジュール１１は以下を行うよう構成されている。
−  定義された数のシミュレータ対象モジュールを選択および開始する、
−  シミュレーション対象相互接続ネットワークを形成するように、前記開始されたシミュレーション対象モジュール間の接続リンクを確立する、
−  ユーザが前記シミュレーション対象モジュールと相互作用を行うことを可能とする。
【００２９】
特に、トポロジ・シミュレーション・モジュール１１により開始されたシミュレーション対象モジュールは、図２に図示された例では、以下によって形成される：
−  ４個のシミュレーション対象スイッチ・モジュール１２、
−  ８個のシミュレーション対象ネットワーク制御モジュール１３、
−  ４個のシミュレーション対象管理モジュール２０。
なお、シミュレーション対象管理モジュール２０のそれぞれは、シミュレーション対象相互接続ネットワーク３０と、シミュレーション対象相互接続ネットワーク３０のシミュレーション対象管理装置１４との間の相互作用をシミュレーションするように構成されている。
【００３０】
開始された・シミュレーション対象スイッチ・モジュール１２および開始されたシミュレーション対象ネットワーク制御モジュール１３は相互接続ネットワーク３０に属することに留意すべきである。しかしながら、開始されたシミュレーション対象管理モジュール２０はシミュレーション対象相互接続ネットワーク３０および管理装置１４の間のインタフェースである。換言すれば、開始されたシミュレーション対象管理モジュール２０はシミュレーション対象相互接続ネットワーク３０およびシミュレーション対象相互接続ネットワーク３０の管理装置１４の間の相互作用をシミュレーションする。
【００３１】
さらに、図示した例では、シミュレーション対象相互接続ネットワーク３０は１２個のシミュレーション対象接続リンク１５を備える。
【００３２】
明瞭な理解のために、図２に例示した開始されたシミュレーション対象モジュールの数は制限されている。
【００３３】
このように、シミュレーション対象ネットワーク制御モジュール１３のそれぞれは、コンピュータまたはプロセッサ上で実行されるトポロジ・シミュレーション・モジュール１１によって選択、開始される。一般に、開始されたシミュレーション対象ネットワーク制御モジュール１３のそれぞれはノードが情報を交換することを可能にするハードウェアタイプのネットワーク・インタフェースをシミュレーションする。
【００３４】
さらに、トポロジ・シミュレーション・モジュール１１は通信シナリオを定義することによって、ユーザが開始されたシミュレーション対象ネットワーク制御モジュール１３と相互作用することが可能なように構成されていることに留意されたい。このように、トポロジ・シミュレーション・モジュール１１に接続されているユーザ・インタフェース１６を介して、特別なフォーマットによるデータの送信、および／または、受信を制御することによって、ユーザは通信シナリオをシミュレーションすることができる。例えば、開始されたシミュレーション対象ネットワーク制御モジュール１３によって、これらのデータをデータ・パケットとして送信することが可能となる。シナリオは、メッセージを、例えばそれぞれが特定のヘッダを有する２０オクテットの短サイズのデータ・パケットに分割するように構成される。
【００３５】
さらに、これらの通信シナリオは開始されたシミュレーション対象ネットワーク制御モジュール１３のシーケンスおよび送信頻度を試験するために使用することができる。
【００３６】
一般に、試験される通信シナリオは検証すべき相互接続ネットワークを設計する際に技術的選択を行うことができる。
【００３７】
さらに、トポロジ・シミュレーション・モジュール１１は少なくとも１つの開始されたシミュレーション対象ネットワーク制御モジュール１３をパラメータ化することによって、ユーザが開始されたシミュレーション対象モジュールと相互作用することが可能になるように構成されている。例えば、開始されたシミュレーション対象ネットワーク制御モジュール１３のパラメータ化はＭＰＩタイプ方法をＣ＋＋−によって実現する。ＭＰＩライブラリの幾つかの機能を使用する方法は、決定された接続リンク１５に基づいてデータ送信を行わせることを可能とする。
【００３８】
一般に、非限定的な方法によって、開始されたシミュレーション対象ネットワーク制御モジュール１３と協働するトポロジ・シミュレーション・モジュール１１は以下を試験することを許容する：
−  データ送信の繰り返し回数、
−  データ送信の２回の繰り返し間の時間、
−  開始されたシミュレーション対象ネットワーク制御モジュール１３のそれぞれによって送受信されるデータサイズ、
−  ダウンリンクおよびアップリンク・データ送信、
−  開始されたシミュレーション対象ネットワーク制御モジュール１３の識別子の修正、
−  開始されたシミュレーション対象ネットワーク制御モジュール１３のそれぞれによって受信されたデータの確認の送信、
−  例えばデータ・パケットの破損または紛失による誤りデータの送信。
【００３９】
トポロジ・シミュレーション・モジュール１１を介してパラメータ化されたこれらの開始されたシミュレーション対象ネットワーク制御モジュール１３は、このように、通信シナリオをシミュレーションすべき高速レートタイプの相互接続ネットワークを備える実際のスーパーコンピュータを介してなされる実際の通信に非常に近似させることが可能となる。
【００４０】
非限定的な実施形態では、開始されたシミュレーション対象ネットワーク制御モジュール１３のそれぞれはシミュレーション・ログを生成するように構成されている。このように、表示スクリーン上に収集、解析、および表示されるべきトポロジ・シミュレーション・モジュール１１へのシミュレーション・ログとして、開始されたシミュレーション対象ネットワーク制御モジュール１３のそれぞれは全ての試験情報を送信することができる。
【００４１】
加えて、シミュレーション対象スイッチ・モジュール１２のそれぞれはトポロジ・シミュレーション・モジュール１１によって選択、開始される。図示した例では、開始されたシミュレーション対象スイッチ・モジュール１２のそれぞれはスイッチ・サブモジュールを備える。特に、図示した例では、開始されたシミュレーション対象スイッチ・モジュール１２のそれぞれは４個の接続ポート１７、１個のクロスバー・スイッチ１８および１個のバッファ・メモリ１９をシミュレーションする。
【００４２】
非限定的な実施形態では、トポロジ・シミュレーション・モジュール１１は、少なくとも１つの開始されたシミュレーション対象スイッチ・モジュール１２をパラメータ化することによって、ユーザが開始されたシミュレーション対象モジュールと相互作用することが可能になるように構成されている。
【００４３】
非限定的な実施形態では、トポロジ・シミュレーション・モジュール１１は、少なくとも１つのスイッチ・サブモジュール１７、１８および１９をパラメータ化することによって、ユーザが開始されたシミュレーション対象モジュールと相互作用することが可能となるように構成されている。このようにして、トポロジ・シミュレーション・モジュールを介して、多数の接続ポート１７、クロスバー・スイッチ１８の配置およびバッファ・メモリ１９の容量をパラメータ化することができる。このように、このパラメータ化はシミュレーションすべき相互接続ネットワークのハードウェアおよびソフトウェアの異なるタイプの選択を可能とする。
【００４４】
非限定的な実施形態によれば、トポロジ・シミュレーション・モジュール１１は通信シナリオを定義することによって、ユーザが開始されたネットワーク制御モジュール１３と相互作用することが可能となるように構成されている。通信シナリオを実行する際に、開始されたシミュレーション対象スイッチ・モジュール１２のそれぞれは独立であり、そのルーティング・テーブルに基づいて、およびネットワーク・トラヒックを考慮して相互接続ネットワーク内でメッセージを送受信するように構成された実際のスイッチ・モジュールのように動作する。特に、開始されたシミュレーション対象スイッチ・モジュール１２のそれぞれは、該モジュールに接続された全てのモジュールまたは装置からデータを受信し、次いでデータが意図されているモジュールまたは装置に対してのみデータを送信するように構成されている。
【００４５】
非限定的な例によれば、シミュレーション対象スイッチ・モジュール１２のそれぞれは、トポロジ・シミュレーション・モジュール１１を介して、ＭＰＩタイプの独立な方法の手段によって開始される。
【００４６】
非限定的な例によれば、トポロジ・シミュレーション・モジュール１１の手段によって定義された通信シナリオは、以下の動作を可能にする：
−  開始されたシミュレーション対象スイッチ・モジュール１２のそれぞれに対して、前記開始されたシミュレーション対象スイッチ・モジュール１２に接続される新しい接続リンク１５が生成あるいは除去されると直ちに、例えば、前記開始されたシミュレーション対象スイッチ・モジュール１２の識別子の修正をシミュレーションする、
−  例えば、予め定義されたルーティング・テーブルに基づいて開始されたシミュレーション対象スイッチ・モジュール１２によってデータがルーティングされた時に、スイッチ・モジュールの挙動をシミュレーションする、
−  サブモジュール１７、１８および１９それぞれの挙動をシミュレーションする。
【００４７】
さらに、トポロジ・シミュレーション・モジュール１１は、接続ポート１７のみならず、シミュレーション対象スイッチ・モジュール１２のそれぞれを活性化または非活性化するように構成されている。このように、この特徴は通信シナリオを運用的にチェックすることを可能にする。この特徴は開始されたシミュレーション対象スイッチ・モジュール１２のそれぞれが独立であるため、考慮に値する。
【００４８】
非限定的な実施形態において、トポロジ・シミュレーション・モジュール１１は、また、シミュレーション対象管理モジュール２０を選択、開始するように構成されている。一般に、開始されたシミュレーション対象モジュール２０のそれぞれはスイッチ・モジュール１２および管理装置１４間の相互作用をシミュレーションする。
【００４９】
図示した例において、開始されたシミュレーション対象管理モジュール２０のそれぞれは管理サブモジュールを備える。特に、開始されたシミュレーション対象管理モジュール２０のそれぞれは少なくとも１つの内部メモリ２１、プログラマブル・エージェント２２、内部カウンタ２３、および管理ネットワーク・インタフェース２４を備える。この管理ネットワーク・インタフェース２４はシミュレーションすべき管理装置１４を接続するための外部アクセスを可能にする。
【００５０】
非限定的実施形態において、トポロジ・シミュレーション・モジュール１１は少なくとも１つの開始されたシミュレーション対象管理モジュール２０をパラメータ化することによって、ユーザが開始されたシミュレーション対象モジュールと相互作用することが可能になるように構成されている。
【００５１】
非限定的実施形態において、トポロジ・シミュレーション・モジュール１１は少なくとも１つの管理サブモジュール２１、２２、２３および２４をパラメータ化することによって、ユーザが開始されたシミュレーション対象モジュールと相互作用することが可能となるように構成されている。
【００５２】
トポロジ・シミュレーション・モジュール１１を介して、以下を行うように、開始されたシミュレーション対象管理モジュール２０のそれぞれをパラメータ化可能である。
・  管理装置１４（相互接続ネットワークを管理するソフトウェアに対応する管理装置１４であり、ファブリック・マネージャーとも呼ばれる）の命令に応答するＳＮＭＰエージェントを示すＭＩＢタイプの方法を実行する、
・  管理装置１４によって管理モジュール２０へ送信されたＳＮＭＰｖ３タイプのリクエストを指示する、なお、リクエストは例えばルーティング・テーブルの更新または内部カウンタの更新さえも含む、
・  共有メモリ２６内のハードウェア実行を示すＣＳＲタイプのレイヤをシミュレーションする、
・  ＳＮＭＰインフォーム・タイプのメカニズムを介して、管理装置１４への駆動およびパフォーマンス情報の伝送を許容する。
【００５３】
相互接続ネットワークの実際の実行では、例えばＪＴＡＧタイプの通信プロトコルがスイッチ・モジュールおよびこのスイッチ・モジュールを有する管理モジュールの間で実行される。
【００５４】
本発明の範囲内において、本発明に基づく相互接続ネットワーク１０は開始されたシミュレーション対象スイッチ・モジュール１２および開始されたシミュレーション対象管理モジュール２０の間でこの通信プロトコルをシミュレーションするように構成されている。このため、共通メモリ２６が開始されたシミュレーション対象スイッチ・モジュール１２および開始されたシミュレーション対象管理モジュール２０の間で共有される。開始されたシミュレーション対象スイッチ・モジュール１２および開始されたシミュレーション対象管理モジュール２０の間で通信プロトコルは実際には実行されないが、以下のアクセス時間をパラメータ化することによってシミュレーションされる：
−  開始されたシミュレーション対象スイッチ・モジュール１２に対して、共有メモリ２６への第１のアクセス時間、
−  開始されたシミュレーション対象管理モジュール２０に対して、共有メモリ２６への第２のアクセス時間。
【００５５】
一般に、トポロジ・シミュレーション・モジュール１１は定義された数のシミュレーション対象モジュール、図２に図示された場合では、４個のシミュレーション対象スイッチ、８個のシミュレーション対象ネットワーク制御モジュール、および４個のシミュレーション対象管理モジュールを選択し、開始するように構成されている。
【００５６】
さらに、このトポロジ・シミュレーション・モジュール１１はハードウェア・リソース上でこれらの開始されたシミュレーション対象モジュールを分散するように構成されている。このために、トポロジ・シミュレーション・モジュール１１は、SLURM（Simple  Linux（登録商標）  Utility  for  Resource  Management）タイプのソリューションを使用することができる。
【００５７】
さらに、このトポロジ・シミュレーション・モジュール１１はシミュレーション対象相互接続ネットワークを形成するように、開始されたシミュレーション対象モジュール間の接続リンクを確立するように構成されている。
【００５８】
さらに、このトポロジ・シミュレーション・モジュール１１は、ユーザが全ての開始されたシミュレーション対象モジュールと、特に、シミュレーション対象相互接続ネットワークと相互作用するように構成されている。
【００５９】
さらに、このトポロジ・シミュレーション・モジュール１１は開始されたシミュレーション対象モジュールのそれぞれに識別子を付与するように構成されている。識別子のそれぞれは数字で構成することが可能である。これらの付与された識別子から、トポロジ・シミュレーション・モジュール１１は相互接続ネットワークの開始されたシミュレーション対象モジュールおよびその周辺の開始されたシミュレーション対象モジュール間で確立された接続リンクを記述するローカル・マップを定義することができる。
【００６０】
一般に、トポロジ・シミュレーション・モジュール１１はシミュレーション対象相互接続ネットワークと直接相互作用することを許容する入口ポイントである。このようにして、ユーザは、例えばコンピュータ上で実行することが可能であるこのトポロジ・シミュレーション・モジュール１１を介して、通信シナリオを定義し、開始されたシミュレーション対象モジュールのそれぞれをパラメータ化し、または幾つかの開始された・シミュレーション対象モジュールを活性化、ないしは非活性化さえも行う。例えば、ユーザはこのようにして、このトポロジ・シミュレーション・モジュール１１を介して以下を行うことが可能となる：
・  開始されたシミュレーション対象モジュール間の接続リンクを追加、および／または削除する、
・  開始されたシミュレーション対象スイッチ・モジュールを「パラメータ化する」、並びに／または、「追加する、および／もしくは、削除する」、並びに／または、「非活性化する、および／または、活性化する」、
・  開始されたシミュレーション対象管理モジュールを「パラメータ化する」、並びに／または、「追加する、および／もしくは、削除する」、並びに／または、「非活性化する、および／もしくは、活性化する」、
・  例えば、接続ポートを「パラメータ化する」、並びに／または、「追加する、および／もしくは、削除する」、並びに／または、「非活性化する、および／もしくは、活性化する」、
・  初期トポロジに戻る、
・  開始されたシミュレーション対象モジュールのそれぞれに対して、通信シナリオを定義する。
【００６１】
開始されたシミュレーション対象モジュールのそれぞれはシミュレーション・ログを生成するように構成することができる点に留意すべきである。このようにして、通信シナリオが定義され、次に実行されると、開始されたシミュレーション対象モジュールのそれぞれは、例えばスクリーンによって形成することができるユーザ・インタフェース１６にシミュレーション・ログを送信する。このため、ユーザはシミュレーション・ログを解析することが可能である。シミュレーション・ログは、例えば、開始されたシミュレーション対象モジュールの状態変化、または前記モジュールを通過したデータさえも表示可能である。
【００６２】
本発明は、また、計算ノードの相互接続ネットワーク１００をシミュレーションする方法に関する。方法１００は、特に、以下のステップを備える：
−  トポロジ・シミュレーション・モジュール１１が、定義された数のシミュレーション対象モジュール１２、１３，２０を選択するステップ１０１、
−  トポロジ・シミュレーション・モジュール１１が、前記定義された数のシミュレーション対象モジュール１２、１３，２０を開始するステップ１０２、
−  シミュレーション対象相互接続ネットワーク３０を形成するように、開始されたシミュレーション対象モジュール１２、１３間で接続リンク１５を確立するステップ１０３、
−  トポロジ・シミュレーション・モジュール１１が、前記開始されたシミュレーション対象モジュール１２、１３、２０とユーザ相互作用を行うステップ１０４。
【００６３】
方法１００は、また、シミュレーション・ログ１０５を生成するオプション・ステップを備えることができる。このようにして、シミュレーション対象モジュール１２、１３または２０のそれぞれはシミュレーション・ログを生成することができる。
【００６４】
ユーザおよびシミュレーション対象相互接続ネットワーク間の相互作用ステップ１０４は、独立あるいは結合方法で、以下のサブ・ステップを実行することができる：
−  少なくとも１つの開始されたシミュレーション対象モジュール１２、１３、２０をパラメータ化するステップ１０４ａ、
−  開始されたシミュレーション対象モジュール１２、１３、２０のそれぞれに対して、少なくとも１つの通信シナリオを定義するステップ１０４ｂ、
−  少なくとも１つの開始されたシミュレーション対象モジュール１２、１３、２０を活性化、および／または、非活性化するステップ１０４ｃ、
−  シミュレーション対象モジュール１２、１３のそれぞれの識別子を付与するステップ１０４ｄ、
−  シミュレーション対象モジュール１２、１３のそれぞれに対して、前記シミュレーション対象モジュール１２、１３およびその周辺の開始された・シミュレーション対象モジュール間で確立された接続リンク１５を記述するローカル・マップを生成するステップ１０４ｅ。
【００６５】
図３に図示された方法１００のステップは、全ての開始されたシミュレーション対象モジュール、例えば図２に図示された、スイッチ・モジュール１２、ネットワーク制御モジュール１３、または管理モジュール２０と同様に、トポロジ・シミュレーション・モジュール１１を、１つの単独プロセッサ内で、またはその幾つかが共有されている複数の個別のプロセッサ上で、実行することが可能であることに留意する必要がある。
【図１】
2015233283.tif 000003
【図２】
2015233283.tif 000004
【図３】
2015233283.tif 000005
【外国語明細書】
2015233283000001.pdf
2015233283000002.pdf
2015233283000003.pdf
2015233283000004.pdf