JP2006039897A - マルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラム - Google Patents

マルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラム Download PDF

Info

Publication number
JP2006039897A
JP2006039897A JP2004218137A JP2004218137A JP2006039897A JP 2006039897 A JP2006039897 A JP 2006039897A JP 2004218137 A JP2004218137 A JP 2004218137A JP 2004218137 A JP2004218137 A JP 2004218137A JP 2006039897 A JP2006039897 A JP 2006039897A
Authority
JP
Japan
Prior art keywords
node
inter
switch
nodes
crossbar switch
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004218137A
Other languages
English (en)
Other versions
JP3988146B2 (ja
Inventor
Yasuhiro Igawa
康宏 井川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2004218137A priority Critical patent/JP3988146B2/ja
Priority to CA 2511046 priority patent/CA2511046A1/en
Priority to EP20050013937 priority patent/EP1622324A1/en
Priority to AU2005202915A priority patent/AU2005202915A1/en
Priority to US11/176,644 priority patent/US7633856B2/en
Publication of JP2006039897A publication Critical patent/JP2006039897A/ja
Application granted granted Critical
Publication of JP3988146B2 publication Critical patent/JP3988146B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2005Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/101Packet switching elements characterised by the switching fabric construction using crossbar or matrix
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/557Error correction, e.g. fault recovery or fault tolerance

Abstract

【課題】 ノード間クロスバスイッチを介してノード間のデータ転送を行うシステムにおいて、1台のクロスバスイッチに障害が発生した場合においてもシステムダウンを防止することのできるマルチノードシステムを提供する。
【解決手段】 複数のノード11、12と、ノード11、12からの転送データを転送先のノードに送信するスイッチを備えた複数のノード間クロスバスイッチで構成され、ノード間クロスバスイッチ13、14を介してノード間のデータ転送を行うマルチノードシステムであって、スイッチに障害が発生した場合、障害が発生したスイッチを備えたノード間クロスバスイッチ以外のノード間クロスバスイッチを経由してノード間のデータ転送を行うように制御することを特徴とする。
【選択図】 図1

Description

本発明は、ノードで構成されるシステムに関し、特に、ノード間クロスバスイッチを複数設けることが可能な構成とすることにより、1台のクロスバスイッチに障害が発生した場合においてもシステムダウンを防止することのできるマルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラムに関する。
科学技術計算の分野において年々高まる計算性能の向上要求に対応するため、複数のCPUと共有メモリで構成される高性能のノードを、更に複数接続することによってシステム全体としての性能向上が実現される。この場合、ノード間の接続は各ノードに設置されデータを転送するノード間制御装置とノード間でのデータ転送のためのノード間クロスバスイッチを介して行われるが、ノード間制御装置あるいはクロスバスイッチに障害が発生すると、ノードがダウンするという問題があった。
このような問題の解決に類する方法の一例が、例えば特開2001−256203号公報(特許文献1)及び例えば特開2003−46526号公報(特許文献2)に記載されている。
特許文献1に開示される方法は、ノード間をクロスバスイッチで接続するシステムに関するもので、システムに必要なN個(Nは複数)のノード間クロスバスイッチに1つの冗長分を含めたN+1個のクロスバスイッチを設け、システム障害発生時に障害処理回路がクロスバスイッチの障害を認識すると、クロスバスイッチの入出力部に設けた選択回路を、障害処理回路が制御することで、障害の発生したクロスバスイッチの使用を停止するというものである。
特許文献1の方法によれば、クロスバスイッチを冗長構成とすることにより、ノード間を接続するクロスバスイッチに障害が発生した場合においても、システム再立上げ後、障害のあるクロスバスイッチを回避した運用を行うことができる。
なお、障害が発生していない場合には、冗長分のクロスバスイッチは使用されない。
また、特許文献2の方法では、図10に示すようにノード間データ転送のためのノード間クロスバスイッチと各ノードとの接続部分に、ノード間制御装置を複数設け、ノード内のプロセッサの性能に応じて、ノード間転送性能を可変にするというものである。
特許文献2の方法によれば、ノード間転送性能を可変にできると共に、1つのノード間制御装置が故障した場合においても、他のノード間制御装置によりシステムを継続して運転することができる。
特開2001−256203号公報 特開2003−46526号公報
上述した従来の技術は、いずれも以下に述べるような問題点があった。
特許文献1の方法では、システムに必要なノード間クロスバスイッチに加えて1つの冗長分のクロスバスイッチを設け、障害処理回路がクロスバスイッチの障害を認識すると、障害の発生したクロスバスイッチの使用を停止し、冗長分のクロスバスイッチへ切り替えるというものである。
特許文献1の方法の場合、障害が発生していない通常の場合には、冗長分のクロスバスイッチは使用されない。このため、冗長分のクロスバスイッチがシステムの性能向上に使用されないという問題があった。すなわち、障害が発生しない場合には、冗長分のクロスバスイッチはシステムの一部として動作していなかった。
さらに、冗長分のクロスバスイッチは、システムの一部として動作しない場合においては、システム価格を高めるだけであり、実用上好ましくないという問題もあった。
また、特許文献2の方法では、図10に示したようにクロスバスイッチとノードとの接続部分に、ノード間制御装置を複数設け、1つのノード間制御装置が故障した場合においても、他のノード間制御装置によりシステムを継続して運転することができるというものである。
しかしながら、特許文献2の方法の場合、ノード間の接続には1つのクロスバスイッチが用いられており、クロスバスイッチが故障した場合にはシステムダウンは避けられない。
また、特許文献2の方法は、元来ノード間でのデータ転送をクロスバスイッチにより提供する方法であり、クロスバスイッチが故障した際の、システムダウンを回避する方法を提供するものではない。
本発明の第1の目的は、上記従来技術の欠点を解決し、ノード間クロスバスイッチを介してノード間のデータ転送を行うシステムにおいて、1台のクロスバスイッチに障害が発生した場合においてもシステムダウンを防止することのできるマルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラムを提供することにある。
本発明の第2の目的は、システムダウンを防止するために多重化したクロスバスイッチが、通常使用の場合においてはシステム性能向上に使用されるマルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラムを提供することにある。
本発明の第3の目的は、ノードとクロスバスイッチ間の高速なステータス通信を可能にすると共に、システムコストの安価なマルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラムを提供することにある。
上記目的を達成するための本発明は、複数のノードと、前記ノードからの転送データを転送先のノードに送信するスイッチを備えた複数のノード間クロスバスイッチで構成され、前記ノード間クロスバスイッチを介して前記ノード間のデータ転送を行うマルチノードシステムであって、前記スイッチに障害が発生した場合には、前記障害が発生したスイッチを備えたノード間クロスバスイッチ以外のノード間クロスバスイッチを経由して前記ノード間のデータ転送を行うように制御することを特徴とするものである。
また、前記スイッチに障害がない場合には、全ての前記ノード間クロスバスイッチを経由して前記ノード間のデータ転送を行うことを特徴とするものである。
本発明によれば、ノードが複数あり、2台のノード間クロスバスイッチがある場合の動作は以下のようになる。
2台のノード間クロスバスイッチの何れにも障害のない場合には、各ノードは2台のノード間クロスバスイッチを介してノード間のデータ転送を行う。
次に、何らかの原因により、1台のノード間クロスバスイッチが故障した場合には、各ノードは故障していない1台のノード間クロスバスイッチを介してノード間のデータ転送を行う。この場合、データ転送量は、2台のノード間クロスバスイッチを介して行う場合の半分となる。
なお、ノード間クロスバスイッチが3台ある場合には、通常は3台のノード間クロスバスイッチを使用し、1台のノード間クロスバスイッチが故障した場合には、2台のノード間クロスバスイッチを介してデータ転送を行う。
このように、本発明によれば、複数のノード間クロスバスイッチは障害のない場合はデータ転送に使用され、その結果システム性能が向上する。また、障害発生時は障害のないノード間クロスバスイッチをデータ転送に使用することができるために、ノード間クロスバスイッチの故障によるシステムダウンを防止することができる。
本発明のマルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラムによれば、以下の効果が達成される。
第1に、クロスバスイッチを介してノード間のデータ転送を行うシステムにおいて、各ノードから多重化したクロスバスイッチを使用できるシステムとしているため、1台のクロスバスイッチに障害が発生した場合においても、システムダウンを防止することができる。
第2に、障害のない通常使用の場合は、多重化したクロスバスイッチは何れも動作し、障害発生時は障害の発生したクロスバスイッチのみを停止するシステムであるため、システムダウンを防止するために多重化したクロスバスイッチを、通常使用の場合においてはシステム性能向上に使用することができる。
第3に、ノードとクロスバスイッチ間のステータス通信に高速通信の可能なデータ転送パスを用いているため、高速にステータスの送受信ができると共に、クロスバスイッチに障害が発生した際のシステム構成の変更を高速に行い、障害発生時のノード間でデータ転送の実行できない時間を短縮できる。
また、ステータス通信のパスとデータ転送パスとを共用化したことにより、システムコストを安価にできる。
第4に、多重化したクロスバスイッチを冗長スイッチとして信頼性を高める使用方法と、多重化したクロスバスイッチをシステム性能向上に供する使用方法を組み合わせることにより、システムを柔軟に構築できる。
以下、本発明の好適な実施例について図面を参照して詳細に説明する。
図1は、本実施例によるマルチノードシステムの構成を示すブロック図である。
図1を参照すると、本実施例によるマルチノードシステムは、2つのノード11、12と2つのノード間クロスバスイッチ13、14からなる構成となっている。なお、図ではノードを2つ示してあるが、ノードは3つ以上の複数であっても同様である。
ノード11、12は、ノード間クロスバスイッチ13、14を介して互いに接続されている。
本実施例によるノード11は、ノード間クロスバスイッチ13、14とはそれぞれデータ転送パス15、17を介して接続されている。
またノード12は、ノード間クロスバスイッチ13、14とはそれぞれデータ転送パス16、18を介して接続されている。
ノード11は、複数のデータ処理部(以下CPUと略す)110、111、112、113、2つのノード間制御装置(以下RCUと略す)115、116、ノード内の全てのCPU及びRCUで共有する共有メモリ114、ならびにノード内の障害処理や構成制御を行う診断装置119から構成されている。なお、CPUの数は図1ではノードに4つの場合を示してあるが、より多くても又少なくても良い。
また、ノード12もノード11と同様であって、複数のCPU120、121、122、123、2つのRCU125、126、全てのCPU及びRCUが共有する共有メモリ124、ならびにノード内の障害処理や構成制御を行う診断装置129から構成されている。
ノード11には2台のRCU115、116が設けられ、それぞれノード間クロスバスイッチ13、14に接続されている。ノード12には2台のRCU125、126が設けられ、それぞれノード間クロスバスイッチ13、14に接続されている。
本実施例によるノード間クロスバスイッチ13は、ノードからの転送データを転送先のノードに送るデータスイッチ130、ノード間クロスバスイッチ13内の障害処理や構成制御を行う診断装置132、ノードとのステータス(状態)通信を行う診断装置132に接続されたステータス通信制御部131から構成されている。ノード間クロスバスイッチ14も同様の構成である。
ノード間のデータ転送は、以下に述べるように、CPUから当該CPUの設置されたノード内のRCUにノード間のデータ転送命令を通知することにより起動することができる。
例えば、ノード11の共有メモリ114内のデータをノード12の共有メモリ124に転送する場合は、最初に、CPU110からRCU115へ、ノード間のデータ転送命令(以下ノード間データ転送命令と略す)が通知される。ノード間データ転送命令(転送リクエスト)はユーザプログラムにより設定され、後述する図2のCPUの命令制御部32から発行される。
CPU110からの転送命令を受け取ったRCU115は転送するデータを共有メモリ114から読み出し、それをノード間クロスバスイッチ13に転送する。
ノード間クロスバスイッチ13では、データスイッチ130が送られたデータの転送先ポート番号によってクロスバのスイッチを切り替え、ノード12にデータを転送する。
ノード間クロスバスイッチ13から送られた転送データは、ノード12のRCU125によって受信され、共有メモリ124に書き込まれる。以上のようにして、ノード間のデータ転送を行うことができる。
図2は、本実施例によるCPU31の構成を示すブロック図である。なお、CPU31は、図1に示したCPU110、111、112、113、120、121、122、123と同様の構成である。
図2を参照すると、CPU31は命令制御部32と、演算部33と、メモリアクセス制御部34と、処理RCU決定回路35で構成される。処理RCU決定回路35は、メモリアクセス制御部34に含まれる。
命令制御部32は、CPU31が処理する命令を共有メモリから読み出し、命令の内容に従い、演算部33又はメモリアクセス制御部34に対して動作を指示することができる。
演算部33は、命令制御部32から指示された内容に従い、内部レジスタ(図示しない)の内容を読み出して演算を行い、結果を内部レジスタに書き込むことができる。
また、メモリアクセス制御部34は、命令制御部32からの指示に従い、演算部33で行った演算結果の共有メモリへの書き込み、演算データの共有メモリからの読み出しを行うことができる。
処理RCU決定回路35は、本発明にしたがって複数存在するRCUの中からノード間データ転送命令を処理するRCUを決定することができる。
また、メモリアクセスパス36は、メモリへのアクセスに加えて、RCUへのリクエストパスも兼ねる。
命令制御部32は、ノード間データ転送命令を検出すると、メモリアクセス制御部34に対して命令の内容を添付して通知する。メモリアクセス制御部34は、メモリアクセスパス36をRCUへのリクエストパスと共用するために、通知された内容をメモリアクセスのフォーマットに変換する。
図3は、本実施例によるメモリアクセスのフォーマットに変換したノード間データ転送命令の一例を示す図である。
なお、通知先、通知元等の詳細については、本実施例による動作のライト転送の詳細な説明の部分で説明する。
フォーマット変換の際、処理RCU決定回路35により、このノード間データ転送命令を処理するRCUを決定し、図3のメモリアクセスフォーマット内の通知先を示すフィールドにRCU番号を添付する。
このようにフォーマット変換されたノード間データ転送命令は、メモリアクセスパス36経由で共有メモリに送られ、共有メモリでは通知先フィールドの内容にしたがって所望のRCUに通知する。
このように、CPUからのノード間データ転送命令は、共有メモリに送られ、次に共有メモリからRCUに送信される。
図4は、本実施例によるRCU41の構成を示すブロック図である。なお、RCU41は、図1に示したRCU117、118、125、126と同様の構成である。
図4を参照すると、リクエスト処理部42は、図3に示したフォーマットでCPUからRCUへ送られたリクエストを、接続パス47を介して共有メモリと接続するメモリアクセス制御部45経由で受け取り、転送の内容にしたがって、ノード間データ送受信部43、あるいはメモリアクセス制御部34に対して動作を指示することができる。
ノード間データ送受信部43は、データ転送パス46によりノード間クロスバスイッチと接続され、他ノードとのデータあるいは制御情報のやり取りを行うことができる。
メモリアクセス制御部45は、ノード内の共有メモリと接続パス47により接続され、リクエスト処理部の指示に従って共有メモリとのデータあるいは制御情報のやり取りを行うことができる。
ステータス通信制御部44は、本発明にしたがって設けられた回路であり、データ転送パス46によって送られるノード間クロスバスイッチからのステータス情報を検出し、それをパス48によってノード内の診断回路へ通知したり、診断回路からの指示によりデータ転送パス46にてステータス情報を通知することができる。
また、図4に示したRCUは、他のノードから送られたノード間データ転送命令に従い、ノード内の共有メモリからデータを読み出し、読み出したデータの要求元ノードへの転送、あるいは要求元ノードから送られた転送データをノード内の共有メモリに書き込む動作も行うことができる。
ノード間データ転送を行う際は、データ送信に先立って、ノード間データ送受信部43に、データ転送の制御情報がデータ転送パス46経由で送られる。なお、制御情報の詳細については、本実施例の動作における、ライト転送命令の説明における、ローカルノードにおける転送の部分で説明する。
送られた制御情報はリクエスト処理部42に送られ、メモリアクセス制御部45及びノード間データ送受信部43に対して、制御情報にしたがった指示を出す。
メモリアクセス制御部45はリクエスト処理部42からの指示に従い、共有メモリとのデータのやり取りを行う。ノード間データ送受信部43も、リクエスト処理部42の指示に従い、他ノードとの制御信号あるいはデータのやり取りを行う。
図5は、本実施例によるデータスイッチ50の構成を示す図である。なお、図1に示したデータスイッチ130、140は、データスイッチ50と同様の構成である。
図5を参照すると、データスイッチ50は、入力が4ポート、出力が4ポートの4×4クロスバスイッチで構成されている。
データスイッチ50の入力0、1、2、3は、それぞれノード0、1、2、3に接続され、接続先は各ノードのRCU0となっている。また、データスイッチ50の出力0、1、2、3も、それぞれノード0、1、2、3に接続され、接続先は各ノードのRCU0となっている。
データスイッチ50は、4つの入力からそれぞれ4つの出力に同時にデータ転送を行うことができる。
データ転送は、入力ポートに接続するRCUから送られる転送先ポート番号を指定することにより行われる。例えば、転送先ポート番号が0ならばデータスイッチの出力0、つまりノード0のRCU0に転送する。ここでRCU0は図1では、共有メモリに対して上と下にRCUが接続されているが、上のRCUに対応する。下のRCUはRCU1に対応する。RCU0、RCU1を用いた説明は、実施例の動作の図6で行う。
次に、転送先ポート番号が1ならば出力1、つまりノード1のRCU0に転送する。このように、転送先ポート番号が示す値が出力ポートになり、そこに接続するRCUに転送することになる。ポート番号の指定は、本実施例の動作で、詳細に説明するライト転送の場合には、ローカルノードにより行われる。
このようにノード間クロスバスイッチ50は、転送先ポート番号を指定することにより、全ての入力ポートからの制御情報、データを全ての出力ポートに同時に送ることのできる構成となっている。
次に、本実施例による動作を、図を用いて詳細に説明する。複数のCPUとそれらのCPUに共有されたメモリを有するノードにおいて、ノード間データ転送命令は、ユーザプログラムが共有メモリ上のノード間転送キュー(命令の待ち行列)を確保し、確保したキューに転送に必要な転送パラメータを書き込み、その後ユーザプログラムが各CPUからパラメータ位置を示したノード間データ転送命令を発行することによって実現する。転送パラメータについては、以下で説明する。
本実施例においては、ユーザプログラムではRCUが1つのみとしている。これは、RCUが複数あっても、ユーザプログラムからはRCUは1つしか見えないことを意味する。
キューの確保においては、複数のCPU上のユーザプログラムが共有メモリ上の1つのキューに順次命令を積んでいく。これはユーザプログラムにHW構成を意識させないためである。
図6は、本実施例を説明するためのノード間転送キューと命令を処理するRCUの検出の一例を示す図である。なお、図右に示すRCUの3列の配列及び図下に示すパラメータ格納アドレスは、後述する図6を用いたRCUの決定の説明で使用する。
図6を参照すると、ノード間転送キューをユーザプログラムが順次確保し、確保したメモリアドレスにノード間データ転送命令に必要な転送パラメータが書き込まれた様子が示されている。
ノード間データ転送命令ごとに128B(バイト)の転送パラメータが書き込まれ、各転送命令はこの128B境界のアドレスをパラメータ格納アドレスとして命令で示し、これにより命令発行後、RCUがパラメータ格納アドレスから転送パラメータを読み出し、読み出された内容に従ってノード間データ転送を行っている。
図7は、本実施例を説明するためのノード間転送パラメータの一例を示す図である。
図7を参照すると、共有メモリ上にユーザプログラムによって書き込まれる転送パラメータの一例が示されている。転送パラメータは128Bを単位としており、その中にノード間転送に必要なパラメータを登録する。
図に示されるパラメータは、ノード間データ転送で多次元配列データの一部(サブアレイ)を効率よく一括転送するための2ディスタンス(メモリの番地の示す1方法における要素間距離)転送のパラメータ例であり、転送した結果正常終了か例外が発生したか等のステータスをメモリに書き込むアドレスを示す終了ステータス書き込みアドレス、8Bデータを1つの要素とした時の全転送量を要素数換算で示す総転送要素数、命令を発行するCPUがあるノード(以下ローカルノードと記述する)の転送開始アドレス、ノード間転送におけるローカルノードの相手となるノード(以下リモートノードと記述する)の番号、リモートノード内の主記憶転送開始アドレス、ローカルノード、リモートノードそれぞれの、第1ディスタンス及び第2ディスタンスなどを含んでいる。
ノード間データ転送命令には、リモートノードのメモリからデータを読み出し、読み出したデータをリモートノードからローカルノードへ転送し、ローカルノードのメモリにデータを書き込むリード転送命令と、ローカルノードのメモリからデータを読み出し、読み出したデータをローカルノードからリモートノードに転送し、リモートノードのメモリに書き込むライト転送命令とがある。
以下では、ローカルノードからリモートノードへデータを転送する、ライト転送命令について詳細に動作を説明する。
最初にCPUからのノード間データ転送命令のローカルノードへの通知、次にローカルノードにおけるデータ転送、次にリモートノードでのデータ取得の順にのべる。
以下、必要に応じて、図2、図3、図4の主要な部分を参照する。なお、以下ではローカルノードとリモートノードの2つのノードを対象に説明を行うため、図2、図4のCPUあるいはRCUについては、符号なしで説明を行う。
ユーザプログラムにより設定されたノード間データ転送命令は、CPUの命令制御部32から発行される。
ノード間データ転送命令には、ライト転送であることの転送種別や、パラメータ格納アドレスなどの情報が含まれ、命令制御部32はそれらの情報をメモリアクセス制御部34に通知する。メモリアクセス制御部34ではメモリアクセスパス36経由でノード間データ転送命令をRCUに送信するため、転送命令をメモリアクセスのフォーマットに変換する。
図3を参照すると、メモリアクセス制御部34にてメモリアクセスフォーマットに変換したノード間データ転送命令の一例が示されている。
メモリアクセスフォーマットでは、リクエスト通知先(図では通知先と記載)の情報、リクエスト通知元(図では通知元と記載)の情報、命令コード、パラメータ格納アドレスなどの情報が含まれる。
後述するように、命令コードには、ライト転送であることを示す情報が含まれる。また、パラメータ格納アドレスには転送パラメータに関する情報が含まれる。
リクエスト通知元の情報には、転送命令を発行したCPUの番号が含まれる.
ノード間データ転送命令の場合には、リクエスト通知先の情報に、転送を実行するRCUの番号が、またパラメータ格納アドレス情報にユーザプログラムが確保され、図7に示したような、ノード間転送パラメータを書き込んだパラメータ格納アドレスが書き込まれる。
処理RCU決定回路35は、上記のパラメータ格納アドレスに基づき、図6に示すように処理RCUを決定し、リクエスト通知先情報を生成して、ノード間データ転送命令を設定して共有メモリに発行する。
図6に示したように、キューには順次命令が書き込まれるが、以下に述べるように、この命令を書き込んだメモリアドレスにより、当該命令を処理するRCUを決定する。
本実施例では、ノード内にRCUが2つあるが、図6のRCU2台の表示と同様で、転送パラメータ0を含んだ命令0はRCU0が処理し、転送パラメータ1を含んだ命令1はRCU1が処理し、転送パラメータ2を含んだ命令2はRCU0が処理するというように、パラメータ格納アドレスにより、処理するRCUを割り当てていく。
この操作では、図6に示したようにRCUが2台の場合は、図下に示したパラメータ格納アドレスの128B境界の7bitを除く8bit目に、2台のRCUを区別する情報を書き込み、転送命令を処理するRCUを検出する。
処理RCU検出回路35で、リクエスト通知先情報を生成したノード間データ転送命令は、共有メモリに通知され、通知を受けた共有メモリは、リクエスト通知先情報により、本命令を所望のRCUに送信する。
以上で、ノード間データ転送命令のローカルノードへの通知は終了する。
次に、ローカルノードにおけるデータ転送について説明する。
最初に、ローカルノードに設置されたRCUのメモリアクセス制御部45は、共有メモリから図4のデータ転送パス47経由でノード間データ転送命令を受付ける。
次に、メモリアクセス制御部45は、受信した要求をローカルノードに設置されたCPUのリクエスト処理部42に転送する。
転送を受けたリクエスト処理部42では、図3に示したフォーマットに含まれる命令コードからライト転送であることを確認し、パラメータ格納アドレスから転送パラメータを読み出すようメモリアクセス制御部34に指示する。
メモリアクセス制御部34では、共有メモリの転送パラメータ格納アドレスから128B分のパラメータを読み出し、リクエスト処理部42に転送する。
リクエスト処理部42では、図7に示したノード間転送パラメータの内容から、ローカルノードの主記憶転送開始アドレス、総転送要素数、ローカルノードの第1ディスタンス、第2ディスタンスの要素数をそれぞれ検出する。
また、リクエスト処理部42は、これらの情報に基づき、ライト転送の対象となる、ローカルノードの共有メモリに格納されているデータをRCUに読み込むよう、メモリアクセス制御部34に指示する。
メモリアクセス制御部34では、リモートノードへ転送するデータを共有メモリから読み出し、ノード間データ送受信部43に提供する。
ノード間データ送受信部43では、共有メモリから読み出された転送データを、予め決められた単位ごとにバッファに格納し、決められた単位が格納されると、リクエスト処理部42にその旨を通知する。
リクエスト処理部42では、決められた単位の転送データがバッファに溜まったことを通知されると、ノード間転送パラメータに書き込まれたリモートノード番号、リモートノード内主記憶転送開始アドレス、リモートノードの第1ディスタンス、第2ディスタンスをノード間データ送受信部43に送り、データ転送を開始するように指示する。
データ転送を開始する指示を受けた、ローカルノードのノード間データ送受信部43は、データを送信する前に、リモートノード番号、リモートノード内主記憶転送開始アドレス、リモートノードの第1ディスタンス、第2ディスタンスを制御情報として、リモートノードに転送する。
転送の際、ローカルノードでは、ポート番号生成回路によってリモートノードへ転送するためのノード間クロスバスイッチのルーティング情報(ポート番号)を生成する。
以上で、ローカルノードにおけるデータ転送は終了する。
次に、リモートノードでのデータ取得について説明する。
ローカルノードで生成されたポート番号は、ノード間クロスバスイッチに送られ、これによりローカルノードのノード間データ送受信部43からは、リモートノード番号、リモートノード内主記憶転送開始アドレス、リモートノードの第1ディスタンス、第2ディスタンスを制御情報としてノード間クロスバスイッチに送り、さらにバッファに格納されている、予め決められた単位の転送データを順次送出する。
ノード間クロスバスイッチは、ポート番号によりクロスバのスイッチを切り替え、所望のポートへ制御情報、データを転送することによりリモートノードへ制御情報、転送データを転送する。
リモートノードでは、送られた制御情報、転送データをRCU内のノード間データ送受信部43が受け取り、制御情報はリクエスト処理部42に送られ、転送データはノード間データ送受信部43内のバッファに一旦格納される。
制御情報を取得したリクエスト処理部42では、内容からメモリアクセス制御部45に対してリモートノード内に転送データを格納するための共有メモリアドレスを生成し、データ送受信部のバッファ内転送データの読み出し指示を行い、共にメモリアクセス制御部45に送る。
メモリアクセス制御部45では、リクエスト処理部42からの共有メモリアドレスとノード間データ送受信部43からの転送データを取得し、共有メモリに対してメモリ書き込みリクエストとして発行する。
以上述べたようにして、ノード間転送のライト転送は行われる。
一方、ノード間転送のリード転送においては、ローカルノードからリモートノードへデータ読み出し指示を伝え、リモートノードにおいて共有メモリからのデータの読み出しが行われ、読み出されたデータはローカルノードにノード間クロスバスイッチ経由で送信され、ローカルノードは送信されたデータをローカルノード内の共有メモリに書き込むことにより行われる。
次に、以上に示したマルチノードシステムにおいて、ノード間クロスバスイッチに障害が発生した場合の動作について、図1を用いて説明する。
図8は、本実施例によるマルチノードシステムに障害が発生した場合の動作を説明するためのフローチャートである。なお、図1の主要な部分を参照して説明を行う.
図8を参照すると、ノード間クロスバスイッチ13のデータスイッチ130に障害が発生した場合、診断装置132に障害報告が通知され、診断装置132は通知された障害内容からノード間クロスバスイッチ13が重い障害にあるということを診断装置132で検出する(ステップ801)。
診断装置132はノード間クロスバスイッチ13が障害状態にあるというステータスを、全ノードに向けて通信するようステータス通信制御部131に指示する。
指示を受けたステータス通信制御部131は、データ転送パス15、16を用いて、ノード間クロスバスイッチ13が障害状態にあるというステータス通信を行う。この通信は高速通信のできるデータ転送パス15、16を用いて行われるため、全ノードに速やかに通知される(ステップ802)。
ノード11、12に設けられたRCU115、125内のステータス通信制御部117、127は、ステータス通信を受信すると、通信内容をデコードして、ノード間クロスバスイッチ13の障害状態を、ノード11、12に設けられた診断装置119、129へそれぞれ報告する(ステップ803)。
報告を受けた診断装置119、129は、システム構成を切り替えるために全ノードのCPUで動作中のソフトウエアに対して、転送命令を一時停止するように指示する(ステップ804)。
また、診断装置119、129は、ノード間クロスバスイッチ14に接続されたRCU116、126に設けられたステータス通信制御部118、128に対して、ノード間クロスバスイッチ13が障害状態にあるというステータスをノード間クロスバスイッチ14に通知するよう指示を出す(ステップ805)。
この指示に基づき、ステータス通信制御部118、128はデータ転送パス17、18経由でノード間クロスバスイッチ14にステータス通信を行う(ステップ806)。
ノード間クロスバスイッチ13が障害状態にあるという情報を受信したノード間クロスバスイッチ14のステータス通信制御部141は、診断装置142に対して、ノード間クロスバスイッチ13が障害状態にあることを報告する。
報告を受けた診断装置142は、ノード間クロスバスイッチ14のみを運用するというステータスに変更し、それによってノード間クロスバスイッチ14のみの運用とするために、データスイッチ140の構成制御を行う(ステップ807)。
構成制御が終了すると、診断装置142は、構成制御終了というステータスをステータス通信制御部141経由で、ノード11、12に通知する(ステップ808)。
構成制御終了の情報を受信したノード11、12のステータス通信制御部118、128は、その旨をそれぞれ診断装置119、129に報告する。
診断装置119、129はデータスイッチ140の構成制御終了の情報を受信すると、ノード内の各装置に対して、使用するノード間クロスバスイッチをノード間クロスバスイッチ14のみとするための構成制御を行う。
診断装置119、129の行う構成制御では、CPU110、113、120、123の、図2に示した処理RCU決定回路35において、図7に示すノード間転送リクエストの通知先にRCU116、126を示す情報を設定するように構成情報の変更も行う(ステップ809)。
これにより構成変更されたRCU116、126のみの構成情報に基づき、処理RCU決定回路35が処理RCU決定を行う。
これらのノード内装置の構成情報変更が終了すると、診断装置119、129は、ノード11、12のソフトウエアに対してノード間データ転送命令の再開指示を出し、これによりソフトウエアは再度ノード間データ転送命令の発行を開始する(ステップ810)。
以上説明した動作により、ノード間クロスバスイッチ13、14に障害の発生した場合に、動的にシステム構成を変更することが可能になり、これによりノード間クロスバスイッチ13、14の障害がシステムダウンに陥ることを救済することができる。
以上述べた本発明のマルチノードシステムは、複数のノード11、12と、ノードからの転送データを転送先のノードに送信するデータスイッチ130、140を備えた複数のノード間クロスバスイッチ13、14で構成され、ノード間クロスバスイッチを介してノード間のデータ転送を行うマルチノードシステムであって、スイッチに障害が発生した場合には、障害が発生したスイッチを備えたノード間クロスバスイッチ以外のノード間クロスバスイッチを経由してノード間のデータ転送を行うように制御し、スイッチに障害がない場合には、全てのノード間クロスバスイッチ13、14を経由してノード間のデータ転送を行う。
以上説明した実施例によれば、ノード間クロスバスイッチ13、14を介してノード間のデータ転送を行うシステムにおいて、ノード11、12から多重化したクロスバスイッチ13、14を使用できるシステムとしているため、1つのクロスバスイッチに障害が発生した場合においても、システムダウンを防止することができる。
次に、本発明の第2の実施例について説明する。
図9は、本実施例によるマルチノードシステムの構成を示すブロック図である。
図9を参照すると、第1の実施例の場合よりも、大規模なシステムに対応するものであり、ノード間クロスバスイッチ63、64では、データスイッチを複数に分割し、それぞれのデータスイッチ630、631、632、640、641、642に診断装置635、636、637、645、646、647を設けた構成となっている。
これはスイッチが大規模なノード数となってもデータ転送レイテンシ(データ送信に要する時間)を抑え高速データ転送できるようにクロスバ構成を1つのデータスイッチ内でn×nの単段スイッチとして使うために、1つのデータスイッチの転送するデータ転送幅を小さく分割することによって、複数のデータスイッチにより大きなクロスバ構成を搭載する場合の構成である。
この場合、データスイッチも複数装置で構成されるため、システムとして統一された動作を行うためにはデータスイッチ間でのステータスも一致させる必要がある。
なお、図9ではノードの数と1つのクロスバスイッチの数は共に3つの場合の一例を示してあるが、これにとらわれることなく、それぞれの数を任意に設定することができる。
本実施例の構成において、一例としてノード間クロスバスイッチ63内のデータスイッチ631にて障害が発生した場合の動作を説明する。
データスイッチ631にて障害が発生すると、診断装置636がステータス通信制御部(図示しない)を介して、全ノード60、61、62に対して、障害通知をステータス通信として行う。この障害通知は各ノードのステータス通信制御部を介して各ノード内の診断装置(図示しない)に報告される。
各ノード内の診断装置は、受信したステータス通信に基づき、各ノード内のCPUのソフトウエアに対して、転送命令を停止する指示を出す。また、クロスバスイッチ64の全データスイッチ640、641、642に対して、クロスバスイッチ63の障害通知を送信する。
さらに、障害が発生したクロスバスイッチ63の障害発生データスイッチ631以外のデータスイッチ630、632に対しても、診断装置636からの障害通知を送信する。
以上の動作により、各データスイッチが自分の属するクロスバスイッチのステータスを把握することができ、それに基づいた動作を行うことが可能となる。
クロスバスイッチ63内のデータスイッチ630、631、632の各診断装置635、636、637は、クロスバスイッチ63が障害状態にあるというステータスに基づいて構成情報の変更を行い、クロスバスイッチ63内に残存する仕掛かり状態(途中まで進行した状態)をリセットして、障害スイッチ631の復旧による再組み込みの準備を行う。
一方、クロスバスイッチ64のデータスイッチ640、641、642は同様に、仕掛かり状態のリセットとクロスバスイッチ64のみの転送とするための構成情報の変更を行い、構成変更処理が完了したら全ノードに対して構成変更完了通知を出す。
各ノードは、ノード間クロスバスイッチ64の全てのデータスイッチから構成変更完了通知を受信すると、ノード間クロスバスイッチ64のみのノード間データ転送が行えるようにノード内の構成情報を変更し、処理終了後にソフトウエアにノード間転送再開指示を出し、ノード間クロスバスイッチ64のみを使用したノード間データ転送に切り替えた、マルチノード運転を再開する。
以上説明したように、ノード間クロスバスイッチが複数のデータスイッチで構成されるような大規模マルチノードシステムにおいてもノード間クロスバスイッチ障害によるシステムダウンを回避し、継続運転を可能としている。
次に、本発明の第3の実施例について説明する。
前述した複数の実施例は、通常は2台のノード間クロスバスイッチがノード間転送のスイッチとして用いられ、何れかのクロスバスイッチに障害が発生すると、ノード間転送性能を半分に低下して1台のクロスバスイッチで動作を継続するというものであった。
本実施例では、複数のクロスバスイッチのうち、1つあるいは複数のクロスバスイッチが冗長構成としてシステムに組み込まれており、1つのクロスバスイッチの障害が転送性能に影響しないようなシステムの説明を行う。
構成は第2の実施例と同様であるが、ノード間クロスバスイッチ63を運用系、ノード間クロスバスイッチ64を冗長系とした場合の動作の一例について、図9を用いて説明する。
ノード間クロスバスイッチ63が運用系であるため、ノードの構成情報はノード間クロスバスイッチ63のみを使用している状態にある。このような状態で、ノード間クロスバスイッチ63のデータスイッチ631にて障害が発生した場合、データスイッチ631から全ノードに対して、ノード間クロスバスイッチ63で障害が発生した旨の通知を行う。
通知を受信した各ノードは、ソフトウエアに対してノード間データ転送命令の停止指示を出す一方、ノード間クロスバスイッチ63側の全データスイッチ630、631、632に対して、ノード間クロスバスイッチ63に障害が発生したという通知を発行する。
ノード間クロスバスイッチ63の各データスイッチは、通知を受信するとノード間クロスバスイッチ63に障害があるという状態に診断装置635、636、637のステータスを変更し、ノード間クロスバスイッチ63内に残存する仕掛かり状態をリセットして、障害の発生したデータスイッチ631の復旧による再組み込みの準備を行う。
その後、障害の発生したデータスイッチ631の修理が完了し、組み込み可能となると、データスイッチ631は各ノードに対して修理完了通知を出し、各ノードはこれをノード間クロスバスイッチ63の全スイッチに通知する。
修理完了を受信したノード間クロスバスイッチ63の各データスイッチは、ステータスを障害状態というステータスから、ノード間クロスバスイッチ64の冗長系として待機する待機状態というステータスに変更する。
このステータス変更により、前回は運用系であったノード間クロスバスイッチ63は、今回は冗長系として運用される。
一方、ノード間クロスバスイッチ64のデータスイッチ640、641、642に対しては、ノード60、61、62はノード間クロスバスイッチ63のデータスイッチ631での障害通知を契機に運用系に変更する運用系通知を出し、ノード間クロスバスイッチ64の各データスイッチのステータスを、冗長系から運用系に変更し、ステータス変更完了通知を全ノードに通知する。
完了通知をノード間クロスバスイッチ64のデータスイッチ640、641、642から受信したノードは、ノード間クロスバスイッチ64のみのノード間データ転送が行えるようにノード内の構成情報を変更し、処理終了後にソフトウエアにノード間転送再開指示を出し、ノード間クロスバスイッチ64のみを使用したノード間データ転送を行う、マルチノード運転を再開する。
以上説明したように、運用系のノード間クロスバスイッチと冗長系の待機系ノード間クロスバスイッチを設けることにより、ノード間クロスバスイッチに障害が発生してもシステムダウンせず、更にノード間データ転送性能を低下させることなくマルチノードシステムの継続運転が可能となる。
本発明のノード間クロスバスイッチ13は、その動作をハードウェア的に実現することは勿論として、上記した各機能を実行するスイッチプログラム(アプリケーション)300をコンピュータ処理装置であるノード間クロスバスイッチ13で実行することにより、ソフトウェア的に実現することができる。このスイッチプログラム300は、磁気ディスク、半導体メモリその他の記録媒体に格納され、その記録媒体からノード間クロスバスイッチ13にロードされ、その動作を制御することにより、上述した各機能を実現する。
また、同様に、本発明のノード11も、その動作をハードウェア的に実現することができる。すなわち、上記した各機能を実行するノードプログラム(アプリケーション)100をコンピュータ処理装置であるノード11で実行することにより、ソフトウェア的に実現することができる。このノードプログラム100は、磁気ディスク、半導体メモリその他の記録媒体に格納され、その記録媒体からノード11にロードされ、その動作を制御することにより、上述した各機能を実現するものである。
以上好ましい複数の実施例をあげて本発明を説明したが、本発明は必ずしも、上記実施例に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
本発明の第1の実施例によるマルチノードシステムの構成を示すブロック図である。 本発明の第1の実施例によるCPUの構成を示すブロック図である。 本発明の第1の実施例によるメモリアクセスのフォーマットに変換したノード間データ転送命令の一例を示す図である。 本発明の第1の実施例によるRCUの構成を示すブロック図である。 本発明の第1の実施例によるデータスイッチの構成を示す図である。 本発明の第1の実施例を説明するためのノード間転送キューと命令を処理するRCUの検出の一例を示す図である。 本発明の第1の実施例を説明するためのノード間転送パラメータの一例を示す図である。 本発明の第1の実施例によるマルチノードシステムに障害が発生した場合の動作を説明するためのフローチャートである。 本発明の第2の実施例によるマルチノードシステムの構成を示すブロック図である。 従来技術を説明するための図である。
符号の説明
11、12:ノード
13、14:ノード間クロスバスイッチ
15、16、17、18:データ転送パス
21、22:ノード
23:ノード間クロスバスイッチ
31:CPU
32:命令制御部
33:演算部
34:メモリアクセス制御部
35:処理RCU決定回路
36:メモリアクセスパス
41:RCU
42:リクエスト処理部
43:ノード間データ送受信部
44:ステータス通信制御部
45:メモリアクセス制御部
46:データ転送パス
47:接続パス
48:パス
50:データスイッチ
60、61、62:ノード
63、64:ノード間クロスバスイッチ
100:ノードプログラム
110、111、112、113:CPU
114、124:共有メモリ
115、116:RCU
117、118:ステータス通信制御部
119、129:診断装置
120、121、122、123:CPU
125、126:RCU
127、128:ステータス通信制御部
130、140:データスイッチ
131、141:ステータス通信制御部
132、142:診断装置
210、211、220、221:CPU
212、213、222、223:RCU
214、224:共有メモリ
300:スイッチプログラム
630、631、632:データスイッチ
635、636、637:診断装置
640、641、642:データスイッチ
645、646、647:診断装置

Claims (21)

  1. 複数のノードと、前記ノードからの転送データを転送先のノードに送信するスイッチを備えた複数のノード間クロスバスイッチで構成され、前記ノード間クロスバスイッチを介して前記ノード間のデータ転送を行うマルチノードシステムであって、
    前記スイッチに障害が発生した場合、前記障害が発生したスイッチを備えたノード間クロスバスイッチ以外のノード間クロスバスイッチを経由して前記ノード間のデータ転送を行うように制御することを特徴とするマルチノードシステム。
  2. 前記スイッチに障害がない場合、全ての前記ノード間クロスバスイッチを経由して前記ノード間のデータ転送を行うことを特徴とする請求項1に記載のマルチノードシステム。
  3. 前記ノードに複数のデータ処理部を備え、前記データ処理部からノード間でのデータ転送命令を受信すると当該データ転送を起動する、ノード間制御装置を設けることを特徴とする請求項2に記載のマルチノードシステム。
  4. 前記スイッチに障害が検出されると、前記スイッチを備えたノード間クロスバスイッチが障害状態にあるという情報を前記複数のノードに通知し、前記複数のノードに備えるデータ処理部で動作中のソフトウェアからのデータ転送命令を停止することを特徴とする請求項3に記載の記載のマルチノードシステム。
  5. 前記ノード間クロスバスイッチが障害状態にあるという情報を受信すると、前記ノードから障害のないノード間クロスバスイッチへ前記情報を送信し、前記ノード間クロスバスイッチで前記情報に基づき前記スイッチの構成を、前記障害のないノード間クロスバスイッチのみを使用する構成に変更すると共に、前記ノード間クロスバスイッチの構成変更の終了情報を前記複数のノードへ通知することを特徴とする請求項4に記載のマルチノードシステム。
  6. 前記構成変更の終了情報を取得すると、前記データ転送命令の送信先を障害のないノード間クロスバスイッチに接続したノード間制御装置に変更した後、前記複数のノードのデータ処理部で動作中のソフトウェアに対してノード間のデータ転送を指示することを特徴とする請求項5に記載のマルチノードシステム。
  7. 前記スイッチを備えたノード間クロスバスイッチが障害状態にあるという情報を前記複数のノードに送信する際、当該通知を前記クロスバスイッチと前記ノード間のデータ転送に用いるデータ転送パス経由で送信することを特徴とする請求項4に記載のマルチノードシステム。
  8. 前記データ転送は、データを転送する命令を発行するデータ処理部の設けられたノードであるローカルノードに備えるメモリからデータを読み出し、読み出したデータをローカルノードから、データ転送におけるローカルノードの相手であるリモートノードへ転送し、リモートノードに備えるメモリに書き込む命令、又はリモートノードのメモリからデータを読み出し、読み出したデータをリモートノードからライトノードへ転送し、ライトノードに備えるメモリに書き込む命令の何れかであることを特徴とする請求項3から請求項7のいずれか1項に記載のマルチノードシステム。
  9. 前記ノード間クロスバスイッチは前記スイッチを複数備え、前記複数のスイッチは複数のノードにそれぞれ接続され、前記複数のノード間クロスバスイッチに障害のない場合、前記複数のノード間クロスバスイッチを介して前記ノードは他ノードとの間でデータ転送を行うことを特徴とする請求項1に記載のマルチノードシステム。
  10. 前記ノード間クロスバスイッチは前記スイッチを複数備え、前記複数のスイッチは複数のノードにそれぞれ接続され、前記複数のノード間クロスバスイッチに障害のない場合、前記複数のノード間クロスバスイッチのうち、障害発生時のみに使用するノード間クロスバスイッチ以外のノード間クロスバスイッチを介して、前記ノードは他ノードとの間でデータ転送を行うことを特徴とする請求項1に記載のマルチノードシステム。
  11. 複数のノードに接続され、前記ノードからの転送データを転送先のノードに送信するスイッチと、障害処理を行う診断装置と、ノードとの間でステータス情報の通信を行うステータス通信制御部を備えたノード間クロスバスイッチであって、
    前記スイッチで発生した障害を前記診断装置で検出すると、前記スイッチを備えたノード間クロスバスイッチは障害状態にあるという情報を、前記複数のノードに通知することを前記ステータス通信制御部に指示し、
    前記ステータス通信制御部から前記複数のノードに前記情報を通知することを特徴とするノード間クロスバスイッチ。
  12. 前記情報を前記複数のノードから受信すると、前記診断装置は、障害のないノード間クロスバスイッチのみを使用するために前記スイッチの構成を変更すると共に、前記ステータス通信制御部から前記スイッチの前記構成の変更が終了したことを前記複数のノードへ通知することを特徴とする請求項11に記載のノード間クロスバスイッチ。
  13. ノードからの転送データを転送先のノードに送信するスイッチを備えた複数のノード間クロスバスイッチに接続され、ノード間でのデータ転送命令を受信すると当該データ転送を起動するノード間制御装置と、前記ノード間クロスバスイッチとの間でステータス情報の通信を行うステータス通信制御部と、複数のデータ処理部を備えたノードであって、
    前記ノード間クロスバスイッチから障害状態にあるという情報を受信すると、前記ステータス通信制御部は前記障害状態を前記診断装置へ通知し、
    前記診断装置により前記データ処理部で動作中のソフトウェアからの転送命令を停止することを特徴とするノード。
  14. 前記診断装置から前記情報を障害のないノード間クロスバスイッチへ送信する指示を出し、前記指示に基づき前記ステータス通信制御部が前記ノード間クロスバスイッチへ前記情報を送信することを特徴とする請求項13に記載のノード。
  15. 前記ノード間クロスバスイッチから前記障害のないノード間クロスバスイッチのみを使用するための構成変更が終了したという情報を受信すると、前記診断装置で前記データ転送命令の送信先を障害のないノード間クロスバスイッチに接続したノード間制御装置に変更した後、ノード間のデータ転送を指示することを特徴とする請求項13又は請求項14に記載のノード。
  16. 前記診断装置で前記データ転送命令の送信先を障害のないノード間クロスバスイッチに接続したノード間制御装置に変更すると、前記データ処理部に備えた処理ノード間制御装置決定回路により、データ転送命令を送信するノード間制御装置を決定することを特徴とする請求項15に記載のノード。
  17. 複数のノードに接続され、前記ノードからの転送データを転送先のノードに送信するスイッチと、障害処理を行う診断装置と、ノードとの間でステータス情報の通信を行うステータス通信制御部を備えたノード間クロスバスイッチ上で実行されるスイッチプログラムであって、
    前記スイッチで発生した障害を前記診断装置で検出すると、前記スイッチを備えたノード間クロスバスイッチは障害状態にあるという情報を、前記複数のノードに通知することを前記ステータス通信制御部に指示する機能と、
    前記ステータス通信制御部は前記複数のノードに前記情報を通知する機能を実行することを特徴とするスイッチプログラム。
  18. 前記情報を前記複数のノードから受信すると、前記診断装置は、障害のないノード間クロスバスイッチのみを使用するためにスイッチの構成を制御すると共に、前記ステータス通信制御部は前記スイッチの前記構成の制御が終了したことを前記複数のノードに通知する機能を有することを特徴とする請求項17に記載のスイッチプログラム。
  19. ノードからの転送データを転送先のノードに送信するスイッチを備えた複数のノード間クロスバスイッチに接続され、ノード間でのデータ転送命令を受信すると当該データ転送を起動するノード間制御装置と、前記ノード間クロスバスイッチとの間でステータス情報の通信を行うステータス通信制御部と、複数のデータ処理部を備えたノード上で実行されるノードプログラムであって、
    前記ノード間クロスバスイッチから障害状態にあるという情報を受信すると、前記ステータス通信制御部から前記障害状態を前記診断装置へ通知する機能と、
    前記診断装置で前記データ処理部で動作中のソフトウェアからの転送命令を停止する機能を実行することを特徴とするノードプログラム。
  20. 前記診断装置で前記情報を障害のないノード間クロスバスイッチへ送信する指示を出し、前記指示に基づき前記ステータス通信制御部から前記ノード間クロスバスイッチへ前記情報を送信する機能を有することを特徴とする請求項19に記載のノードプログラム。
  21. 前記ノード間クロスバスイッチから前記障害のないノード間クロスバスイッチのみを使用するための構成変更が終了したという情報を受信すると、前記診断装置で前記データ転送命令の送信先を障害のないスイッチに接続したノード間制御装置に変更した後、ノード間のデータ転送を指示する機能を有することを特徴とする請求項19又は請求項20に記載のノードプログラム。
JP2004218137A 2004-07-27 2004-07-27 マルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラム Expired - Fee Related JP3988146B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004218137A JP3988146B2 (ja) 2004-07-27 2004-07-27 マルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラム
CA 2511046 CA2511046A1 (en) 2004-07-27 2005-06-28 Multi-node system, internodal crossbar switch, node and medium embodying program
EP20050013937 EP1622324A1 (en) 2004-07-27 2005-06-28 Fault tolerant data transfer in multi-node system via internodal crossbar switch
AU2005202915A AU2005202915A1 (en) 2004-07-27 2005-06-30 Multi-node system, internodal crossbar switch, node and medium embodying program
US11/176,644 US7633856B2 (en) 2004-07-27 2005-07-08 Multi-node system, internodal crossbar switch, node and medium embodying program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004218137A JP3988146B2 (ja) 2004-07-27 2004-07-27 マルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラム

Publications (2)

Publication Number Publication Date
JP2006039897A true JP2006039897A (ja) 2006-02-09
JP3988146B2 JP3988146B2 (ja) 2007-10-10

Family

ID=34980188

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004218137A Expired - Fee Related JP3988146B2 (ja) 2004-07-27 2004-07-27 マルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラム

Country Status (5)

Country Link
US (1) US7633856B2 (ja)
EP (1) EP1622324A1 (ja)
JP (1) JP3988146B2 (ja)
AU (1) AU2005202915A1 (ja)
CA (1) CA2511046A1 (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007233777A (ja) * 2006-03-02 2007-09-13 Nec Corp マルチノードコンピュータシステム、統合サービスプロセッサ及びそれらに用いる多重化制御方法
JP2008046996A (ja) * 2006-08-18 2008-02-28 Fujitsu Ltd データ処理装置、モード管理装置、及びモード管理方法
JP2009206581A (ja) * 2008-02-26 2009-09-10 Nec Computertechno Ltd マルチノードネットワークシステム、通信方法、及び、プログラム
JP2010186302A (ja) * 2009-02-12 2010-08-26 Nec Corp マルチノードシステム、異常処理方法、スイッチ、ノード及びプログラム
WO2011036727A1 (ja) 2009-09-25 2011-03-31 富士通株式会社 メモリシステム及びメモリシステムの制御方法
JP2012185640A (ja) * 2011-03-04 2012-09-27 Nec Corp 障害処理回路を含むマルチノードシステム及び障害処理方法
WO2012127629A1 (ja) * 2011-03-22 2012-09-27 富士通株式会社 サーバシステム及びクロスバボードの活性保守方法
JP5365747B2 (ja) * 2010-09-10 2013-12-11 富士通株式会社 処理システム,通信装置および処理装置
JP2014052786A (ja) * 2012-09-06 2014-03-20 Nec Network & Sensor Systems Ltd 計算機、計算機システム及び共有メモリ制御方法
US9690647B2 (en) 2014-12-01 2017-06-27 Fujitsu Limited Information processing apparatus and method of diagnosis
US9959173B2 (en) 2015-07-16 2018-05-01 Fujitsu Limited Node, arithmetic processing device, and arithmetic processing method

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5076400B2 (ja) * 2006-08-16 2012-11-21 富士通株式会社 データ処理システムおよび情報処理装置
WO2010021040A1 (ja) * 2008-08-21 2010-02-25 富士通株式会社 情報処理装置及び情報処理装置の制御方法
US8495164B2 (en) * 2010-06-07 2013-07-23 Hitachi, Ltd. Data transfer device and data transfer method
JP5361945B2 (ja) * 2011-05-31 2013-12-04 株式会社東芝 電子機器および情報処理方法
CN104520801B (zh) * 2012-08-07 2019-10-18 诺基亚技术有限公司 对于无线存储器的访问控制

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4497054A (en) * 1983-04-29 1985-01-29 Honeywell Inc. One-for-N redundancy in a digital switch matrix
JPS62253231A (ja) * 1986-01-07 1987-11-05 Fujitsu Ltd 現用予備切換システム
JPH07107545B2 (ja) 1987-08-20 1995-11-15 株式会社東芝 交流電圧試験装置
US5072217A (en) * 1989-10-31 1991-12-10 International Business Machines Corporation One-sided crosspoint switch with distributed control
US5361249A (en) * 1993-10-26 1994-11-01 Martin Marietta Corp. Fault tolerant switched communication system
JPH08161277A (ja) 1994-12-09 1996-06-21 Hitachi Ltd 並列計算機システム
US5844887A (en) * 1995-11-30 1998-12-01 Scorpio Communications Ltd. ATM switching fabric
JP3459056B2 (ja) * 1996-11-08 2003-10-20 株式会社日立製作所 データ転送システム
US6088330A (en) 1997-09-09 2000-07-11 Bruck; Joshua Reliable array of distributed computing nodes
JP2001256203A (ja) * 2000-03-09 2001-09-21 Nec Corp 冗長構成クロスバスイッチシステム
US6760870B1 (en) * 2000-04-29 2004-07-06 Hewlett-Packard Development Company, L.P. Algorithm for resynchronizing a bit-sliced crossbar
US20030142678A1 (en) * 2000-07-28 2003-07-31 Chan Eric L. Virtual path ring protection method and apparatus
JP3508857B2 (ja) * 2001-07-31 2004-03-22 日本電気株式会社 ノード間データ転送方法およびデータ転送装置

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007233777A (ja) * 2006-03-02 2007-09-13 Nec Corp マルチノードコンピュータシステム、統合サービスプロセッサ及びそれらに用いる多重化制御方法
JP2008046996A (ja) * 2006-08-18 2008-02-28 Fujitsu Ltd データ処理装置、モード管理装置、及びモード管理方法
JP4671059B2 (ja) * 2008-02-26 2011-04-13 エヌイーシーコンピュータテクノ株式会社 マルチノードネットワークシステム
JP2009206581A (ja) * 2008-02-26 2009-09-10 Nec Computertechno Ltd マルチノードネットワークシステム、通信方法、及び、プログラム
JP2010186302A (ja) * 2009-02-12 2010-08-26 Nec Corp マルチノードシステム、異常処理方法、スイッチ、ノード及びプログラム
US8667228B2 (en) 2009-09-25 2014-03-04 Fujitsu Limited Memory system and method for controlling memory system
WO2011036727A1 (ja) 2009-09-25 2011-03-31 富士通株式会社 メモリシステム及びメモリシステムの制御方法
JP5365747B2 (ja) * 2010-09-10 2013-12-11 富士通株式会社 処理システム,通信装置および処理装置
JP2012185640A (ja) * 2011-03-04 2012-09-27 Nec Corp 障害処理回路を含むマルチノードシステム及び障害処理方法
WO2012127629A1 (ja) * 2011-03-22 2012-09-27 富士通株式会社 サーバシステム及びクロスバボードの活性保守方法
JPWO2012127629A1 (ja) * 2011-03-22 2014-07-24 富士通株式会社 サーバシステム及びクロスバボードの活性保守方法
US8832349B2 (en) 2011-03-22 2014-09-09 Fujitsu Limited Server system and dynamic maintenance method for crossbar board
JP2014052786A (ja) * 2012-09-06 2014-03-20 Nec Network & Sensor Systems Ltd 計算機、計算機システム及び共有メモリ制御方法
US9690647B2 (en) 2014-12-01 2017-06-27 Fujitsu Limited Information processing apparatus and method of diagnosis
US9959173B2 (en) 2015-07-16 2018-05-01 Fujitsu Limited Node, arithmetic processing device, and arithmetic processing method

Also Published As

Publication number Publication date
CA2511046A1 (en) 2006-01-27
US20060023625A1 (en) 2006-02-02
JP3988146B2 (ja) 2007-10-10
US7633856B2 (en) 2009-12-15
EP1622324A1 (en) 2006-02-01
AU2005202915A1 (en) 2006-02-16

Similar Documents

Publication Publication Date Title
JP3988146B2 (ja) マルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラム
US6970972B2 (en) High-availability disk control device and failure processing method thereof and high-availability disk subsystem
US6959344B2 (en) Method and apparatus for storage system
JPH11232237A (ja) クロスバースイッチを有する情報処理装置およびクロスバースイッチ制御方法
JP2567922B2 (ja) パス制御方式
JP2006195821A (ja) 情報処理システムの制御方法、情報処理システム、ダイレクトメモリアクセス制御装置、プログラム
JP4462697B2 (ja) 記憶制御装置
JP2006285810A (ja) クラスタ構成コンピュータシステム及びその系リセット方法
JP2012208896A (ja) ディスクアレイ装置、接続経路制御方法、及び接続経路制御プログラム
JP4755050B2 (ja) データ処理装置、モード管理装置、及びモード管理方法
JP5287974B2 (ja) 演算処理システム、再同期方法、およびファームプログラム
JP2009282917A (ja) サーバ間通信機構及びコンピュータシステム
JP2010205216A (ja) バス変換装置、情報処理装置、制御方法
JP2003288228A (ja) 2重化プロセッサシステム
JP3508857B2 (ja) ノード間データ転送方法およびデータ転送装置
JP2006053896A (ja) コンピュータシステムの複数の処理ノードを接続するファブリック数のソフトウェアトランスペアレントな拡張
JP2004094433A (ja) フォールトトレラントコンピュータ及びそのディスク管理機構及びディスク管理プログラム
JP3621634B2 (ja) 冗長構成切替システム
JP4131263B2 (ja) マルチノードシステム、ノード装置、ノード間クロスバスイッチ及び障害処理方法
JP2004013723A (ja) 共有メモリを使ったクラスタ構成を採用した情報処理システムの障害処理装置と方法
JP2004062589A (ja) 情報処理装置
JP2005208972A (ja) コンピュータ装置及びシステム
JP4421812B2 (ja) 診断機能を有するコンピュータシステム
JPH0481937A (ja) マルチプロセッサバックアップ方式
JP3791463B2 (ja) 演算装置及びデータ転送システム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070309

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070622

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070705

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100727

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110727

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110727

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120727

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120727

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130727

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees