(57)【特許請求の範囲】
【請求項１】
複数のクラスタと該複数のクラスタを接続するネットワークとからなるシステムにおいて、前記クラスタは、クラスタ間でのデータの転送の命令を発行する演算処理装置と、他の前記クラスタとの送信データ／受信データを格納する共有メモリと、他の前記クラスタとの間でデータの送受信の制御を行うデータ転送装置と、前記演算処理装置、前記共有メモリ、前記データ転送装置間での通信を可能とするローカルネットワークとを含み、前記ネットワークは、前記クラスタからの通信要求を調停するネットワークリクエスト調停手段と、前記クラスタ間でのデータの転送を行うネットワークデータ転送手段と、を含むことを特徴とするデータ転送処理装置。
【請求項２】
前記データ転送装置は、前記演算処理装置の発行したデータの転送の指示命令を解読する命令解読手段と、該命令解読手段が解読した命令を格納するとともに次の手段にそれを送出する解読命令格納手段と、前記解読命令格納手段から解読した命令を受け取りその内容に従って他の前記クラスタとの通信の制御を行うデータ転送要求／リクエスト送受信手段と、該データ転送要求／リクエスト送受信手段から受け取った解読された命令を元に前記共有メモリへのアクセスを行う共有メモリアクセス手段と、前記ネットワークとの間で転送データの送受信を実行するデータ転送手段と、を含むことを特徴とする請求項１記載のデータ転送処理装置。
【請求項３】
前記データ転送要求／リクエスト送受信手段は、前記解読命令格納手段から受け取った命令を次の手段に渡すと同時に前記ネットワークリクエスト調停手段に前記解読された命令で指定された相手先クラスタとの通信を要求するデータ転送要求手段と、前記データ転送要求手段から受け取った命令の論理アドレスを物理アドレスに変換しそれを前記共有メモリアクセス手段に渡す論理アドレス変換手段と、前記ネットワークリクエスト調停手段からの通信許可と転送データの送受信準備の完了の同期をとる転送整合手段と、を含むことを特徴とする請求項１記載のデータ転送処理装置。
【請求項４】
前記転送整合手段は、送信時においては、前記ネットワークリクエスト調停手段からの送信の許可の通知と前記共有メモリアクセス手段による前記共有メモリからの送信データの取り出し完了の通知の同期をとり両通知が揃った段階で前記データ転送手段に送信の許可を与えることを特徴とする請求項１記載のデータ転送処理装置。
【請求項５】
前記転送整合手段は、受信時においては、前記データ転送要求手段による受信の許可の通知と、前記データ転送手段による転送データの受信完了の通知の同期をとり、両通知が揃った段階で受信の完了を前記データ転送要求手段に報告することを特徴とする請求項１記載のデータ転送処理装置。
【請求項６】
送信側の前記クラスタによる前記共有メモリからの転送データの読み出しと前記ネットワークリクエスト調停手段によるデータパスの開設処理とを並行して動作させ、受信側の前記クラスタでは転送データを全て受信し終えた時前記共有メモリへの転送データの書き出しと並行して送信側クラスタへの転送処理の終了通知とネットワークリクエスト調停手段によるデータパスの開放処理とを動作させることを特徴とする請求項１記載のデータ転送処理装置。
【請求項７】
前記ネットワークリクエスト調停手段は、データの送受信のリクエストを格納する緩衝バッファを前記クラスタごとに１つ持ち、データを格納する緩衝バッファは持たないことを特徴とする請求項１記載のデータ転送処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、演算処理装置群が共有メモリを共用する構成を持つクラスタ計算機がネットワークによって複数台接続されているシステムにおいて、クラスタの共有メモリ内のデータをクラスタ間で相互転送を行うデータ転送処理装置に関する。
【０００２】
【従来の技術】
複数の演算処理装置群が共有メモリを共用する構成からなるクラスタ計算機が複数台あって、そのクラスタ計算機間を結合するネットワーク装置を有するデータ転送処理装置において、クラスタ間データ転送は、自クラスタ内の共有メモリからデータをロードし相手先クラスタへデータを転送し相手先クラスタ内の共有メモリにストアしたり、逆に相手先クラスタ内の共有メモリからデータをロードし自クラスタへデータを転送し自クラスタ内の共有メモリにストアしたりする内容を持つものである。
【０００３】
クラスタ間データ転送方式は、図４の（ａ）に示すようにリクエスト調停手段により調停されたネットワーク上に設定された小規模の緩衝バッファを用意しデータ転送元クラスタとデータ転送先クラスタとの間で一定期間データパスを占有しデータを転送する方式と、図４の（ｂ）に示すようにリクエスト調停手段を設けず、データ転送元クラスタとデータ転送先クラスタとの間で比較的大規模の緩衝バッファを用意しデータパスを占有しないで、転送データを送信先のクラスタのアドレスでルーティングさせる方式とがある。
【０００４】
クラスタ間のデータ転送処理方式には、大きく分けて上述したような２通りの方式があるが、従来のクラスタ間データ転送装置においては、いずれの方式においても転送リクエスト（要求）や転送データを蓄積するための緩衝バッファを緩衝バッファサイズの大小の相違はあるものの（リクエスト調停手段を利用する方式の場合は１つ分のリクエストとデータの蓄積領域があればよい。）設ける必要があった。
【０００５】
【発明が解決しようとする課題】
このクラスタ間ネットワークのルーティング処理では、同一のクラスタにリクエスト要求を行う複数のリクエストが同時に到着した場合に対し、前述したようにサイズの大小の相違はあるものの緩衝バッファをクラスタ間ネットワーク内に設ける必要があった。しかしながら、クラスタ数が増加すると、クラスタの増加した分の緩衝バッファを増加する必要があるという欠点があった。
【０００６】
本発明では、リクエスト調停手段は、送受信のリクエストを受け付ける緩衝バッファのみを持ち、リクエストに対する通信の許可を確認した段階でネットワークへのデータの送出を開始することでデータ蓄積用の緩衝バッファを不要とし、クラスタ数の増加に伴う緩衝バッファの増加分の削減を図るものである。
【０００７】
そしてデータ転送元クラスタとデータ転送先クラスタとの間で一定期間データパスを占有しデータ転送する方式とし、リクエスト調停手段がデータパスの空き状況を管理する。よってクラスタ間のデータ転送を行う時、データパス間の競合は発生しない。競合が発生しないことにより、データパスを占有しない方式で必要であった緩衝バッファ量の削減が可能となるわけである。
【０００８】
本発明は、さらに、データ転送要求をしている間にデータ転送要求元の自クラスタ内のメモリからデータをロードし、転送許可が通知された場合に即座に他クラスタへのデータ転送を開始することで、効率よくデータ転送を行うことが出来る。
【０００９】
【課題を解決するための手段】
本願の第１の発明のデータ転送処理装置は、複数のクラスタと該複数のクラスタを接続するネットワークとからなるシステムにおいて、前記クラスタは、クラスタ間でのデータの転送の指示命令を発行する演算処理装置と、他の前記クラスタとの送信データ／受信データを格納する共有メモリと、他の前記クラスタとの間でデータの送受信の制御を行うデータ転送装置と、前記演算処理装置、前記共有メモリ、前記データ転送装置間での通信を可能とするローカルネットワークとを含み、前記ネットワークは、前記クラスタからの通信要求を調停するネットワークリクエスト調停手段と、前記クラスタ間でのデータの転送を行うネットワークデータ転送手段と、を備える。
【００１０】
本願の第２の発明のデータ転送処理装置は、第１の発明において、前記データ転送装置は、前記演算処理装置の発行したデータの転送の命令を解読する命令解読手段と、該命令解読手段が解読した命令を格納するとともに次の手段にそれを送出する解読命令格納手段と、前記解読命令格納手段から解読した命令を受け取りその内容に従って他の前記クラスタとの通信の制御を行うデータ転送要求／リクエスト送受信手段と、該データ転送要求／リクエスト送受信手段から受け取った解読された命令を元に前記共有メモリへのアクセスを行う共有メモリアクセス手段と、前記ネットワークとの間で転送データの送受信を実行するデータ転送手段と、を備える。
【００１１】
本願の第３の発明のデータ転送処理装置は、第１の発明において、前記データ転送要求／リクエスト送受信手段は、前記解読命令格納手段から受け取った命令を次の手段に渡すと同時に前記ネットワークリクエスト調停手段に前記解読された命令で指定された相手先クラスタとの通信を要求するデータ転送要求手段と、前記データ転送要求手段から受け取った命令の論理アドレスを物理アドレスに変換しそれを前記共有メモリアクセス手段に渡す論理アドレス変換手段と、前記ネットワークリクエスト調停手段からの通信許可と転送データの送受信準備の完了の同期をとる転送整合手段と、を備える。
【００１２】
本願の第４の発明のデータ転送処理装置は、第１の発明において、前記転送整合手段は、送信時においては、前記ネットワークリクエスト調停手段からの送信の許可の通知と前記共有メモリアクセス手段による前記共有メモリからの送信データの取り出し完了の通知の同期をとり両通知が揃った段階で前記データ転送手段に送信の許可を与えることを備える。
【００１３】
本願の第５の発明のデータ転送処理装置は、第１の発明において、前記転送整合手段は、受信時においては、前記データ転送要求手段による受信の許可の通知と、前記データ転送手段による転送データの受信完了の通知の同期をとり、両通知が揃った段階で受信の完了を前記データ転送要求手段に報告することを備える。
【００１４】
本願の第６の発明のデータ転送処理装置は、第１の発明において、送信側の前記クラスタによる前記共有メモリからの転送データの読み出しと前記ネットワークリクエスト調停手段によるデータパスの開設処理とを並行して動作させ、受信側の前記クラスタでは転送データを全て受信し終えた時前記共有メモリへの転送データの書き出しと並行して送信側クラスタへの転送処理の終了通知とネットワークリクエスト調停手段によるデータパスの開放処理とを動作させることを備える。
【００１５】
本願の第７の発明のデータ転送処理装置は、第１の発明において、前記ネットワークリクエスト調停手段は、データの送受信のリクエストを格納する緩衝バッファを前記クラスタごとに１つ持ち、データを格納する緩衝バッファは持たないことを備える。
【００１６】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００１７】
図１に、本発明の構成図を示す。
【００１８】
本発明の情報処理システムの構成は、複数のクラスタ１と、クラスタ間ネットワーク２と、からなる。
【００１９】
クラスタ１は、転送元のクラスタ１の共有メモリ１１と転送先のクラスタ１の共有メモリ１１との間での双方向のデータ転送のリクエストを行う複数個の演算処理装置１０と、複数の演算処理装置１０で共有する共有メモリ１１と、複数の演算処理装置１０と共有メモリ１１とデータ転送装置１３それぞれにインタフェースを持つクラスタ１内のローカルネットワーク１２と、ローカルネットワーク１２とネットワーク２との間に位置し自クラスタの共有メモリ１１と他クラスタの共有メモリ１１の間のデータ転送を制御するデータ転送装置１３と、から構成されている。
【００２０】
演算処理装置１０から発行された転送命令は、ローカルネットワーク１２を介して、データ転送装置１３で受け取られる。
【００２１】
データ転送装置１３は、該転送命令を受け取り解読する命令解読手段１３０と、命令解読手段１３０により解読された命令を一時的に格納する解読命令格納手段１３１と、
解読命令格納手段１３１が送出した解読された命令によるデータ転送要求をネットワークリクエスト調停手段２０へ発行する、また他のクラスタ１からの転送要求をクラスタ間ネットワーク２を介して受信するデータ転送要求／リクエスト送受信手段１３２と、
自クラスタ１内の共有メモリ１１へのアクセスを行う共有メモリアクセス手段１３３と、
共有メモリアクセス手段１３３で共有メモリ１１から読み出したデータをネットワークデータ転送手段２１を介して他クラスタへ送信を行うまた、他クラスタ１から受信したデータを蓄積し受信完了したデータを共有メモリアクセス手段１３３に渡すデータ転送手段１３４と、から構成されている。
【００２２】
データ転送要求／リクエスト送受信手段１３２は、内部にデータ転送要求手段１３２０と、論理アドレス変換手段１３２１と、転送整合手段１３２２と、を有する。
【００２３】
まず、データ転送要求手段１３２０は、論理アドレス変換手段１３２１に解読命令格納手段１３１から受け取った命令を渡す、また同じくネットワークリクエスト調停手段２０に解読命令格納手段１３１から受け取った命令を送出し相手先クラスタ１への送受信要求の許可を得たり、また逆に、他クラスタ１からの送受信の要求をネットワークリクエスト調停手段２０を介して受け付ける。
【００２４】
論理アドレス変換手段１３２１は、データ転送要求手段１３２０から受け取った命令中の共有メモリの論理アドレスを物理アドレスに変換しそれを共有メモリアクセス手段１３３に送出する。
【００２５】
転送整合手段１３２２は、他のクラスタ１に転送する自クラスタ１の共有メモリからのデータの読み出しが完了した通知及びネットワークリクエスト調停手段２０から通信許可の通知が揃うと、データ転送手段１３４に対し読み出しデータをネットワークデータ転送手段２１へ転送する指示を行う。また、受信側のクラスタ１の場合には、他のクラスタ１から受信したデータの共有メモリ１１への書き込みの完了通知をデータ転送要求手段１３２０に行う。
【００２６】
クラスタ間ネットワーク２は、ネットワークリクエスト調停手段２０と、ネットワークデータ転送手段２１と、各クラスタからの送受信リクエストを格納する緩衝バッファ２２と、からなる。
【００２７】
ネットワークリクエスト調停手段２０は、データ転送装置１３からの他のクラスタ１とのデータ転送のリクエストを受け付け、それをクラスタ１ごとに用意した緩衝バッファ２２に格納する。そして、クラスタ１間データ転送において競合が発生しないようにリクエスト先クラスタ１のデータ転送要求手段１３２０との折衝、転送許可の発行、データパス（転送経路）の開設、使用済みデータパスの開放等を行う。
【００２８】
ネットワークデータ転送手段２１は、ネットワークリクエスト調停手段２０が調停し確保したデータパスに従いデータ転送を行う。転送許可を与えたデータについてデータ転送装置１３からそれを受け取り送信先のクラスタ１に送信を実行する。
【００２９】
次に、本発明の実施の形態の動作について図１と、図２、図３のフローチャートを参照して説明する。
【００３０】
図１で示されているクラスタ１内の任意の演算処理装置１０からクラスタ１の間でのデータの転送命令が発行される（ステップＳ１）。発行されたクラスタ１間でのデータ転送命令は、ローカルネットワーク１２を介してデータ転送装置１３で受け付けられる（ステップＳ２）。
【００３１】
尚、以降では、他のクラスタ１にデータを転送するクラスタ１を主体に説明を行う。
【００３２】
データ転送装置１３で受け付けられた命令は、命令解読手段１３０で解読される（ステップＳ３）。解読された命令は、解読命令格納手段１３１が受け取り蓄積する（ステップＳ４）。
【００３３】
解読された命令の内容は以下のものからなっている。
0003626653.tif 000002
複数の演算処理装置１０からの命令が同時に発生したような場合、命令解読手段１３０によって解読された命令内容を受け取った解読命令格納手段１３１は、自身の有する解読された命令を格納する領域に順に蓄積を行う。解読命令格納手段１３１は、格納した解読命令が該領域に存在する場合、蓄積された先頭の解読命令を取り出しそれをデータ転送要求／リクエスト送受信手段１３２に送り出す（ステップＳ５）。同時に、送り出した該解読命令は削除する。該解読命令を受け取ったデータ転送要求／リクエスト送受信手段１３２は、以下のような動作をする。
【００３４】
解読命令格納手段１３１から送られた該解読命令は、データ転送要求／リクエスト送受信手段１３２の中のデータ転送要求手段１３２０で受け付けられる。データ転送要求手段１３２０は、受け付けた該解読命令を論理アドレス変換手段１３２１に転送する（ステップＳ６）。
【００３５】
論理アドレス変換手段１３２１は、該解読命令中の共有メモリ１１の送信データ格納先を指定する論理アドレスを物理アドレスに変換する。論理アドレス変換手段１３２１は、この変換された物理アドレスとデータ転送長を、共有メモリアクセス手段１３３へ送信対象データの読み出しの要求として送出する（ステップＳ７）。
【００３６】
読み出しの要求を受け取った共有メモリアクセス手段１３３は、ローカルネットワーク１２を介して共有メモリ１１から物理アドレスで指定された番地にある転送データをデータ転送長分読み出す。読み出された転送データは、共有メモリアクセス手段１３３を介してデータ転送手段１３４に送り込まれる（ステップＳ８）。送り込まれたデータが指定されたデータ転送長分読み出せたかを共有メモリアクセス手段１３４でカウントし、指定されたデータ転送長分読み出しが終わると、転送整合手段１３２２に対して共有メモリ１１からのデータ読み出しの完了を通知する（ステップＳ９）。
【００３７】
先に論理アドレス変換手段１３２１に解読命令を渡したデータ転送要求手段１３２０は、同時にネットワークリクエスト調停手段２０に対しても解読命令から取り込んだ送信宛先のクラスタ１を識別する番号を指定してデータ転送のリクエストを行う（ステップＳ２１）。
【００３８】
ネットワークリクエスト調停手段２０は、受け取ったリクエストを当該クラスタ１向けに１つ設けられた緩衝バッファ２２に蓄積し、クラスタ間ネットワークが空いていれば、データ転送要求手段１３２０からの転送要求に応え、受信側クラスタ１の転送要求手段１３２０に対し受信の要請を行う。その後、送信側のデータ転送要求手段１３２０に対して受信側クラスタ１との間のデータパスを識別する番号とともに転送の許可を与える。クラスタ１間のデータパスが空いてなければ、データパスが空いた時、データ転送要求手段２０にデータ転送許可を与える（ステップＳ２２）。
【００３９】
データ転送要求手段１３２０は、ネットワークリクエスト調停手段２０からデータ転送許可が与えられると、ネットワークリクエスト調停手段２０に対してデータパスを識別する番号を指定して転送先のクラスタ１へのデータ送信リクエストを送出する（ステップＳ２３）。データ送信リクエストの内容は、命令解読手段１３０が解読した結果であり、送信か受信かの命令種別、データ転送長、送信宛先クラスタ番号、送信元クラスタ番号、送信宛先クラスタ１の共有メモリの論理アドレス等の情報からなっている。ネットワークリクエスト調停手段２０は受け取ったこの送信リクエストを送信宛先（受信側）のクラスタ１のデータ転送要求手段１３２０に渡す（ステップＳ２４）。
【００４０】
受信側クラスタ１のデータ転送要求手段１３２０は、受信側クラスタ１の論理アドレス変換手段１３２１にこの通知された情報を渡す（ステップＳ２５）。論理アドレス変換手段１３２１は、共有メモリ１１の受信先のアドレスを指定する論理アドレスを物理アドレスに変換して共有メモリアクセス手段１３３に転送サイズ情報とともに渡す（ステップＳ２６）。また、データ転送要求手段１３２０は、受信許可を与えたことを転送整合手段１３２２に報告する（ステップＳ２７）。送信先クラスタ１はこのようにして転送データを受信する体勢に入る。
【００４１】
送信側のクラスタ１の処理に戻ると、転送整合手段１３２２は、共有メモリアクセス手段１３３からのデータの読み出しが終了した旨の通知とデータ転送要求手段１３２０からのデータ転送許可の両通知を受けると（ステップＳ１０）、送信宛先クラスタ１へのデータ転送が開始出来ることを認識して、データ転送手段１３４にデータ転送の開始指示を与える（ステップＳ１１）。データ転送手段１３４は、このデータ転送開始指示によりネットワークデータ転送手段２１にデータを送り込む（ステップＳ１２）。ネットワークデータ転送手段２１はこのデータを受信側のクラスタ１のデータ転送手段１３４に送信する（ステップＳ１３）。
【００４２】
受信側のクラスタ１のデータ転送手段１３４は、送信側のクラスタ１のデータ転送手段１３４から、ネットワークデータ転送手段２１を介して送り込まれた送信データを受信する（ステップＳ１４）。受信側のクラスタ１のデータ転送手段１３４は、送り込まれた転送長により、データが全て転送されたかを判断する。データ転送手段１３４は、ネットワークデータ転送手段２１から受信した全てのデータを蓄積し受信を完了すると、共有メモリアクセス手段１３３に受信の完了を通知する。データ転送手段は、同時に転送整合手段１３２２に対しても受信の終了を通知する（ステップＳ１５）。
【００４３】
共有メモリアクセス手段１３３は、この通知を受けるとデータ転送手段１３４の保有する当該受信データを取りだしローカルネットワーク１２を経由して物理アドレスで指定された共有メモリ１１に全てのデータを書き出す（ステップＳ１６）。共有メモリアクセス手段１３３の書き出し処理と並行して、次の処理が行われる。
【００４４】
転送整合手段１３２２は、この通知を受けるとデータ転送要求手段１３２０に転送終了の報告を行う（ステップＳ１７）。報告を受けたデータ転送要求手段１３２０は、受信側のメモリへのデータ書き込みが終了したとして、ネットワークリクエスト調停手段２０を介して送信側のデータ転送要求手段１３２０に転送の完了を報告する（ステップＳ１８）。
【００４５】
報告を受けた送信側のデータ転送要求手段１３２０は、送信の要求を行った演算処理装置１０に対して、転送リクエストが  終了したことを報告する（ステップＳ１９）。また、ネットワークリクエスト調停手段２０は、この転送処理で確保したデータパスの開放を行う。
【００４６】
【発明の効果】
転送元クラスタと転送先クラスタとの間でデータパスを占有しないで、クラスタ間ネットワーク内でリクエスト調停手段によって調停させる方式を取ることにより、クラスタ数が増加してもクラスタ間ネットワークのＨＷ量の増大を極力抑えることが出来るという効果がある。
【００４７】
又、前記リクエスト調停手段に送受信のリクエスト要求をしている間に先行してローカルメモリからデータを並行して読み出し、また受信側クラスタから送信側のクラスタへ転送処理の終了通知を行う時は、受信した転送データの書き出しと該終了通知処理等とを並行して動作させることにより性能の向上を図ることが出来るという効果がある。
【図面の簡単な説明】
【図１】本発明の構成を示すブロック図である。
【図２】本発明の実施の形態を説明するフローチャートである。
【図３】本発明の実施の形態を説明するフローチャートである。
【図４】本発明の背景となる従来技術の概略構成を表すブロック図である。
【符号の説明】
１    クラスタ
１０    演算処理装置
１１    共有メモリ
１２    ローカルネットワーク
１３    データ転送装置
１３０    命令解読手段
１３１    解読命令格納手段
１３２    データ転送要求／リクエスト送受信手段
１３２０    データ転送要求手段
１３２１    論理アドレス変換手段
１３２２    転送整合手段
１３３    共有メモリアクセス手段
１３４    データ転送手段
２    クラスタ間ネットワーク
２０    ネットワークリクエスト調停手段
２１    ネットワークデータ転送手段
２２    緩衝バッファ
【図１】
0003626653.tif 000003
【図２】
0003626653.tif 000004
【図３】
0003626653.tif 000005
【図４】
0003626653.tif 000006