(57)【特許請求の範囲】
【請求項１】
通信路を介して互いに接続される複数の演算装置と前記複数の演算装置を制御する制御装置とを有する情報処理装置において、
前記演算装置は、
前記通信路にそれぞれ接続された複数の端子と、
前記複数の端子の何れかと接続可能な内部経路を介して通信規約上の物理層よりも上位層の通信を行う通信部と、
前記複数の端子の何れか一対を接続可能なバイパス部と、
前記通信部による前記複数の端子の何れかと対応する内部経路と通信を行うが、前記バイパス部による対応する前記複数の端子の何れか一対の接続を行わない上位層使用状態と、前記通信部による前記複数の端子の何れかと対応する内部経路との通信を行わないが、前記バイパス部による対応する前記複数の端子の何れか一対の接続を行う上位層不使用状態とを切り替える各端子に設けられた切替部と、
前記制御装置から入力される制御情報に基づいて、前記各端子に設けられた切替部を、前記上位層使用状態と前記上位層不使用状態との何れかにそれぞれ制御する制御部と、を有し、
前記制御装置は、
各演算装置の前記制御部に対して前記制御情報を出力し、
前記演算装置は、該演算装置に含まれる部位の故障を検出する検出部を更に含み、
前記制御装置は、前記複数の演算装置のうち前記検出部によって故障が検出された演算装置の前記制御部に対して、該故障が検出された部位に関連する前記端子に対応する前記切替部が前記上位層不使用状態に切替わるように制御し、
前記通信部は、前記端子毎に対応して設けられ、対応する前記端子から前記内部経路経由での情報の授受を司る複数のインタフェース部を更に含み、
前記検出部は、前記端子毎の前記インタフェース部の故障を検出し、
前記制御装置は、前記複数の演算装置のうち前記検出部によって故障が検出された演算装置の前記制御部に対して、該故障が検出された前記インタフェース部に関連する前記端子に対応する前記切替部が前記上位層不使用状態に切替わるように制御する、
情報処理装置。
【請求項２】
前記制御情報は、前記上位層不使用状態で接続する前記一対の端子のうちの少なくとも一方を特定する第１特定情報及び前記上位層使用状態で接続する前記一対の端子のうちの少なくとも一方を特定する第２特定情報の少なくとも１つを含み、
前記制御部は、入力された前記制御情報に前記第１特定情報が含まれていた場合、該第１特定情報に従って特定された前記一対の端子の何れかに各々対応する一対の前記切替部が前記上位層不使用状態に切替わり、入力された前記制御情報に前記第２特定情報が含まれていた場合、該第２特定情報に従って特定された前記一対の端子の何れかに各々対応する一対の前記切替部が前記上位層使用状態に切替わるように制御する請求項１に記載の情報処理装置。
【請求項３】
前記制御部は、前記検出部で故障が検出された前記インタフェース部の消費電力が抑制されるように更に制御する請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記制御部は、前記一対の端子間を前記上位層不使用状態で接続する場合、前記上位層不使用状態で接続する前記一対の端子の何れかに各々対応する前記インタフェース部の消費電力が抑制されるように更に制御する請求項１に記載の情報処理装置。
【請求項５】
前記演算装置における前記物理層は、前記一対の端子間の前記上位層不使用状態での接続に供する層を含む通信規約上の複数の階層を含み、
前記制御部は、前記一対の端子間を前記上位層不使用状態で接続する場合に前記接続に供する層以外の層の通信を担う各部の消費電力が抑制されるように更に制御する請求項１〜請求項４の何れか１項に記載の情報処理装置。
【請求項６】
前記演算装置は、入力された前記制御情報に前記第１特定情報が含まれていた場合、該第１特定情報により特定された前記一対の端子の何れかに各々に対応する一対の前記切替部が前記上位層不使用状態に切替わるように前記制御部によって制御されることで、前記上位層不使用状態で接続された前記一対の端子を介して他の前記演算装置間での情報の授受を中継する請求項２に記載の情報処理装置。
【請求項７】
制御装置に接続される演算装置において、
通信路にそれぞれ接続された複数の端子と、
前記複数の端子の何れかと接続可能な内部経路を介して通信規約上の物理層よりも上位層の通信を行う通信部と、
前記複数の端子の何れか一対を接続可能なバイパス部と、
前記通信部による前記複数の端子の何れかと対応する内部経路との通信を行うが、前記バイパス部による対応する前記複数の端子の何れか一対の接続を行わない上位層使用状態と、前記通信部による前記複数の端子の何れかと対応する内部経路との通信を行わないが、前記バイパス部による対応する前記複数の端子の何れか一対の接続を行う上位層不使用状態とを切り替える各端子に設けられた切替部と、
前記制御装置から入力される制御情報に基づいて、前記各端子に設けられた切替部を、上位層使用状態と上位層不使用状態との何れかにそれぞれ制御する制御部と、
を含み、
前記演算装置に含まれる部位の故障を検出する検出部を更に含み、
前記制御部は、前記検出部によって故障が検出された部位に関連する前記端子に対応する前記切替部が前記上位層不使用状態に切替わるように制御し、
前記通信部は、前記端子毎に対応して設けられ、対応する前記端子から前記内部経路経由での情報の授受を司る複数のインタフェース部を更に含み、
前記検出部は、前記端子毎の前記インタフェース部の故障を検出し、
前記制御部は、前記検出部によって故障が検出された前記インタフェース部に関連する前記端子に対応する前記切替部が前記上位層不使用状態に切替わるように制御する、
演算装置。
【請求項８】
前記制御部は、前記検出部で故障が検出された前記インタフェース部の消費電力が抑制されるように更に制御する請求項７に記載の演算装置。
【請求項９】
前記制御部は、前記一対の端子間を前記上位層不使用状態で接続する場合、前記上位層不使用状態で接続する前記一対の端子の何れかに各々対応する前記インタフェース部の消費電力が抑制されるように更に制御する請求項７に記載の演算装置。
【請求項１０】
前記演算装置における前記物理層は、前記一対の端子間の前記上位層不使用状態での接続に供する層を含む通信規約上の複数の階層を含み、
前記制御部は、前記一対の端子間を前記上位層不使用状態で接続する場合に前記接続に供する層以外の層の通信を担う各部の消費電力が抑制されるように更に制御する請求項７〜請求項９の何れか１項に記載の演算装置。
【請求項１１】
通信路を介して互いに接続される複数の演算装置と前記複数の演算装置を制御する制御装置とを有する情報処理装置の制御方法において、
前記制御装置が、各演算装置に対して制御情報を出力し、
前記各演算装置が、前記制御情報に基づいて、前記演算装置が有する各端子について、前記通信路にそれぞれ接続された複数の何れかと接続可能な内部経路を介して通信規約上の物理層よりも上位層の通信を行う通信部を用いて前記複数の端子の何れかと対応する内部経路との通信を行うが、前記複数の端子の何れか一対を接続可能なバイパス部を用いて対応する前記複数の端子の何れか一対の接続を行わない上位層使用状態と、前記通信部を用いた前記複数の端子の何れかと対応する内部経路との通信を行わないが、前記バイパス部を用いた対応する前記複数の端子の何れか一対の接続を行う上位層不使用状態とを切り替え、
前記演算装置が、該演算装置に含まれる部位の故障を検出し、
前記制御装置が、前記複数の演算装置のうち故障が検出された部位に関連する前記端子について前記上位層使用状態とされている場合、該一対の端子について前記上位層使用状態を前記上位層不使用状態に切り替え、
前記演算装置が、前記端子毎に対応して設けられ、対応する前記端子から前記内部経路経由での情報の授受を司る複数のインタフェース部の故障を検出し、
該故障が検出された前記演算装置に対して、該故障が検出された前記インタフェース部に関連する前記端子について前記上位層使用状態とされている場合、該一対の端子について前記上位層使用状態を前記上位層不使用状態に切り替える、
情報処理装置の制御方法。
【請求項１２】
前記制御情報が、前記上位層不使用状態で接続する前記一対の端子のうちの少なくとも一方を特定する第１特定情報及び前記上位層使用状態で接続する前記一対の端子のうちの少なくとも一方を特定する第２特定情報の少なくとも１つを含み、
前記演算装置が、入力された前記制御情報に前記第１特定情報が含まれている状態で、該第１特定情報に従って特定された前記一対の端子について前記上位層使用状態とされている場合、該一対の端子について前記上位層使用状態を前記上位層不使用状態に切り替える請求項１１に記載の情報処理装置の制御方法。
【請求項１３】
前記演算装置が、前記故障が検出された前記インタフェース部の消費電力を抑制する請求項１２に記載の情報処理装置の制御方法。
【請求項１４】
前記演算装置が、前記一対の端子間を前記上位層不使用状態で接続する場合、複数の前記インタフェース部のうち前記上位層不使用状態で接続する前記一対の端子の何れかに各々対応する前記インタフェース部の消費電力を抑制する請求項１１に記載の情報処理装置の制御方法。
【請求項１５】
前記演算装置における前記物理層は、前記一対の端子間の前記上位層不使用状態での接続に供する層を含む通信規約上の複数の階層を含み、
前記演算装置が、前記一対の端子間を前記上位層不使用状態で接続する場合に前記接続に供する層以外の層の通信を担う各部の消費電力を抑制する請求項１１〜請求項１４の何れか１項に記載の情報処理装置の制御方法。
【請求項１６】
前記演算装置が、入力された前記制御情報に前記第１特定情報が含まれていた場合、該第１特定情報により特定された前記一対の端子の何れかに各々について前記上位層不使用状態に切替えることで、前記上位層不使用状態で接続された前記一対の端子を介して他の前記演算装置間での情報の授受を中継する請求項１２に記載の情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
開示の技術は、情報処理装置、演算装置及び情報処理装置の制御方法に関する。
【背景技術】
【０００２】
情報処理システムに含まれる複数の情報処理装置の間を接続する接続方式として、情報処理装置の間を外付けの専用ルータを介して接続する間接接続方式と、情報処理装置同士を直接接続する直接接続方式が知られている。直接接続方式では、複数の情報処理装置が、演算を行う情報処理装置の各々と通信を行うルータ部を各々備え、通信網（直接網）を介して相互に接続されている。
【０００３】
また、情報処理装置同士の通信における通信プロトコルは一例として図２１に示すように階層化されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−３２８１３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、情報処理装置内部の直接接続方式で相互に接続された複数の演算装置は、パケットを送信する送信ノード及びパケットを受信する受信ノードとして機能する。また、演算装置はパケットを中継する中継ノードとしても機能する。この中継ノードとして機能する場合、演算装置は、一例として図２２に示すように、送信ノードから送信されたパケットをデータリンク層に取り込み、取り込んだパケットに含まれる宛先に基づいて転送先を決定する、というデータリンク層レベルの処理を行う。そして、クロスバースイッチに対してスイッチング制御を行うことで、転送先である受信ノードに対してパケットを転送することでパケットの中継を行う。
【０００６】
しかしながら、演算装置が中継ノードとして機能する場合、パケットをデータリンク層まで取り込み、パケットに含まれる宛先の読み込みやパケットのエラーチェックなどのデータリンク層レベルの処理を行う。そのため、その分だけ通信に要する時間が長くなってしまう、という問題点があった。
【０００７】
１つの側面では、本発明は、情報処理装置内の１個以上の演算装置で中継される通信における通信時間の短縮を図ることが目的である。
【０００８】
他の側面では、本発明は、演算装置内の１個以上のコアで中継される通信における通信時間の短縮を図ることが目的である。
【課題を解決するための手段】
【０００９】
開示の技術は、通信路を介して互いに接続される複数の演算装置と前記複数の演算装置を制御する制御装置とを有する情報処理装置において、前記演算装置が、前記通信路にそれぞれ接続された複数の端子を有する。また、前記演算装置は、前記複数の端子の何れかと接続可能な内部経路を介して通信規約上の物理層よりも上位層の通信を行う通信部を有する。また、前記演算装置は、前記複数の端子の何れか一対を接続可能なバイパス部を有する。また、前記演算装置は、上位層使用状態と上位層不使用状態とを切り替える各端子に設けられた切替部を有する。上位層使用状態とは、例えば前記通信部による前記複数の端子の何れかと対応する内部経路と通信を行うが、前記バイパス部による対応する前記複数の端子の何れか一対の接続を行わない状態を指す。上位層不使用状態とは、例えば前記通信部による前記複数の端子の何れかと対応する内部経路との通信を行わないが、前記バイパス部による対応する前記複数の端子の何れか一対の接続を行う状態を指す。また、前記演算装置は、前記制御装置から入力される制御情報に基づいて、前記各端子に設けられた切替部を、前記上位層使用状態と前記上位層不使用状態との何れかにそれぞれ制御する制御部を有する。そして、前記制御装置は、各演算装置の前記制御部に対して前記制御情報を出力する。
開示の技術の情報処理装置において、演算装置は、該演算装置に含まれる部位の故障を検出する検出部を更に含む。制御装置は、複数の演算装置のうち検出部によって故障が検出された演算装置の制御部に対して、該故障が検出された部位に関連する端子に対応する切替部が上位層不使用状態に切替わるように制御する。通信部は、端子毎に対応して設けられ、対応する端子から内部経路経由での情報の授受を司る複数のインタフェース部を更に含む。検出部は、端子毎のインタフェース部の故障を検出し、制御装置は、複数の演算装置のうち検出部によって故障が検出された演算装置の制御部に対して、該故障が検出されたインタフェース部に関連する端子に対応する切替部が上位層不使用状態に切替わるように制御する。
【発明の効果】
【００１０】
１つの側面では、本発明は、情報処理装置内の１個以上の演算装置で中継される通信における通信時間の短縮を図ることができる、という効果を有する。
【００１１】
他の側面では、本発明は、演算装置内の１個以上のコアで中継される通信における通信時間の短縮を図ることが目的である。
【図面の簡単な説明】
【００１２】
【図１】実施形態に係る情報処理装置の構成の一例を示す概略構成図である。
【図２】実施形態に係る情報処理装置に含まれる演算装置の構成の一例を示す概略構成図である。
【図３】実施形態に係る情報処理装置の要部機能の一例を示すブロック図である。
【図４】実施形態に係るサービスプロセッサの電気系の構成の一例を示すブロック図である。
【図５】実施形態に係るサービスプロセッサに含まれる演算負担割当ＤＢの構成の一例を示す模式図である。
【図６】実施形態に係るコントローラの電気系の構成の一例を示すブロック図である。
【図７】実施形態に係る供給処理の流れの一例を示すフローチャートである。
【図８】実施形態に係る切替制御処理の流れの一例を示すフローチャートである。
【図９】実施形態に係る切替制御処理が行われることで得られる作用及び効果の一例を示す模式図である。
【図１０】実施形態に係る切替制御処理が行われることでポート間が物理層レベルで接続された態様の一例を示す概略構成図である。
【図１１】実施形態に係る切替制御処理が行われることでポート間が上位層レベル（データリンク層レベル）で接続された態様の一例を示す概略構成図である。
【図１２】実施形態に係る並列演算部にトーラス・ネットワークが形成された場合の態様の一例を示す概略構成図である。
【図１３】実施形態に係る並列演算部にハイパーキューブ・ネットワークが形成された場合の態様の一例を示す概略構成図である。
【図１４】実施形態に係る並列演算部の変形例を示す概略構成図である。
【図１５】図１４に示す並列演算部に含まれる演算装置の要部構成の一例を示す概略構成図である。
【図１６】図１４に示す並列演算部にメッシュ・トーラス・ネットワークが形成された場合の態様の一例が示す概略構成図である。
【図１７】図１６に示すメッシュ・トーラス・ネットワークが形成された並列演算部に含まれる演算装置の要部構成の一例を示す概略構成図である。
【図１８】データリンク層からアプリケーション層の直下の層までを省電力化対象としたことを示す模式図である。
【図１９】データリンク層からアプリケーション層の直下の層までを省電力化対象としたことに加え、物理層に含まれるＲＳ層も省電力化対象としたことを示す模式図である。
【図２０】データリンク層からアプリケーション層の直下の層までを省電力化対象としたことに加え、物理層に含まれるＰＭＡ層からＲＳ層までも省電力化対象としたことを示す模式図である。
【図２１】通信規約上の階層の一例を示す模式図である。
【図２２】パケットを送信するノード（パケット送信ノード）、パケットを受信するノード（パケット受信ノード）及びパケットを中継するノード（中継ノード）の従前の一例を示す模式図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。なお、以下の説明では、複数の演算装置で１つのタスクを動作させる並列演算を行う情報処理装置を例に挙げて説明するが、開示の技術に係る演算装置は、これに限定されるものではない。開示の技術は、例えば、１台以上の演算装置が搭載された携帯型又は据置型のパーソナル・コンピュータ（ＰＣ）などにも適用可能である。また、以下の説明では、システムボードに設けられた複数の演算装置間を接続する場合を例に挙げて説明するが、開示の技術は、これに限定されるものではない。例えば、表１に示すようにチップ内のコア間接続（Network On Chip）や、各々演算装置が搭載された複数のシステムボード間での接続などを行う場合にも適用可能である。
【００１４】
図１には、本実施形態に係る情報処理システム１０の要部構成の一例が概略的に示されている。情報処理システム１０は、制御装置としてのサービスプロセッサ１２及び情報処理装置１４を備えている。サービスプロセッサ１２は、情報処理システム１０全体を制御する。例えば、サービスプロセッサ１２は、インターネットやＬＡＮ（Local Area Network）などを介して外部装置（例えばＰＣ(Personal Computer)）に接続されており、外部装置の要求に応じた処理を情報処理装置１４に対して実行させる。そして、情報処理装置１４による処理の実行結果を外部装置に出力する。情報処理装置１４は、マトリクス状に配置された複数の演算ノードとしての演算装置１６を備えている。なお、本実施形態では、情報処理装置１４における演算装置１６の位置を、一例として図１に示すように、Ｘ軸とＹ軸を有する二次元座標を利用して特定する例を挙げて説明する。また、本実施形態では、複数の演算装置１６の一例として、８行８列（Ｘ軸方向８台×Ｙ軸方向８台）に配置された６４台の演算装置１６がシステムボード（図示省略）に設けられている。そのため、演算装置１６の位置を特定するＸ座標及びＹ座標の各々は０〜７の整数値で表現することができる。
【００１５】
複数の演算装置１６の各々は、通信線１８を介して隣接する演算装置１６と接続されており、通信線１８を介して隣接する演算装置１６と通信可能とされている。なお、本実施形態では、説明の便宜上、一例として複数の演算装置１６の各々が２本の通信線１８を介して隣接する演算装置１６と接続されている態様を挙げているが、開示の技術はこれに限定されるものではない。例えば、複数の演算装置１６の各々は、１本又は３本以上の通信線１８を介して隣接する演算装置１６と接続されていてもよい。
【００１６】
図２には、図１に示す破線円形枠で囲まれた演算装置１６の要部構成の一例が示されている。図２に示すように、演算装置１６は、処理を実行する演算処理装置としてのＣＰＵ(Central Processing Unit)２０と、メモリ２１と、他の演算装置１６との情報の送受信を司るルータ部２２と、を含んで構成されている。ＣＰＵ２０は、ＯＳＩ基本参照モデルでのトランスポート層（第４層）からアプリケーション層（第７層）までの通信を担っている。ルータ部２２は、ＯＳＩ基本参照モデルでの物理層（第１層）からネットワーク層（第３層）までの通信を担っている。
【００１７】
メモリ２１は、各種プログラムの実行時のワークエリア等として用いられる記憶媒体であるＲＡＭ領域と電源スイッチが切られても保持する必要がある各種情報を記憶する不揮発性の記憶媒体であるＲＯＭ領域と、を有し、ＣＰＵ２０によって用いられる。
【００１８】
ルータ部２２は、隣接する他の演算装置１６と２本の通信線１８を介して通信可能に接続されており、サービスプロセッサ１２とは通信線２４を介して通信可能に接続されている。ルータ部２２は、複数のポート２６、コントローラ２８、開示の技術に係るバイパス部の一例であるバイパス線２９、開示の技術に係る通信部の一例であるクロスバースイッチ３０及びパケット送受信部３２を備えている。
【００１９】
複数のポート２６の各々は、通信線１８を介して他の演算装置１６に接続されており、他の演算装置１６から送信された情報を取り込む入力ポートとして機能すると共に、他の演算装置１６へ情報を送信する出力ポートとして機能する。本実施形態では、複数のポート２６の一例として１台の演算装置１６につき８個のポート２６を備えている。図２に示す例では、８個のポート２６は、クロスバースイッチ３０を挟んで、Ｘ軸方向及びＹ軸方向の両端部に２個ずつ配置されており、隣り合う２個で一対を成している。そして、バイパス線２９が、対を成すポート２６間を接続している。
【００２０】
コントローラ２８は、サービスプロセッサ１２の制御下でルータ部２２全体の動作を制御する。コントローラ２８には、複数のポート２６の各々、クロスバースイッチ３０及びパケット送受信部３２が個別に接続されている。従って、コントローラ２８は、複数のポート２６の各々、クロスバースイッチ３０及びパケット送受信部３２の監視及び制御を行うことができる。
【００２１】
クロスバースイッチ３０は、Ｘ軸に略平行な複数の通信路（図示省略）及びＹ軸に略平行な複数の通信路（図示省略）と、Ｘ軸に平行な通信路とＹ軸に平行な通信路の交点に各々設けられたスイッチ（図示省略）と、を有している。そして、これらのスイッチの動作が制御されることで情報の転送先を切替える。本実施形態に係るクロスバースイッチ３０には、複数のポート２６、コントローラ２８及びパケット送受信部３２が接続されている。従って、複数のポート２６、コントローラ２８及びパケット送受信部３２はクロスバースイッチ３０を介して相互に情報の授受を行うことができる。
【００２２】
パケット送受信部３２は、ＣＰＵ２０に接続されており、ＣＰＵ２０の指示に従ってパケットを生成してクロスバースイッチ３０へ送り出す。また、パケット送受信部３２は、何れかのポート２６及びクロスバースイッチ３０を介して他の演算装置１６から送信されたパケットを受信し、受信したパケットから特定の情報を抽出し、抽出した情報をＣＰＵ２０の要求に応じてＣＰＵ２０へ提供する。
【００２３】
図３には、図２に示す破線円形枠で囲まれたポート２６の要部構成の一例、並びにサービスプロセッサ１２及びコントローラ２８の要部機能の一例が示されている。図３に示すように、ポート２６は、端子３４と、開示の技術に係る切替部の一例であるセレクタ３６と、開示の技術に係るインタフェース部の一例である論理回路３８と、ポート制御用レジスタ４０と、を含んでいる。端子３４は、通信線１８Ａを介して隣接する他の演算装置１６の端子３４と接続されている。
【００２４】
セレクタ３６は端子３４毎に設けられており、上位層使用状態と上位層不使用状態とに切替可能である。ここで言う「上位層使用状態」とは、例えば論理回路３８による複数の端子３４の何れかと対応する通信線３７（後述）と通信を行うが、バイパス線２９による対応する複数の端子３４の何れか一対の接続を行わない状態を指す。より詳しくは、例えば、対応する端子３４と論理回路３８とを接続し且つ対応する端子３４とバイパス線２９とを切断した状態を指す。また、ここで言う「上位層不使用状態」とは、例えば論理回路３８による複数の端子３４の何れかと対応する通信線３７と通信を行わないが、バイパス線２９による対応する複数の端子３４の何れか一対の接続を行う状態を指す。より詳しくは、例えば対応する端子３４と論理回路３８とを切断し且つ対応する端子３４とバイパス線２９とを接続した状態を指す。
【００２５】
セレクタ３６は、単極双投スイッチ４２を備えている。単極双投スイッチ４２の共通接点４２Ａは端子３４に接続されている。単極双投スイッチ４２のノーマリーオープンとされるａ接点４２Ｂはバイパス線２９の一端に接続されている。なお、バイパス線２９の他端は、図３に示すポート２６と対を成すポート２６に含まれるセレクタ２６における単極双投スイッチ４２のａ接点４２Ｂに接続されている。
【００２６】
単極双投スイッチ４２のノーマリークローズとされるｂ接点４２Ｃは、開示の技術に係る内部経路の一例である通信線３７の一端に接続されている。なお、通信線３７の他端は論理回路３８に接続されている。
【００２７】
論理回路３８は、端子３４毎に対応して設けられており、対応する端子３４とコントローラ２８との間の情報の授受、及び、対応する端子３４とパケット送受信部３２との間の情報の授受を司る。論理回路３８が行う処理には、例えば、セレクタ３６を介して他の演算装置１６から送信されたパケットを受信し、受信したパケットに対してヘッダ解析及びエラーチェックなどのデータリンク層レベルの一部の処理が含まれる。そして、所定処理を行ったパケットをクロスバースイッチ３０を介してパケット送受信部３２へ送信する。
【００２８】
ポート制御用レジスタ４０はコントローラ２８に接続されている。従って、コントローラ２８は、ポート制御部レジスタ４０における設定レジスタの値を変更することができる。また、ポート制御用レジスタ４０はセレクタ３６にも接続されており、セレクタ３６の単極双投スイッチ４２の動作は、ポート制御部レジスタ４０における設定レジスタの値に従って制御される。例えば、ポート制御用レジスタ４０の設定レジスタの値が“０”の場合は単極双投スイッチ４２のｂ接点４２Ｃが閉じられ、ポート制御用レジスタ４０の設定レジスタの値が“１”の場合は単極双投スイッチ４２のａ接点４２Ｂが閉じられる。また、論理回路３８は、受電制御スイッチ（図示省略）を有している。この受電制御スイッチは、オンされると論理回路３８に対して電力の供給が行われ、オフされると論理回路３８に対しての電力の供給が停止される。受電制御スイッチのオン及びオフの切替は、ポート制御部レジスタ４０における設定レジスタの値に従って制御される。例えば、ポート制御用レジスタ４０の設定レジスタの値が“０”の場合は受電制御スイッチがオンされ、ポート制御用レジスタ４０の設定レジスタの値が“１”の場合は受電制御スイッチがオフされる。
【００２９】
コントローラ２８は、制御部４４及び検出部４６を備えている。制御部４４は、サービスプロセッサ１２から入力される開示の技術に係る制御情報（一例として後述の上位層使用指示情報及び上位層不使用指示情報）に基づいて、各端子３４に設けられたセレクタ３６を、上位層使用状態と上位層不使用状態との何れかに制御する。例えば、一対のポート２６の各々に含まれる端子３４（一対の端子３４）間を物理層レベルで接続する場合に一対の端子３４の何れかに各々対応する一対のセレクタ３６が上位層不使用状態に切替わるようにセレクタ３６を制御する。より詳しくは、例えば、物理層レベルで接続する一対の端子３４を指示する上位層不使用指示情報が供給された場合、上位層不使用指示情報により指示された一対の端子３４の何れかに各々対応する一対のセレクタ３６が上位層不使用状態に切替わるように制御する。この場合のセレクタ３６を制御する構成の一例として、本実施形態では、ポート制御用レジスタ４０の設定レジスタの値を“１”に設定することでセレクタ３６を制御している。
【００３０】
また、制御部４４は、一対の端子３４を論理回路２８に各々接続する場合に一対の端子３４の何れかに各々対応する一対のセレクタ３６が上位層使用状態に切替わるようにセレクタ３６を制御する。例えば、論理回路３８に接続する一対の端子３４を指示する上位層使用指示情報が供給された場合、上位層使用指示情報により指示された一対の端子３４の何れかに各々対応する一対のセレクタ３６が上位層使用状態に切替わるように制御する。この場合のセレクタ３６を制御する構成の一例として、本実施形態では、ポート制御用レジスタ４０の設定レジスタの値を“０”に設定することでセレクタ３６を制御している。
【００３１】
検出部４６は、クロスバースイッチ３０及び論理回路３８を含むデータリンク層の接続を担う回路素子の少なくとも１つの故障を検出する。なお、本実施形態では、クロスバースイッチ３０及び論理回路３８の少なくとも１つの故障を検出する。
【００３２】
制御部４４は、クロスバースイッチ３０及び論理回路３８の少なくとも１つの故障が検出部４６によって検出された場合に、故障が検出された対象を有するポート２６の端子３４と、この端子３４と対を成す端子３４との間を物理層レベルで接続する。
【００３３】
また、制御部４４は、クロスバースイッチ３０及び論理回路３８の少なくとも１つの故障が検出部４６によって検出された場合に、故障が検出された対象の消費電力が抑制されるように制御する。例えば、故障が検出された対象が論理回路３８の場合は、ポート制御用レジスタ４０の設定レジスタの値を“１”に設定する。
【００３４】
サービスプロセッサ１２は、供給部４８を備えている。供給部４８は、各演算装置１６の制御部４４に対して開示の技術に係る制御情報を出力する。例えば、複数の演算装置１６の各々の制御部４４に対して上位層不使用指示情報及び上位層使用指示情報を選択的に供給する。この場合、上位層不使用指示情報は、物理層レベルで接続する一対の端子３４のうちの少なくとも一方を特定する開示の技術に係る第１特定情報を含む。また、上位層不使用指示情報は、論理回路３８に接続する一対の端子３４のうちの少なくとも一方を特定する開示の技術に係る第２特定情報を含む。
【００３５】
制御部４４は、供給部４８によって上位層不使用指示情報が供給された場合、上位層不使用指示情報に含まれる第１特定情報に従って特定された一対の端子３４の何れかに各々対応する一対のセレクタ３６が上位層不使用状態に切替わるように制御する。また、制御部４４は、供給部４８によって上位層使用指示情報が供給された場合、上位層使用指示情報に含まれる第２特定情報に従って特定された一対の端子３４の何れかに各々対応する一対のセレクタ３６が上位層使用状態に切替わるように制御する。
【００３６】
図４には、サービスプロセッサ１２の電気系の要部構成の一例が示されている。図４に示すように、サービスプロセッサ１２は、ＣＰＵ５０、メモリ５２及び不揮発性の記憶部５４を備え、これらはアドレスバスやシステムバス等を含んで構成されたバス５６を介して互いに接続されている。なお、記憶部５４は、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどによって実現できる。記憶媒体としての記憶部５４には、供給処理プログラム５７及び演算負担割当ＤＢ（データベース）５８（後述）が記憶されている。
【００３７】
ＣＰＵ５０は、記憶部５４から供給処理プログラム５７を読み出してメモリ５２に展開し、供給処理プログラム５７が有するプロセスを順次実行する。供給処理プログラム５７は、供給プロセス６０を有する。ＣＰＵ５０は、供給プロセス６０を実行することで、図３に示す供給部４８として動作する。
【００３８】
なお、ここでは供給処理プログラム５７を記憶部５４から読み出す場合を例示したが、必ずしも最初から記憶部５４に記憶させておく必要はない。例えば、サービスプロセッサ１２に接続されて使用されるフレキシブルディスク、いわゆるＦＤ、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの任意の「可搬型の物理媒体」に先ずは供給処理プログラム５７を記憶させておいてもよい。そして、サービスプロセッサ１２がこれらの可搬型の物理媒体から供給処理プログラム５７を取得して実行するようにしてもよい。また、インターネットやＬＡＮなどを介してサービスプロセッサ１２に接続される他のコンピュータまたはサーバ装置などに供給処理プログラム５７を記憶させておき、サービスプロセッサ１２がこれらから供給処理プログラム５７を取得して実行してもよい。
【００３９】
図５には、演算負担割当ＤＢ５８の構成の一例が示されている。図５に示すように、演算負担割当ＤＢ５８は、情報処理装置１４において演算を行わせる（負担させる）演算装置１６、検出部４６で故障が検出されたポート２６、及び検出部４６で故障が検出されなかったポート２６を特定するために用いるＤＢである。演算負担割当ＤＢ５８は、情報処理装置１４に含まれる全ての演算装置１６の各々を特定する座標値が登録されている。また、演算負担割当ＤＢ５８は、各座標値毎に、対応する座標値により特定される演算装置１６が演算を行わせる対象として指定されているか否かを示す演算負担指定値が設定されている。本実施形態では、演算装置１６が演算を行わせる対象として指定されていることを示す演算負担指示値の一例として“１”を、演算装置１６が演算を行わせる対象として指定されていないことを示す演算負担指示値の一例として“０”を各々用いている。
【００４０】
また、演算負担割当ＤＢ５８は、各座標値毎に、対応する座標値により特定される演算装置１６が有するポート２６を特定するポートＩＤが設定されている。また、演算負担割当ＤＢ５８は、ポートＩＤ毎に、対応するポートＩＤにより特定されるポート２６の故障の有無を特定する故障特定値が設定されている。本実施形態では、ポート２６の故障が有ることを特定する故障特定値の一例として“１”を、ポート２６の故障が無いことを特定する故障特定値の一例として“０”を各々用いている。
【００４１】
なお、演算負担割当ＤＢ５８は、情報処理装置１４に対して演算を行わせる前に作成され、その内容は、処理対象情報の量や要求される処理時間などによって異なる。例えば、１台の演算装置１６で間に合う処理内容であれば、演算負担割当ＤＢ５８の演算負担指定値として“１”が割り当てられる座標値は１個である。逆に、全ての演算装置１６を使用することが望ましい処理内容であれば、演算負担割当ＤＢ５８の演算負担指定値として“１”が割り当てられる座標値は最大で６４個である。
【００４２】
また、本実施形態では、全ての演算装置１６の各々の検出部４６での検出結果に基づいて、当初使用を予定していた演算装置１６が使用不可能であることが判明した場合、演算負担割当ＤＢ５８の内容が変更される可能性がある。例えば、当初使用を予定していた１台の演算装置１６における全てのポート２６で故障が検出された場合にその演算装置１６に割り当てられた演算負担指定値が“０”に変更される。そして、少なくとも一対のポート２６で故障が検出されていない演算装置１６であって、現時点で演算負担指定値が“０”に設定されている演算装置１６が存在する場合、そのうちの１台の演算装置１６の演算負担指定値が“１”に変更される。なお、この場合、全てのポート２６で故障が検出されていない演算装置１６から優先的に演算負担指定値が“１”に変更されるようにしてもよい。
【００４３】
図６には、コントローラ２８の電気系の要部構成の一例が示されている。図６に示すように、コントローラ２８は、ＣＰＵ６２、メモリ６４及び不揮発性の記憶部６６を備え、これらはアドレスバスやシステムバス等を含んで構成されたバス６８を介して互いに接続されている。なお、記憶部６６は、ＨＤＤやフラッシュメモリなどによって実現できる。記憶媒体としての記憶部６６には、切替制御処理プログラム７０が記憶されている。
【００４４】
ＣＰＵ６２は、記憶部６６から切替制御処理プログラム７０を読み出してメモリ６４に展開し、切替制御処理プログラム７０が有するプロセスを順次実行する。切替制御処理プログラム７０は、制御プロセス７２を有する。ＣＰＵ６２は、制御プロセス７２を実行することで、図３に示す制御部４４として動作する。ＣＰＵ６２は、検出プロセス７４を実行することで、図３に示す検出部４６として動作する。
【００４５】
なお、ここでは切替制御処理プログラム７０を記憶部６６から読み出す場合を例示したが、必ずしも最初から記憶部６６に記憶させておく必要はない。例えば、コントローラ２８に接続されて使用されるフレキシブルディスク、いわゆるＦＤ、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの任意の「可搬型の物理媒体」に先ずは切替制御処理プログラム７０を記憶させておいてもよい。そして、コントローラ２８がこれらの可搬型の物理媒体から切替制御処理プログラム７０を取得して実行するようにしてもよい。また、インターネットやＬＡＮなどを介してコントローラ２８に接続される他のコンピュータまたはサーバ装置などに切替制御処理プログラム７０を記憶させておき、コントローラ２８がこれらから切替制御処理プログラム７０を取得して実行するようにしてもよい。
【００４６】
次に本実施形態の作用として、ＣＰＵ５０が供給処理プログラム５７を実行することでサービスプロセッサ１２で行われる供給処理について、図７を参照して説明する。図７には情報処理装置１０に対して電源投入がされた際に行われる供給処理が示されている。
【００４７】
ステップ１０４では、供給部４８により、全ての演算装置１６から後述するステップ１６４で送信された検査結果情報を受信したか否かが判定される。ここで言う「検査結果情報」とは、例えば演算装置１６の検出部４４での検出結果に相当する情報である。すなわち、ポートＩＤ毎に特定されるポート２６の故障の有無を示す情報である。なお、ここでは錯綜を回避するためにポート２６の故障の有無を例示しているが、ＣＰＵ２０やパケット送受信部３２の故障の有無であってもよく、演算装置１６に含まれる部位の故障であればよい。本ステップ１０４において、全ての演算装置１６から検査結果情報を受信した場合は判定が肯定されてステップ１０６へ移行する。本ステップ１０４において、全ての演算装置１６から検査結果情報を受信していない場合は判定が否定されて再びステップ１０４の判定が行われる。このように供給部４８によって検査結果情報が取得されると、例えば後述のメッシュ・ネットワーク、ハイパーキューブ・ネットワーク又はメッシュ・トーラス・ネットワークなどの接続形態が決定される。そして、供給部４８は、決定された接続形態に最適な形で、かつ、故障により使用できない演算装置１６やポート２６などを回避するように各演算装置１６にジョブを割り当てる（演算負担割当ＤＢ５８の演算負担指定値を設定する）。
【００４８】
ステップ１０６では、供給部４８により、上記のステップ１０４で受信された検査結果情報に基づいて故障しているポート２６が存在しているか否かが判定される。本ステップ１０６において、故障しているポート２６が存在している場合は判定が肯定されてステップ１０７へ移行する。本ステップ１０６において、故障しているポート２６が存在していない場合は判定が否定されてステップ１１６へ移行する。
【００４９】
ステップ１０７では、供給部４８により、上記のステップ１０４で受信された検査結果情報に従って演算負担担当ＤＢ５８が変更される。例えば、検査結果情報に含まれているポートＩＤにより特定されるポート２６が故障しているにも拘らず、演算負担担当ＤＢ５８における対応するポートＩＤには故障有無特定値として“０”が割り当てられている場合、故障有無特定値が“１”に変更される。逆に、検査結果情報に含まれているポートＩＤにより特定されるポート２６が故障していないにも拘らず、演算負担担当ＤＢ５８における対応するポートＩＤには故障有無特定値として“１”が割り当てられている場合、故障有無特定値が“０”に変更される。
【００５０】
次のステップ１０８では、供給部４８により、上記のステップ１００で取得された演算負担割当ＤＢ５８に基づいて、故障しているポート２６が演算処理で使用するポート２６であるか否かが判定される。本ステップ１０８において、故障しているポート２６が演算処理で使用するポート２６である場合は判定が肯定されてステップ１０９へ移行する。本ステップ１０８において、故障しているポート２６が演算処理で使用するポート２６でない場合は判定が否定されてステップ１１６へ移行する。
【００５１】
ステップ１０９において、供給部４８により、上記のステップ１０７で変更された演算負担割当ＤＢ５８に基づいて、演算処理を代替させることが必要な演算装置１６が存在しているか否かが判定される。すなわち、全てのポート２６が故障している演算装置１６が存在しているか否かが判定される。本ステップ１０９において、演算処理を代替させることが必要な演算装置１６が存在していない場合は判定が否定されてステップ１１６へ移行する。本ステップ１０９において、演算処理を代替させることが必要な演算装置１６が存在している場合は判定が肯定されてステップ１１０へ移行する。
【００５２】
ステップ１１０では、上記のステップ１０７で変更された演算負担割当ＤＢ５８に基づいて、少なくとも一対のポート２６が故障していない代替可能な演算装置１６が存在しているか否かが判定される。本ステップ１１０において、代替可能な演算装置１６が存在している場合は判定が肯定されてステップ１１２へ移行する。本ステップ１１０において、代替可能な演算装置１６が存在していない場合は判定が否定されてステップ１１４へ移行する。ステップ１１４では、供給部４８により、エラー処理が行われた後、本供給処理を終了する。ここで言う「エラー処理」の一例としては、演算処理を行うことが困難であること（例えばアラート）を通知支援デバイス（例えばサービスプロセッサ１２に接続されたディスプレイ）を介して利用者に通知する処理が挙げられる。
【００５３】
ステップ１１２では、供給部４８により、上記のステップ１０７で変更された演算負担割当ＤＢ５８が更に変更される。すなわち、供給部４８は、演算負担割当ＤＢ５８に含まれる演算負担指定値のうちの、予め定められたルールに従って代替可能な演算装置１６として指定された演算装置１６に対応する演算負担指定値を“１”に変更する。また、代替元の演算負担指定値を“０”に変更する。
【００５４】
ステップ１１６では、供給部４８により、現時点で取得されている演算負担割当ＤＢ５８に基づいて上位層不使用指示情報及び上位層使用指示情報（以下、区別して説明する必要がない場合は「指示情報」という）が生成される。すなわち、演算負担指定値として“１”が設定されている座標値、この座標値に割り当てられているポートＩＤであって故障有無特定値として“１”が割り当てられたポートＩＤ、及びこのポートＩＤと対を成すポートＩＤを含む上位層不使用指示情報が生成される。また、演算負担指定値として“１”が設定されている座標値、及びこの座標値に割り当てられているポートＩＤであって上位層不使用指示情報に含まれなかった故障有無特定値が割り当てられたポートＩＤを含む上位層使用指示情報が生成される。なお、上記の「ポートＩＤと対を成すポートＩＤ」とは、ポートＩＤにより特定されるポート２６と対を成すポート２６を特定するポートＩＤのことを意味する。また、ここでは、上位層不使用指示情報に含まれるポートＩＤは開示の技術に係る第１特定情報の一例であり、上位層使用指示情報に含まれるポートＩＤは開示の技術にかかる第２特定情報の一例である。
【００５５】
次のステップ１１８では、供給部４８により、上記のステップ１１６で生成された指示情報に含まれる座標値により特定される演算装置１６に対して、上記のステップ１１６で生成された指示情報が送信される。本ステップ１１８の処理が行われた後、ＣＰＵ６２は本供給処理を終了する。
【００５６】
次に、ＣＰＵ６２が切替制御処理プログラム７０を実行することにより、コントローラ２８で行われる切替制御処理について、図８を参照して説明する。なお、以下では、上位層不使用指示情報及び上位層使用指示情報を区別して説明する必要がない場合は「指示情報」と称する。
【００５７】
図８に示す切替制御処理では、先ず、ステップ１５２において、検出部４６により、故障検査対象とされているポート２６であって、今回の切替制御処理において本ステップ１５２で未だに検査信号の送信先とされていない１つのポート２６を送信先として検査信号が送信される。なお、ここでは「故障検出対象とされているポート２６」の一例としてルータ部２２に含まれる全てのポート２６を採用している。そのため、検出部４６は、全てのポート２６の論理回路３８を送信先として個別にクロスバースイッチ３０を介して検査信号を送信する。故障していない論理回路３８は、検査信号を受信すると、故障していないことを示す応答信号をクロスバースイッチ３０を介して検出部４６へ送信する。この場合、検出部４６は、コントローラ２８から論理回路３８までの経路が故障していなければ応答信号を受信することができる。逆に、故障している論理回路３８は、検査信号を受信できないか、受信したとしても上記の応答信号をクロスバースイッチ３０を介して検出部４６へ送信することができないため、検出部４６は応答信号を受信することができない。また、コントローラ２８から論理回路３８までの経路が故障していれば、検査信号が論理回路３８に届かないという事態や応答信号がコントローラ２８に届かなないという事態が生じる。この場合も検出部４６は事前に想定する応答信号を受信することができない。
【００５８】
そこで、次のステップ１５４では、検出部４６により、検査信号の送信先とされた論理回路３８から、想定通りの応答信号が受信されたか（想定通りの応答があったか）否かが判定される。本ステップ１５４において、想定通りの応答信号が受信された場合は判定が肯定されてステップ１６０へ移行する。本ステップ１５４において、想定通りの応答信号が受信されていない場合は判定が否定されてステップ１５６へ移行する。ステップ１５６では、検出部４６により、上記のステップ１５２が終了してから所定時間（例えば０．０１秒）を経過したか否かが判定される。本ステップ１５６において、所定時間を経過していない場合は判定が否定されてステップ１５４へ移行する。本ステップ１５６において、所定時間を経過した場合は判定が肯定されてステップ１５８へ移行する。ステップ１５８では、検出部４６により、上記のステップ１５２で検査信号の送信先とされた論理回路３８が属するポート２６を特定するポートＩＤがメモリ６４に記憶される。
【００５９】
次のステップ１６０では、検出部４６により、故障検査対象とされている全てのポート２６に対して検査信号が送信されたか否かが判定される。本ステップ１６０において、全てのポート２６へ検査信号が送信されていない場合はステップ１５２へ移行する。本ステップ１６０において、全てのポート２６へ検査信号が送信された場合はステップ１６２へ移行する。
【００６０】
ステップ１６２では、検出部４６により、検査結果情報が生成され、メモリ６４にポートＩＤが記憶されている場合にはメモリ６４からポートＩＤが消去される。すなわち、メモリ６４に全てのポート２６に係るポートＩＤが記憶されている場合には、メモリ６４に記憶されているポートＩＤにより特定されるポート２６が故障していることを示す検査結果情報が生成され、メモリ６４からポートＩＤが消去される。逆に、メモリ６４にポートＩＤが記憶されていない場合には、全てのポート２６に係るポートＩＤにより特定されるポート２６が故障していないことを示す検査結果情報が生成される。また、メモリ６４に一部のポート２６に係るポートＩＤが記憶されている場合には、メモリ６４に記憶されているポートＩＤにより特定されるポート２６が故障しており、それ以外のポート２６が故障していないことを示す検査結果情報が生成される。そして、この場合もメモリ６４からポートＩＤが消去される。
【００６１】
次のステップ１６４では、検出部４６により、上記のステップ１６２で生成された検査結果情報がサービスプロセッサ１２に送信される。本ステップ１６４で送信された検査結果情報は前述したステップ１０４で受信される。
【００６２】
次のステップ１６６では、制御部４４により、上記のステップ１１８で送信された指示情報を受信したか否かが判定される。本ステップ１６６において、指示情報を受信していない場合は判定が否定されてステップ１６８へ移行する。ステップ１６８では、制御部４４により、本切替制御処理の終了条件（例えば上記のステップ１６４が終了してから所定時間（例えば０．１秒）を経過したとの条件）を満足したか否かが判定される。本ステップ１６８において、終了条件を満足した場合は判定が肯定されて本切替制御処理を終了する。本ステップ１６８において、終了条件を満足していない場合は判定が否定されてステップ１６６へ移行する。
【００６３】
ステップ１６６において、指示情報を受信した場合は判定が肯定されてステップ１６９へ移行する。ステップ１６９では、制御部４４により、上記のステップ１６６で受信された指示情報がメモリ６４に記憶される。次のステップ１７０では、制御部４４により、上記のステップ１６６で全てのポート２６についての指示情報が受信されたか否かが判定される。本ステップ１７０において、全てのポート２６についての指示情報が受信されていない場合は判定が否定されてステップ１６６へ移行する。本ステップ１７０において、全てのポート２６についての指示情報が受信された場合は判定が肯定されてステップ１７１へ移行する。
【００６４】
ステップ１７１では、制御部４４により、メモリ６４から１つの指示情報が取得される。次のステップ１７２では、上記のステップ１７１で取得された指示情報により特定されるポート２６に含まれるセレクタ３６における単極双投スイッチ４２の接続先の切替を要するか否かが判定される。本ステップ１７２において、単極双投スイッチ４２の接続先の切替を要しない場合は判定が否定されてステップ１７６へ移行する。本ステップ１７２において、単極双投スイッチ４２の接続先の切替を要する場合は判定が肯定されてステップ１７４へ移行する。
【００６５】
ステップ１７４では、制御部４４により、メモリ６４に記憶された指示情報に従って、単極双投スイッチ４２の接続先の切替を要するセレクタ３６が制御されると共に、切替を要するセレクタ３６に対応する論理回路３８に対する給電が制御される。例えば、上記のステップ１７１で取得された指示情報が上位層不使用指示情報の場合は上位層不使用指示情報に含まれるポートＩＤにより特定される一対のポート２６の各々のセレクタ３６及び論理回路３８が制御対象とされる。この場合、制御部４４は、上位層不使用指示情報に含まれるポートＩＤにより特定される一対のポート２６の各々に含まれるポート制御用レジスタ４０の設定レジスタの値を“１”に設定する。これにより、上記のステップ１７１で取得された上位層不使用指示情報に含まれるポートＩＤにより特定される一対のポート２６の各々に含まれるセレクタ３６に含まれる単極双投スイッチ４２の接続先がａ接点４２Ｂに切替えられる。また、上記のステップ１７１で取得された上位層不使用指示情報に含まれるポートＩＤにより特定される一対のポート２６の各々に含まれる論理回路３８の受電制御スイッチがオフされる。これにより、上記のステップ１７１で取得された上位層不使用指示情報に含まれるポートＩＤにより特定される一対のポート２６の各々に含まれる論理回路３８に対する電力供給が停止される。
【００６６】
このように、一対のポート２６の各々に含まれるセレクタ３６に含まれる単極双投スイッチ４２の接続先がａ接点４２Ｂに切替えられると、一対のポート２６の各々の端子３４がバイパス線２９を介して導通される。この場合、本実施形態に係る情報処理システム１０は、本ステップ１７２を行っている制御部４４を含む演算装置１６を、一例として図９に示すように中継ノードとして機能させることができる。すなわち、パケット送信ノードとしての他の演算装置１６から送信されたパケットを一対の端子３４及びバイパス線２９を素通しさせてパケット受信ノードとしての他の演算装置１６で受信させることができる。この場合、中継ノードではデータリンク層やその上位層レベルの処理は行われない。従って、パケットが中継ノードの通過に要する時間が短縮される。
【００６７】
これに対し、上記のステップ１７１で取得された指示情報が上位層使用指示情報の場合は上位層使用指示情報に含まれるポートＩＤにより特定される一対のポート２６の各々のセレクタ３６及び論理回路３８が制御対象とされる。この場合、制御部４４は、上位層使用指示情報に含まれるポートＩＤにより特定される一対のポート２６に含まれるポート制御用レジスタ４０の設定レジスタの値を“０”に設定する。これにより、上記のステップ１７１で取得された上位層使用指示情報に含まれるポートＩＤにより特定される一対のポート２６に含まれるセレクタ３６の単極双投スイッチ４２の接続先がｂ接点４２Ｃに切替えられる。また、上記のステップ１７１で取得された上位層使用指示情報に含まれるポートＩＤにより特定される一対のポート２６の各々に含まれる論理回路３８の受電制御スイッチがオンされる。これにより、上記のステップ１７１で取得された上位層使用指示情報に含まれるポートＩＤにより特定される一対のポート２６に含まれる論理回路３８に対して電力供給が開始される。
【００６８】
次のステップ１７６では、上記のステップ１６９でメモリ６４に記憶された指示情報の全てについて上記のステップ１７１が行われたか否かが判定される。本ステップ１７６において、メモリ６４に記憶されている指示情報の全てについて上記のステップ１７１が行われていない場合はステップ１７１へ移行する。本ステップ１７６において、メモリ６４に記憶されている指示情報の全てについて上記のステップ１７１が行われた場合はメモリ６４から指示情報が消去されると共に判定が肯定されて本切替制御処理を終了する。
【００６９】
なお、上記のステップ１６６〜１７６では、説明の便宜上、一例として全てのポート２６についての指示情報を確認する態様を挙げたが、必ずしも全てのポート２６の各々について指示情報を確認する必要はない。どのポート２６の設定をどう変えるかはサービスプロセッサ１２が指示するので、各ルータ部２２のコントローラ２８はサービスプロセッサ１２の指示に従って動作すれば済む。すなわち、制御部４４は、サービスプロセッサ１２から新しい物理層のバイパス設定（更新前との差分）を受信し、セレクタ３６内の単極双投スイッチ４２の切替が必要なポート２６に対して設定の変更を指示すればよいということである。
【００７０】
図１０には、ある演算装置１６に含まれる対を成すポート２６の全てが対毎に物理層レベルで接続された態様の一例が示されている。図１０に示す演算装置１６は、対を成すポート２６の全てが対毎にバイパス線２９で端子３４同士が接続されている。従って、Ｘ軸方向で隣接する一方の演算装置１６から送り込まれたパケットをそのまま素通ししてＸ軸方向に隣接する他方の演算装置１６へ送り出すことができる。また、Ｙ軸方向に隣接する一方の演算装置１６から送り込まれたパケットもそのまま素通ししてＹ軸方向で隣接する他方の演算装置１６へ送り出すことができる。
【００７１】
図１１には、図１０に示す例とは対照的な接続態様の一例として、所謂ポート・トランキング（例えばハブ同士の接続に複数のポート２６を使うことでハブ同士の接続速度を高める方法）を採用した場合の一例が示されている。この場合、対を成すポート２６の全てがクロスバースイッチ３０に接続される。これにより、情報処理装置１４には全体として所謂メッシュ・ネットワークが形成され、何れかの一対のポート２６が物理層レベルで接続された場合と比較して通信帯域が広くなる。つまり、リンク（通信線１８）の本数は変わらないものの、ポート・トランキングを採用しているので、例えばアプリケーション層に対して、一対のポート２６が物理層レベルで接続された場合と比較して広帯域のリンクに見せることができる。
【００７２】
図１０に示す例は、１台の演算装置１６につき、対を成すポート２６の全てが対毎に物理層レベルで接続された場合であるが、対を成すポート２６の一部の対が物理層レベルで接続されてもよい。この場合の一例が図１２及び図１３に示されている。図１２に示す例は、各演算装置１６でのポート２６間の物理層レベルでの接続を、通信線１８毎に各演算装置１６で互い違いに行った場合のトポロジを示している。つまり、Ｘ軸方向の演算装置１６及びＹ軸方向の演算装置１６がそれぞれ所謂リング接続され、これによって情報処理装置１４には全体として所謂トーラス・ネットワークが形成される。
【００７３】
図１３に示す例では、Ｘ軸方向に並行している４本の通信線１８を一単位とした場合の各単位毎の４本の通信線１８について２本おきに各演算装置１６にて物理層レベルでポート２６間が接続されている。また、Ｙ軸方向に並行している４本の通信線１８を一単位とした場合の各単位毎の４本の通信線１８についても２本おきに各演算装置１６にて物理層レベルでポート２６間が接続されている。これによって情報処理装置１４には全体として所謂ハイパーキューブ・ネットワークが形成される。
【００７４】
図１４には、情報処理装置１４の変形例である情報処理装置７６の一例が示されている。情報処理装置７６は、情報処理装置１４と比較して、情報処理装置１４に含まれる各々隣接して対を成す一部の複数組の演算装置１６に代えて、各々ポート２６が増設され且つ各々隣接して対を成す複数組の演算装置８０を適用した点が異なっている。図１４に示すように、演算装置８０は、隣接して対を成す演算装置８０と通信線８２で接続されている。図１４における太線で図示された演算装置８０の構成の一例が図１５に示されている。図１５に示すように、演算装置８０は、図２に示す演算装置１６と比較して、ポート８４が増設されている点が異なっている。ポート８４は、ポート２６と比較して、通信線１８に代えて通信線８２を適用した点及びバイパス線２９が接続されていない点が異なっている。
【００７５】
このように構成された情報処理装置１４では、対を成す演算装置８０のポート８４間を切断することで、所謂メッシュ・ネットワークが形成される。これにより、Ｘ軸方向とＹ軸方向との通信帯域を均等にすることができる。また、通信線８２を使用しない場合にはポート８４に含まれる論理回路３８の受電制御スイッチをオフすることで省電力化を図ることができる。なお、ポート８４間の切断及び受電制御スイッチをオフする制御は、ポート８４に含まれるポート制御用レジスタ４０の設定レジスタの値を“１”に設定することで実現される。
【００７６】
図１６には、図１４に示す情報処理装置７６にメッシュ・トーラス・ネットワークが形成された場合の一例が示されている。ここで言うメッシュ・トーラス・ネットワークとは、例えばＸ軸、Ｙ軸等の軸方向によるメッシュによるネットワークとトーラスによるネットワークとが混在している形態を指す。図１６に示す破線メッシュ、一点鎖線メッシュ、実線メッシュ及び二点鎖線メッシュはそれぞれ４×４のメッシュ・ネットワークを示しており、各メッシュ・ネットワークの各頂点をリング接続している。図１６に示す例では、太線の四角形の頂点が破線メッシュ、一点鎖線メッシュ、実線メッシュ及び二点鎖線メッシュの少なくとも何れか１つの頂点とされている。図１６における太線で図示された演算装置８０の構成の一例が図１７に示されている。図１７に示すように、演算装置８０は、図１６に示す破線メッシュ及び二点鎖線メッシュに相当する通信線１８及びバイパス線２９が対応するポート２６に物理層レベルで接続され、それ以外の通信線１８，８２は対応するポート２６に上位層レベルで接続される。
【００７７】
このように、ポート２６間を物理層レベルで接続する場合と上位層レベルで接続する場合とを切り替えることで、２次元的に配置されたノード間（演算装置１６同士、演算装置８０同士及び演算装置１６，８４同士）の接続に３次元トポロジを採用することができる。よって、２次元通信網（図１６に示す例ではメッシュ・ネットワーク）と３次元通信網（図１６に示す例ではメッシュ・トーラス・ネットワーク）とを切り替えることができる。従って、図１６に示す技術を利用すれば、３次元以上の空間を取り扱う物理分野でのシミュレーションや結晶や有機物の物性などの化学分野での３次元的なモデリングを行う場合、上記の３次元通信網を採用することで問題のマッピングを容易に行うことができる。また、Lattice QCDのように３次元にマッピングされた各ノード隣接間で同時並行的に通信が多く行われるような問題に対しては物理層レベルで接続することにより、個々のノード同士がリンクを共有して干渉するという事態の発生を回避することができる。また、通信効率の低下やノード間の帯域の不均衡を抑制することもできる。
【００７８】
なお、上記ではポート２６間を物理層レベルで接続する場合にデータリンク層の接続を担う論理回路３８の消費電力を制御部４４により抑制する制御を行う態様を例示したが、開示の技術はこれに限定されるものではない。例えば図１８に示すようにデータリンク層からアプリケーション層の直下の層の通信を担う各部に対する電力供給を停止するように制御してもよい。この場合、例えば制御部４４がコントローラ２８及びパケット送受信部３２に対する電力供給を停止する態様が例示できる。
【００７９】
また、物理層が上述した物理層レベルでの接続に供する層を含む通信規約上の複数の階層を含んでいる場合、制御部４４により、上述した物理層レベルでの接続に供する層以外の層の通信を担う各部の消費電力が抑制されるように更に制御してもよい。
【００８０】
図１９には、物理層が複数の階層を含んで構成され且つ各層間をSerDes（コンピュータのバス等においてシリアル・パラレルを相互変換する回路）で繋いだ例が模式的に示されている。物理層は、最下位から最上位層にかけてＰＭＤ（Physical Media Dependent）層と、ＰＭＡ（Phsical Medium Attachment）層の一例であるＰＭＡ回路、ＰＣＳ（Physical Coding Sublayer）層の一例であるＰＣＳ回路及びＲＳ層の一例であるＲＳ回路を備えている。ＰＭＡ回路、ＰＣＳ回路及びＲＳ回路はそれぞれの間で双方向にデータを授受（送受信）する。ＰＭＤ層は、接続や光の波長・特性などが定義される層であり、例えば通信デバイスが挙げられる。ＰＭＡ回路は、ＰＣＳで符号化したパラレルデータをシリアルデータに変換したり、或いはその逆の変換を行ったりする回路である。ＰＣＳ回路は、データの符号化を担う回路である。ＲＳ回路はシリアル通信方式のインタフェースとしての機能を担う回路である。なお、ここで言うＰＭＡ回路、ＰＣＳ回路及びＲＳ回路は何れも例えばイーサネット（登録商標）の標準仕様等で機能が定義されている。図１９に示す物理層を用いてポート２６間を物理層レベルで接続する場合はＰＭＤ層の通信デバイス（以下、単に「通信デバイス」という）を必ず使用する。しかし、物理層レベルで接続した結果、伝送距離が伸びてクロック調整が必要になった場合はＰＭＡ回路及びＰＣＳ回路も使用することとなる。この場合、物理層のうちのＲＳ回路は使用する必要がないため、制御部４４は、通信デバイス、ＰＭＡ回路及びＰＣＳ回路に対する電力供給を停止せずに、ＲＳ回路に対する電力供給を停止するように制御すればよい。
【００８１】
これに対し、SerDesのマージンが十分に大きく且つクロック調整が不要な場合は、ＰＭＡ回路、ＰＣＳ回路及びＲＳ回路は必須ではない。この場合、制御部４４は、一例として図２０に示すように通信デバイスに対する電力供給を停止せずに、ＰＭＡ回路、ＰＣＳ回路及びＲＳ回路に対する電力供給を停止するように制御すればよい。
【００８２】
また、ＰＭＡ回路、ＰＣＳ回路及びＲＳ回路を用いない場合、すなわち、通信デバイスだけポート２６間を接続する場合は、通信デバイス、ＰＭＡ回路、ＰＣＳ回路及びＲＳ回路の全てを用いてポート２６間を接続する場合に比べ、転送速度が向上する。例えば、データの伝送方式として８ｂ１０ｂ（１０ビット中の８ビットをデータ本体とし、残りの２ビットを読み込みタイミングを規定するビットとした伝送方式）を採用している場合は１０ビット単位で処理する必要がある。そのため、通信デバイス、ＰＭＡ回路、ＰＣＳ回路及びＲＳ回路の全てを用いてポート２６間を接続する場合は、１０ビット全てを受信するまで最初に受信した１ビットを転送することができず、転送速度の遅延が生じる。６４ｂ６６ｂ（６６ビット中の６４ビットをデータ本体とし、残りの２ビットを読み込みタイミングを規定するビットとした伝送方式）の場合は遅延が更に大きくなる。しかし、ＰＭＡ回路、ＰＣＳ回路及びＲＳ回路を使用しない場合は、情報が単に通信デバイスを素通りするだけなので、遅延が大幅に抑制される。
【００８３】
また、上記では、論理回路３８の電源をオフすることで消費電力を抑制する例を挙げたが、開示の技術はこれに限定されるものではない。例えば、低消費電力モード（一例としてスリープモード）で動作させてもよい。
【００８４】
また、上記では、下記の表１に示す情報処理システムに相当する情報処理装置１０を例示したが、開示の技術はこれに限定されるものではない。例えば表１に示す演算処理装置（ＣＰＵチップ）にも適用可能である。すなわち、情報処理システム（情報処理装置１２）では表１に示すように演算処理ノード（演算装置１６）間を接続するに対し、表１に示す演算処理装置はキャッシュメモリを含む演算処理部（コア）間を接続する。また、情報処理システムではＣＰＵチップ間のボード配線又はボード間のケーブルによる接続であるのに対し、演算処理装置はＣＰＵチップ内の配線である。
【００８５】
【表１】
0005900115.tif 000002
【００８６】
また、上記では、説明の便宜上、検出部４６が、クロスバースイッチ３０及び論理回路３８の少なくとも１つの故障を検出する場合を例示しているが、開示の技術はこれに限定されるものではない。例えば、ＣＰＵ２０やパケット送信部３２などの演算装置１６に含まれる部位の故障を検出してもよい。ＣＰＵ２０やパケット送信部３２が故障したときは、例えばサービスプロセッサ１２は、故障の通知を受けて、その演算装置１６の全てのポート２６を物理層レベルで接続することで、演算装置１６を他の演算装置１６から切り離す。なお、演算処理装置内のコアについても同様のことが言える。
【００８７】
また、上記では、サービスプロセッサ１２によって演算負担指定値を設定（更新）する態様（ジョブ管理もサービスプロセッサ１２で行う場合）を例示しているが、開示の技術はこれに限定されるものではない。例えば、サービスプロセッサ１２とは別の情報処理装置（例えばサーバ装置）上で動くジョブ管理ソフトウェアがジョブの割り当て（演算負担割当：上記の例で言うところの、演算負担指定値の設定）を行ってもよい。なお。この場合、システムのハードウェアの見え方を変える制御（トポロジ設定情報や演算装置１６からの故障通知を得てポート２６間を物理層レベルで接続する制御やポート２６の電源管理）を行うサービスプロセッサ１２はファームウェアの範疇に属する。これに対し、ジョブ管理ソフトウェアは、ファームウェアが提供するシステムビュー（システムのハードウェアの見え方）に応じて、最適な形でジョブを割り当てるもので、ファームウェアよりも上位のミドルウェアの範疇に属する。従って、ジョブ管理ソフトウェアに基づいて動作する情報処理装置は、演算負担割当ＤＢ５８を参照するか、若しくはサービスプロセッサ１２に問い合わせて演算負担割当ＤＢ５８の情報を引き出すこととなる。そして、ミドルウェアの上位でユーザアプリケーション（ジョブ）が動くこととなる。また、この場合、演算負担指定値はジョブ管理ソフトウェアによって管理される。例えば、ＣＰＵチップ内に複数のコアが存在するケースでは、複数のジョブの並行実行が可能なので、ジョブに表１に示すようにＩＤ（ジョブＩＤ）を付与して、このジョブＩＤを演算負担指定値としてメモリに記憶することになる。このようにしておくと、ノードが使用されているかどうかを管理することができ、使用されているならばどのジョブが実行中かを管理することができる。同じジョブを担当するコア同士は通信を行う可能性が高いので、ジョブ管理ソフトとしては、同じジョブＩＤを持つノード同士が物理的に近い位置にあるように管理することとなる。なお、下記の表１に示すようにジョブ管理ソフトウェアが演算負担指定値を管理するのであれば、サービスプロセッサ１２が故障有無特定値と物理層バイパス・データリンク層電源設定状態を特定する情報とを管理することが好ましい。ここで言う「物理層バイパス・データリンク層電源設定状態を特定する情報」とは、何れのポート２６間を物理層で接続するのか、データリンク層経由で接続するのかを各々特定する情報のことであり、ポートＩＤなどを用いて表現できる。
【００８８】
【表２】
0005900115.tif 000003
【００８９】
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
【符号の説明】
【００９０】
１０  情報処理システム
１２  サービスプロセッサ
１４  情報処理装置
１６  演算装置
１８，３７  通信線
２９  バイパス線
２８  コントローラ
３０  クロスバースイッチ
３４  端子
３６  セレクタ
３８  論理回路
４４  制御部
４６  検出部
４８  供給部
【図１】
0005900115.tif 000004
【図２】
0005900115.tif 000005
【図３】
0005900115.tif 000006
【図４】
0005900115.tif 000007
【図５】
0005900115.tif 000008
【図６】
0005900115.tif 000009
【図７】
0005900115.tif 000010
【図８】
0005900115.tif 000011
【図１０】
0005900115.tif 000012
【図１１】
0005900115.tif 000013
【図１２】
0005900115.tif 000014
【図１３】
0005900115.tif 000015
【図１４】
0005900115.tif 000016
【図１５】
0005900115.tif 000017
【図１６】
0005900115.tif 000018
【図１７】
0005900115.tif 000019
【図９】
0005900115.tif 000020
【図１８】
0005900115.tif 000021
【図１９】
0005900115.tif 000022
【図２０】
0005900115.tif 000023
【図２１】
0005900115.tif 000024
【図２２】
0005900115.tif 000025