JP3807250B2 - クラスタシステム、コンピュータ及びプログラム - Google Patents
クラスタシステム、コンピュータ及びプログラム Download PDFInfo
- Publication number
- JP3807250B2 JP3807250B2 JP2001148687A JP2001148687A JP3807250B2 JP 3807250 B2 JP3807250 B2 JP 3807250B2 JP 2001148687 A JP2001148687 A JP 2001148687A JP 2001148687 A JP2001148687 A JP 2001148687A JP 3807250 B2 JP3807250 B2 JP 3807250B2
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- node
- issuing
- issue
- area
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の属する技術分野】
本発明は、ネットワークに接続された複数のコンピュータが協調して動作するクラスタシステム、クラスタシステムに使用するコンピュータ、コンピュータに実行させるためのプログラムに関する。
【0002】
【従来の技術】
従来から、複数のコンピュータ(一般には、マルチプロセッサ型のコンピュータ)をネットワークで接続し、これらのコンピュータが協調して動作することにより処理能力の向上等を図ったクラスタシステムが開発されている(例えば、クラスタシステムについては、特開平7−160657号公報、特開平11−66022号公報、特開平2000−215182号公報参照。また、マルチプロセッサ型コンピュータにおけるデータ伝送に関しては特開平1−154272号公報、特開平5−73518号公報参照)。
【0003】
図14は、従来の一般的なクラスタシステムを示すブロック図である。図14において、複数のコンピュータ(クラスタシステムにおいて、各コンピュータはノードと称される。)1、2がネットワーク3を介して接続されている。
ノード1、2は、各々、複数の中央処理装置(CPU)4〜6、13〜15、ノードコントローラ8、17、メインメモリ9、18、入出力装置である入出力(I/O)コントローラ11、20、ネットワークアダプタ12、21を備えている。
【0004】
CPU4〜6及びノードコントローラ8はCPUバス7に接続され、CPU13〜15及びノードコントローラ17はCPUバス16に接続されている。また、ノードコントローラ8、I/Oコントローラ11及びネットワークアダプタ12は、I/Oアダプタバス10に接続されており、ノードコントローラ17、I/Oコントローラ20及びネットワークアダプタ21は、I/Oアダプタバス19に接続されている。
ネットワークアダプタ12、21は、各々、ノード間接続バス22、23を介してネットワーク3に接続されている。
【0005】
ノードコントローラ8、17は、各々、CPUバス7、16およびメインメモリ9、18のインタコネクト、I/Oアダプタバス10、19の制御を行っている。I/Oアダプタバス10、19には、各々、I/Oコントローラ11、20やネットワークアダプタ12、21以外にも磁気ディスク等の二次記憶装置(図示せず)が接続されている。前記二次記憶装置はPCI(Peripheral Component Interconnect)ボード及びSCSI(Small Computer System Interface)を介してI/Oアダプタバス10に接続されている。
複数のコンピュータ1、2は、ネットワークアダプタ12、21によって接続されている。
【0006】
以上のように構成されたクラスタシステムにおいては、ネットワーク装置であるネットワークアダプタ12、21間ではパケットという単位でのデータの送受信が行われている。パケットは、ネットワーク接続装置の実装方法や構成するネットワーク自体の種類により、最長パケット長が決定されている。ネットワーク接続装置が、一般的に使用されているイーサネットワーク制御装置である場合は、最大パケット長は1500Byteとされている。このように、転送データを最大転送パケットに分割してデータ送信することをフラグメントと呼んでいる。
【0007】
例えば、TCP(Transmission Control Protocol)によってノード間でのデータ送信が行われる場合、そのデータ長が、ネットワーク接続装置が一度に送信できるサイズよりも大きい場合は、ネットワーク接続装置が送信できる最大パケット長にデータを区切り、パケットに分割して送信する。TCPではソフトウェア的に割り込みを行う手段が無く、各パケット終了毎にハードウェアで割り込みを発生するようにしているため、受信側ノードのネットワーク接続装置は、各パケットを受信する毎に、自ノード内のCPUに対する割り込みを発生し、そのパケットが転送データの最終パケットであるか否かをを判断する割り込み処理を実行している。この際、ノード間のデータ転送量が大きい場合は、分割されるパケットも多数となり、パケット受信毎に発行される割り込みのうちの多くは無駄な割り込み処理となっているという問題があった。
【0008】
また、二次記憶装置やI/Oコントローラ11、20が接続されているI/Oアダプタバス10、19を経由した、ネットワーク接続装置間のデータ送受信となるため、データの送信自身もオーバヘッドが大きいという問題があった。
そこで、図15の従来例に示すように、I/Oアダプタバス10、19を介さずに、ノードコントローラ33、34を介して複数のノード31、32間を接続するクラスタシステムが開発されている。尚、図15では、図14と同一部分には同一符号を付している。
【0009】
図15に示すクラスタシステムにおいては、上記割り込みのオーバヘッドをなくすために、送信側ノードは、送信するデータとともにフラグと呼ばれる特別なデータも送信し、データ送信の完了を伝える方式(フラグ方式)を採用する場合が多い。このフラグ方式では、受信側ノードは、データを受信している間は繰り返しフラグのリード(ポーリング)を行い、TRUE(=データ送信完了)を示すフラグを受信すると、データ受信完了と判断し、受信したデータを用いた処理を開始する。この方式は、上記割り込みのオーバヘッドの問題を解決することが出来、またデータ受信完了を即座に知ることが出来ることから、受信側でのデータ待ち状態にあるアプリケーションの応答を高速化することが可能になる。
【0010】
【発明が解決しようとする課題】
しかしながら、上記フラグ方式を用いた場合には、受信側ノードでは、常にデータ待ち状態にあるアプリケーションが、フラグのポーリングを続けている必要があるために、受信側ノードのCPUをある特定のアプリケーションがポーリングのために使用し、CPU使用時間の無駄が発生するという問題がある。
【0011】
また、上記2つの問題点に加え、クラスタシステムでは多数のノードがそれぞれデータの通信を行っていることから、あるノードの不具合により、別のノードに対して悪影響を及ぼす危険が存在している。高い可用性のあるクラスタシステムを構築するためには、最初に挙げた割り込み方式の場合においても、不具合が発生したノードからの割り込みをガードする機構(セキュリティ機構)が必要とされている。
そこで、冒頭のフラグメントによる割り込み処理のオーバヘッドの問題および、フラグ方式でのポーリングの問題、セキュリティ機構の確保を可能とする仕組みが必要とされていた。
【0012】
本発明は、ノード間の割り込み伝達を低レイテンシに行うことを課題としている。また、本発明は、割り込みによるオーバヘッドを低減することを課題としている。さらに、本発明は、セキュリティの向上を図ることを課題としている。
【0013】
【課題を解決するための手段】
本発明によれば、ネットワークに接続された複数のノードが協調して動作するクラスタシステムにおいて、割り込み発行先ノード用の所定構成要素を自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して所定情報を発行することにより、前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信する割り込み発行元ノードと、前記所定構成要素宛の前記所定情報を受信して、自ノード内のCPUに対して割り込み命令を送信することにより、前記CPUに割り込みを発生させる制御手段を有する割り込み発行先ノードとを備えて成ることを特徴とするクラスタシステムが提供される。
【0014】
割り込み発行元ノードは、割り込み発行先ノード用の所定構成要素を自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して所定情報を発行することにより、前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信する。割り込み発行先ノードの制御手段は、前記所定構成要素宛の前記所定情報を受信して、自ノード内のCPUに対して割り込み命令を送信することにより、前記CPUに割り込みを発生させる。
【0015】
ここで、前記所定構成要素を記憶手段で構成してもよい。
また、前記割り込み発行先ノードは、自己がアクセスを許容するノードを判別するための情報を記憶するアクセス許容ノード情報記憶手段を有し、前記制御手段は、前記所定情報を受信した際、前記アクセス許容ノード情報記憶手段を参照して、前記所定情報を送信した割り込み発行元ノードがアクセスを許容するノードの場合に、前記割り込み命令を送信するように構成してもよい。
また、前記アクセス許容ノード情報記憶手段は、自己がアクセスを許容するノードを判別するための情報を設定した割り込みマスクレジスタによって構成されているようにしてもよい。
【0016】
また、前記記憶手段は、前記メモリ空間における割り込み発行領域に関連付けた割り込み発生レジスタと、割り込み先CPUを表す情報が設定された割り込み先CPU指定レジスタとを有し、前記割り込み発行元ノードは、前記割り込み発行領域に前記所定情報を発行することによって前記割り込み発生レジスタ宛に前記所定情報を送信し、前記割り込み発行先ノードの制御手段は、前記割り込み発生レジスタ宛に発行された前記所定情報を受信して、前記割り込み先CPU指定レジスタに設定されたCPUに対して前記割り込み命令を送信するように構成してもよい。
【0017】
また、前記記憶手段は、更に、自己がアクセスを許容するノードを判別するための情報を設定した割り込みマスクレジスタを有し、前記割り込み発行先ノードの制御手段は、前記所定情報を受信した際、前記割り込みマスクレジスタの設定情報を参照して、前記割り込み発行元ノードがアクセスを許容するノードの場合に前記割り込み命令を送信するように構成してもよい。
また、前記記憶手段は、更に、割り込み発行元ノードの情報を格納するための割り込み要因レジスタを有し、前記割り込み発行先ノードの制御手段は、前記所定情報を受信した際、前記割り込み発行元ノードの情報を前記割り込み要因レジスタに格納し、前記CPUは、前記割り込み要因レジスタに格納された割り込み発行元ノードの情報を参照して割り込み処理を行うように構成してもよい。
【0018】
また、前記割り込み発行領域は他ノードから直接アクセス可能なグローバルメモリ空間に設けられると共に、前記割り込み発行領域には複数の割り込み発行先ノードの前記所定構成要素が関連付けられ、前記割り込み発行元ノードは、前記割り込み発行先ノードの前記所定構成要素に関連付けられた割り込み発行領域に対して前記所定情報を発行することにより、対応する前記割り込み発行先ノードの前記所定構成要素宛に前記所定情報を送信するように構成してもよい。
また、前記割り込み発行領域は、自ノードのみが直接アクセス可能なローカルメモリ空間に設けられると共に、割り込み発行先ノードを指定するための割り込み発行先ノード指定領域と、前記所定情報を発行するための割り込み発生領域とによって構成され、前記割り込み発行元ノードは、前記割り込み発行先ノード指定領域に割り込み発行先ノードを指定した後、前記割り込み発生領域に前記所定信号を発行することによって前記指定した割り込み発行先ノードに前記所定情報を送信するように構成してもよい。
【0019】
また、本発明によれば、割り込み発行先ノード用の所定構成要素を自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して所定情報を発行することにより、前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信することを特徴とするコンピュータが提供される。割り込み発行先ノード用の所定構成要素を自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して所定情報を発行することにより、前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信する。
【0020】
ここで、前記所定構成要素を記憶手段で構成してもよい。
また、前記割り込み発行領域は他ノードから直接アクセス可能なグローバルメモリ空間に設けられると共に、前記割り込み発行領域には複数の割り込み発行先ノードの前記所定構成要素が関連付けられ、前記割り込み発行先ノードの前記所定構成要素に関連付けられた割り込み発行領域に対して前記所定情報を発行することにより、対応する前記割り込み発行先ノードの前記所定構成要素宛に前記所定情報を送信するように構成してもよい。
【0021】
また、前記割り込み発行領域は、自ノードのみが直接アクセス可能なローカルメモリ空間に設けられると共に、割り込み発行先ノードを指定するための割り込み発行先ノード指定領域と、前記所定情報を発行するための割り込み発生領域とによって構成され、前記割り込み発行先ノード指定領域に割り込み発行先ノードを指定した後、前記割り込み発生領域に前記所定信号を発行することによって、前記指定した割り込み発行先ノードに前記所定情報を送信するように構成してもよい。
【0022】
また、本発明によれば、自己用の所定構成要素宛の所定情報を受信して、自己のCPUに対して割り込み命令を送信することにより、前記CPUに割り込みを発生させる制御手段と、自己がアクセスを許容するノードを判別するための情報を記憶するアクセス許容ノード情報記憶手段を有し、前記制御手段は、前記所定情報を受信した際、前記アクセス許容ノード情報記憶手段を参照して、前記所定情報を送信した割り込み発行元ノードがアクセスを許容するノードの場合に、前記割り込み命令を送信することを特徴とするコンピュータが提供される。制御手段は、前記所定情報を受信した際、前記アクセス許容ノード情報記憶手段を参照して、前記所定情報を送信した割り込み発行元ノードがアクセスを許容するノードの場合に、前記割り込み命令を送信する。
【0023】
ここで、前記所定構成要素を記憶手段によって構成するようにしてもよい。
また、前記アクセス許容ノード情報記憶手段は、自己がアクセスを許容するノードを判別するための情報を設定した割り込みマスクレジスタによって構成されているようにしてもよい。
また、前記記憶手段は、前記メモリ空間における割り込み発行領域に関連付けた割り込み発生レジスタと、割り込み先CPUを表す情報が設定された割り込み先CPU指定レジスタとを有し、前記制御手段は、前記割り込み発生レジスタ宛に発行された前記所定情報を受信して、前記割り込み先CPU指定レジスタに設定されたCPUに対して前記割り込み命令を送信するように構成してもよい。
【0024】
また、前記記憶手段は、更に、割り込み発行元ノードの情報を格納するための割り込み要因レジスタを有し、前記制御手段は、前記所定情報を受信した際、前記割り込み発行元ノードの情報を前記割り込み要因レジスタに格納し、前記CPUは、前記割り込み要因レジスタに格納された割り込み発行元ノードの情報を参照して割り込み処理を行うように構成してもよい。
【0025】
また、本発明によれば、コンピュータを、割り込み発行先ノード用の所定構成要素を自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して所定情報を発行することにより、前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信するように機能させることを特徴とするプログラムが提供される。コンピュータは、プログラムを実行することにより、割り込み発行先ノード用の所定構成要素を自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して所定情報を発行することにより、前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信するように機能する。
【0026】
ここで、コンピュータを、前記割り込み発行領域を他ノードから直接アクセス可能なグローバルメモリ空間に設けると共に、前記割り込み発行領域には複数の割り込み発行先ノードの前記所定構成要素を関連付け、前記割り込み発行先ノードの前記所定構成要素に関連付けた割り込み発行領域に対して前記所定情報を発行することにより、対応する前記割り込み発行先ノードの前記所定構成要素宛に前記所定情報を送信するよう機能させるようにプログラムを構成してもよい。
また、コンピュータを、前記割り込み発行領域を自ノードのみが直接アクセス可能なローカルメモリ空間に設けると共に、割り込み発行先ノードを指定するための割り込み発行先ノード指定領域と前記所定情報を発行するための割り込み発生領域とによって構成し、前記割り込み発行先ノード指定領域に割り込み発行先ノードを指定した後、前記割り込み発生領域に前記所定信号を発行することによって指定した前記割り込み発行先ノードに前記所定情報を送信するよう機能させるようにプログラムを構成してもよい。
【0027】
また、本発明によれば、コンピュータを、所定情報を受信した際、自己がアクセスを許容するノードを判別するための情報を記憶するアクセス許容ノード情報記憶手段を参照して、前記所定情報を送信した割り込み発行元ノードがアクセスを許容するノードの場合に割り込み命令を自己のCPUに送信することにより、前記CPUに割り込みを発生させる制御手段として機能させることを特徴とするプログラムが提供される。コンピュータは、プログラムを実行することにより、所定情報を受信した際、自己がアクセスを許容するノードを判別するための情報を記憶するアクセス許容ノード情報記憶手段を参照して、前記所定情報を送信した割り込み発行元ノードがアクセスを許容するノードの場合に割り込み命令を自己のCPUに送信することにより、前記CPUに割り込みを発生させる制御手段として機能する。
【0028】
ここで、前記制御手段を、前記所定情報が自己の所定構成要素宛に送信されたものである場合に、前記許容ノード情報記憶手段を参照して、前記所定情報を送信した割り込み発行元ノードがアクセスを許容するノードの場合に、前記割り込み命令を自己のCPUに送信することにより、前記CPUに割り込みを発生させるように機能させるようにプログラムを構成してもよい。
【0029】
【発明の実施の形態】
以下、図面を用いて、本発明の実施の形態に係るクラスタシステム、クラスタシステムに使用するコンピュータ及びコンピュータに実行させるためのプログラムについて説明する。
図1は、本発明の実施の形態に係るクラスタシステムの概要を示すブロック図である。図1において、マルチプロセッサ型の複数のコンピュータ(ノード)101〜104がノード間接続バス113を介してネットワーク105に接続されている。このように、複数のノード101〜104はネットワーク105によって接続され、クラスタシステムとして協調して動作する構成となっている。
【0030】
ノード101〜104は各々同一構成のコンピュータで、図1では、ノード101、102の内部構成を概略示している。ノード101、102について説明すると、ノード101、102は、各々、複数の中央処理装置(CPU)モジュール106及び107、109及び110、ノードコントローラ108、111を備えている。ノードコントローラ108、111は内部に制御手段としての割り込み制御回路を有しており、図1ではノードコントローラ111の割り込み制御回路112のみ図示している。
【0031】
詳細は後述するが、図1に示すクラスタシステムにおいてノード間で割り込みを発生する場合の動作を概略説明すると、ノード101からノード102に対して割り込みを発行する場合には、割り込み発行元ノード101のCPUモジュール106から所定情報(例えばストア命令)Aを発行し、割り込み発行先ノード102の割り込み制御回路112は前記ストア命令を受信し、割り込み命令Bに変換してCPUモジュール109に送信して割り込み処理を行なう。
【0032】
図2は、図1に示したクラスタシステムの詳細ブロック図で、2台のノード201、202をネットワーク203で接続した構成を示している。
ノード201、202は同一構成のコンピュータで、各々、複数の中央処理装置(CPU)204〜206、212〜214、ノードコントローラ208、216、メインメモリ209、217、入出力装置である入出力(I/O)コントローラ211、219を備えている。
【0033】
CPU204〜206及びノードコントローラ208はCPUバス207に接続され、CPU212〜214及びノードコントローラ208はCPUバス215に接続されている。また、ノードコントローラ208及びI/Oコントローラ211はI/Oアダプタバス210に接続され、ノードコントローラ216及びI/Oコントローラ219はI/Oアダプタバス218に接続されている。ノードコントローラ208、216は、各々、ノード間接続バス221、222介してネットワーク203に接続されている。
【0034】
ノードコントローラ208、216は、各ノード201、202におけるCPU204〜206、212〜214、メインメモリ209、217、入出力装置間のデータのやりとりや各ノード201、202内のコヒーレンシ処理等の制御を行っている。
ノードコントローラ208、216内部には、相手先ノードへの割り込みを転送する機能を有すると共に他ノードから受信したストア命令を割り込み命令に変換して自ノードのCPUに送信する機能を有する割り込み制御回路が設けられている。図2には、ノードコントローラ216の割り込み制御回路220のみを示している。
【0035】
また、図3に示すように、ノードコントローラ216内の割り込み制御回路220内部には、ノード間割り込みを制御するための複数のレジスタが設けられている。図3において、割り込み制御回路220内部には、ノード間の割り込み用のレジスタとして、割り込み発生レジスタ301、割り込み要因レジスタ302、割り込みマスクレジスタ303、割り込みクリアレジスタ304、割り込み先CPU指定レジスタ305が設けられており、又、割り込み制御回路220は前記各レジスタ301〜305を制御する。
【0036】
図4に示すように、各割り込み制御用レジスタ301〜305は、自ノードのメモリアドレス空間401にマッピングされており、各ノードのCPUは、自ノード内のメモリ空間401における割り込み制御レジスタ301〜305空間部分にアクセスすることにより、各レジスタ301〜305へのアクセスを行うことが可能に構成されている。尚、ノード201、202において、各々、メインメモリ209、217やI/Oも、自ノードのメモリ空間401にマッピングされている。
【0037】
割り込み制御用レジスタ301〜305のうち、割り込み発生レジスタ301を除く各レジスタ302〜305は、自ノード内で割り込みを行うためのメモリアドレス空間(ローカルメモリアドレス空間)404にマッピングされており、各ノードのCPUは、自ノード内のメモリ空間404内の割り込み制御レジスタ空間406部分に対するアクセスを行うことにより、これらレジスタ302〜305へのアクセスが行えるように構成されている。
【0038】
一方、上記ローカルメモリ空間404とは別に、全ノードに対して共通のグローバルメモリアドレス空間402が設けられており、各ノードに存在する割り込み制御レジスタ301〜305のうち、割り込み発生レジスタ3010〜301nに関しては、全ノード共通のグローバルメモリ空間402内の割り込み発生レジスタ空間403にマッピングされている。
即ち、割り込み発行領域は他ノードから直接アクセス可能なグローバルメモリ空間に設けられると共に、前記割り込み発行領域には複数の割り込み発行先ノード用の所定構成要素(割り込み発生レジスタ3011〜301n)が関連付けられている。
【0039】
あるノードのCPUは、自グローバル空間402の中の別ノードの割り込み発生レジスタ3011〜301nにマッピングされた割り込み発生レジスタ空間403に対してアクセスを行うことにより、直接、当該他のノード内に存在する割り込み発生レジスタにアクセスすることができるように構成されている。
ただし、ローカルメモリ空間404およびグローバルメモリ空間402にマッピングされた各ノード間割り込み制御レジスタ301〜305は、アクセス権(リードライト可、リード可、ライト可)が設定されており、本来、他ノードからの直接アクセスが行われてはならないレジスタ301〜305に対するアクセスが行われた場合は、受信側ノード内の割り込み制御回路220により検出することが可能となっている。
【0040】
あるノードで、グローバルメモリ空間403を通して、あるノードの割り込み発生レジスタ301宛に、ノード間で予め定め割り込みを指示する所定情報が発行された場合、当該割り込み発生レジスタ301を実際に持つノード内では、割り込み制御回路220が前記所定情報を受信して割り込みメッセージを生成し、割り込み制御回路220内の割り込み先CPU指定レジスタ305で指定されている自ノード内部の特定のCPUへ送信する。
【0041】
ここで、割り込み先CPU指定レジスタ305には、割り込み先CPUを表す情報が予め設定されている。
また、割り込みマスクレジスタ303は、自己がアクセスを許容するノードを判別するための情報を記憶するアクセス許容ノード情報記憶手段を構成しており、該レジスタ303を持つノードに対してノード間割り込みを発生させることのできないノードの番号を保持している。もし、本来このノードへの割り込みを発生させることのできないノードから割り込み発生レジスタ301宛に割り込み指示情報を受信した場合でも、リモート割り込み制御回路220が割り込みマスクレジスタ303においてマスク指定されているノードからの割り込み要求であると判断した場合は、割り込み処理は行わない。
【0042】
割り込み要因レジスタ302は、割り込み発生レジスタ301宛の割り込み指示情報を受信したときに、どのノードから発行された割り込み指示情報なのかを記録しておき、割り込み処理においてソフトウェアへ割り込み情報を提供している。割り込みクリアレジスタ304は、割り込み要因レジスタ302のクリアを行うためのレジスタであり、割り込み要因クリアレジスタ304にフラグを立てることにより、割り込み要因レジスタ302のクリアを実施する。
【0043】
割り込み要因レジスタ302、割り込みマスクレジスタ303、割り込みクリアレジスタ304、割り込み先CPU指定レジスタ305は、ローカルメモリ空間404にのみマッピングされており、自ノード内での直接アクセスは可能であるが、他ノードからの直接のアクセスはできないように構成されている。
尚、割り込み発生レジスタ301、割り込み要因レジスタ302、割り込みマスクレジスタ303、割り込みクリアレジスタ304、割り込み先CPU指定レジスタ305は記憶手段を構成している。
【0044】
図5〜図7は、ノード間割り込み発行時の動作を説明するためのブロック図である。
一般に、ノード間でデータ送信が完了した後には、データ送信が完了したことを通知するためにノード間割り込みが行われるため、図5〜図7の例では、ノード間割り込みが行われる場合の例として、ノード間のデータ転送の完了後に、データ転送完了をデータ受信ノードに通知して割り込みを行う場合の例を示している。尚、図5〜図7において、図2と同一部分には同一符号を付している。
【0045】
また、図8は割り込み発行先ノードにおける割り込み処理を示すフローチャートである。
また、図9はノード間割り込みを発行するために、割り込み発行元ノードから発行先ノードへ送信される割り込み指示信号の構成を示す図である。図9において、前記割り込み指示信号は、パケットによって構成され、割り込み発行先ノード、割り込み発行元ノード、割り込み指示を表す所定の情報(本実施の形態ではストア命令)及び割り込み発行先ノードの割り込み発生レジスタを特定するアドレスを含むヘッダ部、並びにデータ部とを備えている。データ部にはデータは不要であるが、パケットの形式によってはダミーデータを含ませるようにしてもよい。
【0046】
以下、図5〜図9を用いて又、必要に応じて図3及び図4を参照しながら、ノード間割り込みを発生させるための動作を中心に説明する。
先ず、図5において、ノード201がノード202に対するデータ転送を完了した後に、ノード201からノード202に対してノード間割り込みを送信するものとして説明する。即ち、ノード201が割り込み発行元ノード、ノード202が割り込み発行先ノード(ターゲットノード)として機能する例である。
【0047】
この場合、ノード201では、ノード202に対するデータCの送信完了後に、ノード202用の所定構成要素を関連付けた自己の割り込み発行領域に対して所定情報(例えば、ストア命令)を発行する。例えば、CPU204は、自らがアクセス可能なグローバルメモリ空間402におけるノード202用の所定構成要素(ある割り込み発生レジスタ301)がマッピングされている割り込み発行領域(例えば、リモート割り込み制御レジスタ空間403のノード♯n割り込み発生レジスタ空間301n)に対するストア命令Aを発行する。
前記ストア命令Aはノードコントローラ208の割り込み制御回路(図示せず)によって、図9のパケット形式で、ノード間接続バス221を介してネットワーク203へ送出される。ネットワーク203へ送出された前記ストア命令Aは、ノード間接続バス222を介してノード202の割り込み制御回路220で受信される(図6参照)。
【0048】
このとき、ハードウェア制御により、ネットワークを伝送する信号は一つの経路を通るように保証されており、これにより、後から送信した信号が、先に送信した信号を追い越すことがないようにしている。即ち、ネットワーク203上で割り込み発生レジスタ301へのストア命令Aよりも先行するノード201からノード202へのデータCを、当該ストア命令Aが追い越すことは許されず、ノード201のノードコントローラ208からネットワーク203を経て、ノード202へのノードコントローラ216内の割り込み発生レジスタ301までの経路上でのデータCと、割り込み発生レジスタ301へのストア命令Aのオーダリングは経路上のハードウェアがすべて保証するように構成されている。
【0049】
割り込み制御回路220はノード201からのデータCを受信して、メインメモリ217に格納する(図7参照)。
割り込み制御回路220は、ノード201からのデータCをメインメモリ217に格納した後、ノード201から受信した自ノードの割り込み発生レジスタ301に対するストア命令Aを受信すると(図8のステップS1)、割り込みマスクレジスタ303を参照し、ノード201が、ノード202のノード間割り込み生成権をもっているかをチェックする(ステップS2)。
もし、割り込みマスクレジスタ303に、ノード201がノード202に対する割り込みを発生させる権利を持たないと指定されている場合は、ノード202内の所定のCPUに対して、アクセスを許容していないノードからのアクセスを受けた旨の警告を通知し(ステップS8)、受信したデータAを廃棄して処理を終了する。
【0050】
割り込み制御回路220は、ステップS2において、ノード202のマスクレジスタ304を参照して、ノード201がノード202に対する割り込み発生が許可されていると判断した場合は、割り込み要因レジスタ302に、ノード間割り込み要求のソース情報(ノード201に関する情報)を保存し(ステップS3)、且つ、割り込み制御回路220内の割り込み先CPU指定レジスタ305で指定されているCPUに対する割り込み信号Bを送信する(ステップS4及び図7参照)。
【0051】
この場合、割り込み先CPU指定レジスタ305でCPU213が指定されているとすると、CPU213は割り込み信号Bを受け取ると、CPU213内で割り込みハンドラからドライバがコールされる(ステップS5)。前記ドライバは、割り込み要因レジスタ302を参照して、どのノードから割り込みを受けたのかを判別し、対応する処理を行う(ステップS6)。CPU213は、割り込み処理を完了した後、割り込み要因クリアレジスタ304にフラグを立てることにより、割り込み要因レジスタ302のクリアを実施する。以上の処理によって、ノード間の割り込みが行われる。
【0052】
図10は、本発明に係る他の実施の形態のブロック図であり、図2と同一部分には同一符号を付している。
図10に示す実施の形態は、割り込み発行元ノード801および割り込み発行先ノード802におけるノードコントローラ803、805内の各々に、複数のノード間割り込み発行用レジスタが存在するシステムを示している。
即ち、割り込み発行元ノード801および割り込み発行先ノード802をネットワーク203で接続することによってクラスタシステムを構成し、ノードコントローラ803内に割り込み制御回路804を設けると共に、ノードコントローラ805内に割り込み制御回路806を設けている。割り込み制御回路804、806には、各々、複数のノード間割り込み発行用レジスタが設けられている。
【0053】
図11に示すように、割り込み発行元ノード801のノードコントローラ803に設けられた割り込み制御回路804内には、割り込み発行用レジスタとして、割り込み発生レジスタ901および割り込み発行先ノード指定レジスタ902が設けられている。割り込み制御回路804は割り込み発生レジスタ901および割り込み発行先ノード指定レジスタ902を制御する。
【0054】
また、図12に示すように、割り込み発行先ノード802のノードコントローラ805に設けられた割り込み制御回路806内には、割り込み要因レジスタ1001、割り込みマスクレジスタ1002、割り込み先CPU指定レジスタ1003、割り込み要因クリアレジスタ1004が設けられている。割り込み制御回路805は、これらのレジスタ1001〜1004を制御する。
尚、ノード801、802は同一に構成されているものであるが、説明の都合上、ノード801は割り込み発行元ノードとして機能するため、その制御回路804は割り込み発行元としての機能に関する部分を示しており、ノード802は割り込み発行先ノードとして機能するため、その制御回路806は割り込み発行先としての機能に関する部分を示している。
【0055】
ここで、割り込み発生レジスタ901は、実際に割り込みを発行する契機を与えるレジスタである。割り込み発行先ノード指定レジスタ902は、割り込み発行先のノード番号を指定するレジスタである。割り込みマスクレジスタ1002は、どのノードに対して割り込みを許可するかを指定するレジスタであり、アプリケーションにより誤ったノードから割り込みが行われないように、ファームウェア等、下位レベルのプログラムにより設定されるレジスタである。割り込み要因レジスタ1001、割り込み先CPU指定レジスタ1003および割り込み要因クリアレジスタ1004は、前述した実施の形態における各レジスタと同一機能を有するレジスタである。
【0056】
また、これらのレジスタ901、902、1001〜1004は、図13に示すような各ノード801、802におけるローカルメモリアドレス空間1101にマッピングされアクセスされる。即ち、割り込み発行領域は、自ノードのみが直接アクセス可能なローカルメモリ空間1101に設けられると共に、割り込み発行先ノードを指定するための割り込み発行先ノード指定領域と、前記所定情報を発行するための割り込み発生領域とによって構成されている。
この場合、図2のシステムのようなグローバルメモリアドレス空間に割り込み制御レジスタをマッピングする必要がなく、すべて、他ノードからのアクセスは禁止され且つ自ノードのみが直接アクセス可能なローカルメモリ空間1101へのマッピングとなる。
【0057】
ノード801からノード802に対して割り込みを発行する場合、ノード801では、例えばCPU204は、ローカルメモリ空間1101における割り込み発行先ノード指定レジスタ902に対する、ノード802を指定する情報の書き込み命令を発行し、次に、割り込み発生レジスタ901に対する所定情報(例えばストア命令)の書き込み命令を発行する。
前記ストア命令はノードコントローラ803の割り込み制御回路804によって、図9のパケット形式で、ノード間接続バス221を介してネットワーク203へ送出される。ネットワーク203へ送出された前記ストア命令Aは、ノード間接続バス222を介して、ノード802の割り込み制御回路806で受信され、以下、前記実施の形態と同様の処理がノード802で行われる。
【0058】
即ち、割り込み制御回路806は、割り込みマスクレジスタ1002を参照して、ノード801が自ノード802に対する割り込み生成権を有する場合にのみ、割り込み要因レジスタ1001にノード間割り込み要求のソース情報(ノード801に関する情報)を保存し、且つ、割り込み先CPU指定レジスタ1003で予め指定されている所定のCPUに対して割り込み信号を送信する。前記CPUは、割り込み処理を完了した後、割り込み要因クリアレジスタ1004にフラグを立てることにより、割り込み要因レジスタ1001のクリアを実施する。以上の処理によって、ノード間の割り込みが行われる。
【0059】
このように、割り込み発行元ノードにおいて、同様なノード間割り込み制御レジスタ群を実装した場合でも、図2の場合と同様に、各ノード801、802のCPU204〜206、212〜214が発行する所定情報(例えば、ストア命令)により、他ノードに対する割り込みを発行することが可能になる。
この場合、各ノードに設けられたレジスタ901、902、1001〜1004は、他ノードからの直接アクセスは不可で自ノードのみから直接アクセス可能なローカルメモリ空間1101にマッピングされるため、セキュリティが向上する。
【0060】
ただし、図2に示した実施の形態の場合とは異なり、最初に割り込み発行先ノードを割り込み発行先ノード指定レジスタ902に対する書き込み命令を発行することによって指定した後に、ノード割り込み発行レジスタ901に対して実際に割り込みを発行するための書き込み命令を発行することから、一つのノード間割り込みを発行するためにレジスタに対して2度書き込み命令を発行する必要があり、レイテンシ的には図2のシステムの方が優れている。
【0061】
以上述べたように本発明の実施の形態に係るクラスタシステムは、特に、割り込み発行先ノード用の所定構成要素(例えば、割り込み発行レジスタ)を自己のメモリアドレス空間402、1101における割り込み発行領域に関連付け、前記割り込み発行領域に対して所定情報(例えば、ストア命令)を発行することにより、前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信する割り込み発行元ノードと、前記所定構成要素宛の前記所定情報を受信して、自ノード内のCPUに対して割り込み命令を送信することにより、前記CPUに割り込みを発生させる制御手段を有する割り込み発行先ノードとを備えている。また、本発明の実施の形態に係るクラスタシステムは、ネットワークに接続された複数のノードが協調して動作するクラスタシステムにおいて、CPUと第1の制御手段とを有し、割り込み発行先ノード用の所定構成要素(例えば、割り込み発行レジスタ)を自己のメモリアドレス空間402、1101における割り込み発行領域に関連付け、前記CPUが前記第1の制御手段に対して、前記割り込み発行領域に対する所定情報(例えば、ストア命令)の書き込み命令を発行することにより、前記制御手段が前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信する割り込み発行元ノードと、前記所定構成要素宛の前記所定情報を受信して、自ノード内のCPUに対して割り込み命令を送信することにより、前記CPUに割り込みを発生させる第2の制御手段を有する割り込み発行先ノードとを備えていることを特徴としている。したがって、ノード間の割り込み伝達を低レイテンシに行うことが可能になり又、割り込みによるオーバヘッドを低減することが可能になる。
【0062】
また、前記割り込み発行先ノードは、自己がアクセスを許容するノードを判別するための情報を予め設定したマスクレジスタ303を有し、制御回路は、前記所定情報を受信した際、マスクレジスタ303の設定情報を参照して、前記所定情報を送信した割り込み元ノードがアクセスを許容するノードの場合に、前記割り込み命令を送信するように構成しているので、セキュリティの向上を図ることが可能になる。
【0063】
本発明の実施の形態に係るコンピュータは、特に、割り込み発行先ノード用の所定構成要素を自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して所定情報を発行することにより、前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信するように構成している。また、本発明の実施の形態に係るコンピュータは、割り込み発行先ノード用の所定構成要素を自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して所定情報を発行することにより、前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信するように構成している。また、本発明の実施の形態に係るコンピュータは、CPUと制御手段とを有し、割り込み発行先ノード用の所定構成要素を自己のメモリ空間における割り込み発行領域に関連付け、前記CPUが前記制御手段に対して、前記割り込み発行領域に対する所定情報の書き込み命令を発行することにより、前記制御手段が前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信するように構成していることを特徴としている。したがって、ノード間の割り込み伝達を低レイテンシに行うことが可能なクラスタシステムを構築することが可能になり又、割り込みによるオーバヘッドを低減したクラスタシステムを構築することが可能になる。
【0064】
また、本発明の実施の形態に係るコンピュータは、自己用の所定構成要素宛の所定情報を受信して、自己のCPUに対して割り込み命令を送信することにより、前記CPUに割り込みを発生させる制御手段と、自己がアクセスを許容するノードを判別するための情報を記憶するアクセス許容ノード情報記憶手段を有し、前記制御手段は、前記所定情報を受信した際、前記アクセス許容ノード情報記憶手段を参照して、前記所定情報を送信した割り込み発行元ノードがアクセスを許容するノードの場合に、前記割り込み命令を送信するように構成している。したがって、セキュリティの高いクラスタシステムを構築することが可能になる。
【0065】
本発明の実施の形態に係るプログラムは、特に、コンピュータを、割り込み発行先ノード用の所定構成要素を自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して所定情報を発行することにより、前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信するように機能させるように構成している。また、本発明の実施の形態に係るプログラムは、CPU及び制御手段を有するコンピュータを、割り込み発行先ノード用の所定構成要素を自己のメモリ空間における割り込み発行領域に関連付け、前記CPUが前記制御手段に対して、前記割り込み発行領域に対する所定情報の書き込み命令を発行することにより、前記制御手段が前記割り込み発行先ノード用の前記所定構成要素宛に前記所定情報を送信するように機能させるように構成していることを特徴としている。したがって、ノード間の割り込み伝達を低レイテンシに行うことが可能なクラスタシステムを構築することが可能になり又、割り込みによるオーバヘッドを低減したクラスタシステムを構築することが可能になる。
【0066】
また、本発明の実施の形態に係るプログラムは、コンピュータを、所定情報を受信した際、自己がアクセスを許容するノードを判別するための情報を記憶するアクセス許容ノード情報記憶手段を参照して、前記所定情報を送信した割り込み発行元ノードがアクセスを許容するノードの場合に割り込み命令を自己のCPUに送信することにより、前記CPUに割り込みを発生させる制御手段として機能させるように構成している。したがって、セキュリティの高いクラスタシステムを構築することが可能になる。
尚、所定情報は、割り込み指令を表す情報であることを予めノード間で定めた情報であればよく、所定命令、例えば、ロード命令、ライト命令、リード命令などのメモリアクセス専用の所定命令も使用できる。
【0067】
【発明の効果】
本発明によれば、コンピュータ間の割り込み伝達を低レイテンシに行うことが可能になる。
また、割り込みによるオーバヘッドを低減することが可能になる。
また、セキュリティの向上を図ることが可能になる。
【図面の簡単な説明】
【図1】 本発明の実施の形態に係るクラスタシステムの概略ブロック図である。
【図2】 本発明の実施の形態に係るクラスタシステムの詳細ブロック図である。
【図3】 本発明の実施の形態に使用するレジスタ構成を示す図である。
【図4】 本発明の実施の形態に使用するメモリ空間を示す図である。
【図5】 本発明の実施の形態に係るクラスタシステムのブロック図である。
【図6】 本発明の実施の形態に係るクラスタシステムのブロック図である。
【図7】 本発明の実施の形態に係るクラスタシステムのブロック図である。
【図8】 本発明の他の実施の形態に係るクラスタシステムの処理を示すフローチャートである。
【図9】 本発明の他の実施の形態に係るクラスタシステムに使用するパケットを示す図である。
【図10】 本発明の他の実施の形態に係るクラスタシステムのブロック図である。
【図11】 本発明の実施の形態に使用するレジスタ構成を示す図である。
【図12】 本発明の他の実施の形態に使用するレジスタ構成を示す図である。
【図13】 本発明の他の実施の形態に使用するメモリ空間を示す図である。
【図14】 従来のクラスタシステムを示すブロック図である。
【図15】 従来のクラスタシステムを示すブロック図である。
【符号の説明】
101〜104、201、202、801、802・・・コンピュータ(ノード)
105、203・・・ネットワーク
106、107、109、110・・・CPUモジュール
108、111、803、805・・・ノードコントローラ
112、220、804、806・・・制御手段としての割り込み制御回路
104〜206、212〜214・・・CPU
208、216、803、805・・・ノードコントローラ
209、217・・・メインメモリ
211、219・・・I/Oコントローラ
301・・・割り込み発生レジスタ
302・・・割り込み要因レジスタ
303・・・割り込みマスクレジスタ
304・・・割り込みクリアレジスタ
305・・・割り込み先CPU指定レジスタ
401・・・メモリ空間
402・・・グローバルメモリ空間
403・・・割り込み発生レジスタ空間
404・・・ローカルメモリ空間
Claims (11)
- ネットワークに接続された複数のノードが協調して動作するクラスタシステムにおいて、
割り込み発行先ノード用の記憶手段における割り込み発生レジスタを、自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して所定情報を発行することにより、前記割り込み発生レジスタ宛に前記所定情報を送信する割り込み発行元ノードと、
前記割り込み発生レジスタ宛の前記所定情報を受信して、自ノード内のCPUに対して割り込み命令を送信することにより、前記CPUに割り込みを発生させ、前記割り込み発行元ノードから、前記ネットワークに接続されたノード間接続バスを介してアクセスされる制御手段を有する割り込み発行先ノードとを備え、
前記記憶手段は、前記メモリ空間における割り込み発行領域に関連付けた前記割り込み発生レジスタと、割り込み先CPUを表す情報が設定された割り込み先CPU指定レジスタとを有し、
前記割り込み発行元ノードは、前記割り込み発行領域に前記所定情報を発行することによって前記割り込み発生レジスタ宛に前記所定情報を送信し、前記割り込み発行先ノードの制御手段は、前記割り込み発生レジスタ宛に発行された前記所定情報を受信して、前記割り込み先CPU指定レジスタに設定されたCPUに対して前記割り込み命令を送信することを特徴とするクラスタシステム。 - 前記記憶手段は、更に、自己がアクセスを許容するノードを判別するための情報を設定した割り込みマスクレジスタを有し、
前記割り込み発行先ノードの制御手段は、前記所定情報を受信した際、前記割り込みマスクレジスタの設定情報を参照して、前記割り込み発行元ノードがアクセスを許容するノードの場合に前記割り込み命令を送信することを特徴とする請求項1記載のクラスタシステム。 - 前記記憶手段は、更に、割り込み発行元ノードの情報を格納するための割り込み要因レジスタを有し、
前記割り込み発行先ノードの制御手段は、前記所定情報を受信した際、前記割り込み発行元ノードの情報を前記割り込み要因レジスタに格納し、前記CPUは、前記割り込み要因レジスタに格納された割り込み発行元ノードの情報を参照して割り込み処理を行うことを特徴とする請求項2記載のクラスタシステム。 - 前記割り込み発行領域は他ノードから直接アクセス可能なグローバルメモリ空間に設けられると共に、前記割り込み発行領域には複数の割り込み発行先ノードの前記割り込み発生レジスタが関連付けられ、
前記割り込み発行元ノードは、前記割り込み発行先ノードの前記割り込み発生レジスタに関連付けられた割り込み発行領域に対して前記所定情報を発行することにより、対応する前記割り込み発行先ノードの前記割り込み発生レジスタ宛に前記所定情報を送信することを特徴とする請求項1乃至3のいずれか一に記載のクラスタシステム。 - 前記割り込み発行領域は、自ノードのみが直接アクセス可能なローカルメモリ空間に設けられると共に、割り込み発行先ノードを指定するための割り込み発行先ノード指定領域と、前記所定情報を発行するための割り込み発生領域とによって構成され、
前記割り込み発行元ノードは、前記割り込み発行先ノード指定領域に割り込み発行先ノードを指定した後、前記割り込み発生領域に前記所定信号を発行することによって前記指定した割り込み発行先ノードに前記所定情報を送信することを特徴とする請求項1乃至3のいずれか一に記載のクラスタシステム。 - ネットワークに接続された複数のノードが協調して動作するクラスタシステムにおいて使用するコンピュータにおいて、
割り込み発行先ノード用の、前記複数のノードにおける前記割り込み発行先ノード以外のノードと前記割り込み発行先ノードを接続するノード間接続バスを介してアクセスされる割り込み発生レジスタを自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して割り込みを発行するための所定情報を発行することにより、前記割り込み発行先ノード用の割り込み発生レジスタ宛に前記所定情報を送信して、前記割り込み発行先ノードに割り込みを発行することを特徴とするコンピュータ。 - 前記割り込み発行領域は他ノードから直接アクセス可能なグローバルメモリ空間に設けられると共に、前記割り込み発行領域には複数の割り込み発行先ノードの前記割り込み発生レジスタが関連付けられ、
前記割り込み発行先ノードの前記割り込み発生レジスタに関連付けられた割り込み発行領域に対して前記所定情報を発行することにより、対応する前記割り込み発行先ノードの割り込み発生レジスタ宛に前記所定情報を送信することを特徴とする請求項6記載のコンピュータ。 - 前記割り込み発行領域は、自ノードのみが直接アクセス可能なローカルメモリ空間に設けられると共に、割り込み発行先ノードを指定するための割り込み発行先ノード指定領域と、前記所定情報を発行するための割り込み発生領域とによって構成され、
前記割り込み発行先ノード指定領域に割り込み発行先ノードを指定した後、前記割り込み発生領域に前記所定信号を発行することによって、前記指定した割り込み発行先ノードに前記所定情報を送信することを特徴とする請求項6記載のコンピュータ。 - ネットワークに接続された複数のノードが協調して動作するクラスタシステムにおいて使用するコンピュータを、
割り込み発行先ノード用の、前記複数のノードにおける前記割り込み発行先ノード以外のノードと前記割り込み発行先ノードを接続するノード間接続バスを介してアクセスされる割り込み発生レジスタを自己のメモリ空間における割り込み発行領域に関連付け、前記割り込み発行領域に対して割り込みを発行するための所定情報を発行することにより、前記割り込み発行先ノード用の割り込み発生レジスタ宛に前記所定情報を送信して、前記割り込み発行先ノードに割り込みを発行するように機能させることを特徴とするプログラム。 - 前記コンピュータを、
前記割り込み発行領域を他ノードから直接アクセス可能なグローバルメモリ空間に設けると共に、前記割り込み発行領域には複数の割り込み発行先ノードの前記割り込み発生レジスタが関連付け、前記割り込み発行先ノードの前記割り込み発生レジスタに関連付けた割り込み発行領域に対して前記所定情報を発行することにより、対応する前記割り込み発行先ノードの割り込み発生レジスタ宛に前記所定情報を送信するように機能させることを特徴とする請求項9記載のプログラム。 - 前記コンピュータを、
前記割り込み発行領域を自ノードのみが直接アクセス可能なローカルメモリ空間に設けると共に、割り込み発行先ノードを指定するための割り込み発行先ノード指定領域と前記所定情報を発行するための割り込み発生領域とによって構成し、前記割り込み発行先ノード指定領域に割り込み発行先ノードを指定した後、前記割り込み発生領域に前記所定信号を発行することによって、前記指定した割り込み発行先ノードに前記所定情報を送信するように機能させることを特徴とする請求項9記載のプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001148687A JP3807250B2 (ja) | 2001-05-18 | 2001-05-18 | クラスタシステム、コンピュータ及びプログラム |
EP02010156A EP1276045A3 (en) | 2001-05-18 | 2002-05-13 | Cluster system, computer and program |
US10/145,881 US7058744B2 (en) | 2001-05-18 | 2002-05-16 | Cluster system, computer and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001148687A JP3807250B2 (ja) | 2001-05-18 | 2001-05-18 | クラスタシステム、コンピュータ及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002342299A JP2002342299A (ja) | 2002-11-29 |
JP3807250B2 true JP3807250B2 (ja) | 2006-08-09 |
Family
ID=18993953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001148687A Expired - Fee Related JP3807250B2 (ja) | 2001-05-18 | 2001-05-18 | クラスタシステム、コンピュータ及びプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US7058744B2 (ja) |
EP (1) | EP1276045A3 (ja) |
JP (1) | JP3807250B2 (ja) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782654B2 (en) | 2004-03-13 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Co-allocating a reservation spanning different compute resources types |
EP2341431A1 (en) | 2004-03-13 | 2011-07-06 | Adaptive Computing Enterprises, Inc. | System and method of providing a self-optimizing reservation in space of compute resources |
US9753765B1 (en) * | 2004-03-22 | 2017-09-05 | Altera Corporation | Multi-processor integrated circuits |
US20080294839A1 (en) * | 2004-03-29 | 2008-11-27 | Bell Michael I | System and method for dumping memory in computer systems |
JP2005301436A (ja) * | 2004-04-07 | 2005-10-27 | Hitachi Ltd | クラスタシステムおよびクラスタシステムにおける障害回復方法 |
US20070266388A1 (en) | 2004-06-18 | 2007-11-15 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
US8176490B1 (en) | 2004-08-20 | 2012-05-08 | Adaptive Computing Enterprises, Inc. | System and method of interfacing a workload manager and scheduler with an identity manager |
CA2586763C (en) | 2004-11-08 | 2013-12-17 | Cluster Resources, Inc. | System and method of providing system jobs within a compute environment |
US8863143B2 (en) | 2006-03-16 | 2014-10-14 | Adaptive Computing Enterprises, Inc. | System and method for managing a hybrid compute environment |
EP2362310B1 (en) | 2005-03-16 | 2017-10-04 | III Holdings 12, LLC | Automatic workload transfer to an on-demand center |
US9231886B2 (en) | 2005-03-16 | 2016-01-05 | Adaptive Computing Enterprises, Inc. | Simple integration of an on-demand compute environment |
US9225663B2 (en) | 2005-03-16 | 2015-12-29 | Adaptive Computing Enterprises, Inc. | System and method providing a virtual private cluster |
EP1872249B1 (en) | 2005-04-07 | 2016-12-07 | Adaptive Computing Enterprises, Inc. | On-demand access to compute resources |
WO2007055054A1 (ja) * | 2005-11-08 | 2007-05-18 | Sony Computer Entertainment Inc. | データ通信方法、コンピュータ及び情報記憶媒体 |
JP2007206955A (ja) * | 2006-02-01 | 2007-08-16 | Sony Corp | 情報処理装置および方法、プログラム、並びに記録媒体 |
JP2008225906A (ja) * | 2007-03-13 | 2008-09-25 | Toyota Motor Corp | 情報処理システム及びその情報処理システムを構成するコア識別コントローラ |
US8041773B2 (en) | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
US11720290B2 (en) | 2009-10-30 | 2023-08-08 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US10877695B2 (en) | 2009-10-30 | 2020-12-29 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
JP2015210665A (ja) * | 2014-04-25 | 2015-11-24 | 株式会社野村総合研究所 | データ管理システム |
JP6354387B2 (ja) | 2014-06-30 | 2018-07-11 | 富士通株式会社 | 情報処理装置、情報処理システム及び割込装置制御方法 |
US10049064B2 (en) * | 2015-01-29 | 2018-08-14 | Red Hat Israel, Ltd. | Transmitting inter-processor interrupt messages by privileged virtual machine functions |
CN105403265A (zh) * | 2015-12-16 | 2016-03-16 | 宁波水表股份有限公司 | 一种自动校正零点漂移的超声水表及其校正方法 |
WO2017135950A1 (en) * | 2016-02-04 | 2017-08-10 | Hewlett Packard Enterprise Development Lp | Memory register interrupt based signaling and messaging |
US11809888B2 (en) | 2019-04-29 | 2023-11-07 | Red Hat, Inc. | Virtual machine memory migration facilitated by persistent memory devices |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01154272A (ja) | 1987-12-10 | 1989-06-16 | Matsushita Electric Ind Co Ltd | マルチプロセッサ装置 |
US5123094A (en) * | 1990-01-26 | 1992-06-16 | Apple Computer, Inc. | Interprocessor communications includes second CPU designating memory locations assigned to first CPU and writing their addresses into registers |
JPH0573518A (ja) | 1991-09-18 | 1993-03-26 | Nec Corp | メモリマツプドcpuシステム |
US5485594A (en) * | 1992-07-17 | 1996-01-16 | International Business Machines Corporation | Apparatus and method using an atomic fetch and add for establishing temporary ownership of a common system resource in a multiprocessor data processing system |
JPH07105031A (ja) * | 1993-09-20 | 1995-04-21 | Internatl Business Mach Corp <Ibm> | 多重プロセッサ・コンピュータ・システム内で割込み情報を伝えるための方法および装置 |
JPH07160657A (ja) | 1993-12-08 | 1995-06-23 | Fujitsu Ltd | クラスタ間通信制御装置 |
JP3701988B2 (ja) * | 1994-07-20 | 2005-10-05 | 富士通株式会社 | 並列計算機のプロセッサ要素内に実装される通信制御装置 |
GB9505724D0 (en) * | 1995-03-21 | 1995-05-10 | Newbridge Networks Corp | ATM without traffic shaping |
US5689713A (en) * | 1995-03-31 | 1997-11-18 | Sun Microsystems, Inc. | Method and apparatus for interrupt communication in a packet-switched computer system |
US6295585B1 (en) * | 1995-06-07 | 2001-09-25 | Compaq Computer Corporation | High-performance communication method and apparatus for write-only networks |
US6105071A (en) * | 1997-04-08 | 2000-08-15 | International Business Machines Corporation | Source and destination initiated interrupt system for message arrival notification |
JP3087696B2 (ja) * | 1997-07-25 | 2000-09-11 | 日本電気株式会社 | 分散メモリ型マルチプロセッサ・システム制御方法およびコンピュータ読み取り可能な記録媒体 |
JPH1166022A (ja) * | 1997-08-12 | 1999-03-09 | Hitachi Ltd | クラスタシステム |
US6148361A (en) * | 1998-12-17 | 2000-11-14 | International Business Machines Corporation | Interrupt architecture for a non-uniform memory access (NUMA) data processing system |
JP3482897B2 (ja) | 1999-01-20 | 2004-01-06 | 日本電気株式会社 | クラスタ型並列計算機システムおよびプロセッサ間バリア同期方法 |
US6799317B1 (en) * | 2000-06-27 | 2004-09-28 | International Business Machines Corporation | Interrupt mechanism for shared memory message passing |
-
2001
- 2001-05-18 JP JP2001148687A patent/JP3807250B2/ja not_active Expired - Fee Related
-
2002
- 2002-05-13 EP EP02010156A patent/EP1276045A3/en not_active Withdrawn
- 2002-05-16 US US10/145,881 patent/US7058744B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7058744B2 (en) | 2006-06-06 |
EP1276045A2 (en) | 2003-01-15 |
EP1276045A3 (en) | 2006-02-01 |
US20020174165A1 (en) | 2002-11-21 |
JP2002342299A (ja) | 2002-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3807250B2 (ja) | クラスタシステム、コンピュータ及びプログラム | |
EP1422626B1 (en) | Multi-core communications module, data communications system incorporating a multi-core communications module, and data communications process | |
US5682551A (en) | System for checking the acceptance of I/O request to an interface using software visible instruction which provides a status signal and performs operations in response thereto | |
KR100958685B1 (ko) | Dma 컨트롤러, 노드, 데이터 전송 제어 방법 및 프로그램을 기록한 컴퓨터 판독가능한 기록 매체 | |
US7817626B2 (en) | Storage subsystem | |
US20100070675A1 (en) | Bridge, information processing system, and access control method | |
KR20150067332A (ko) | 코어 간 통신 장치 및 방법 | |
US20060236032A1 (en) | Data storage system having memory controller with embedded CPU | |
JP4100256B2 (ja) | 通信方法および情報処理装置 | |
US5507032A (en) | Multiprocessor I/O request control system forming device drive queue and processor interrupt queue from rows and cells of I/O request table and interrupt request table | |
US5901328A (en) | System for transferring data between main computer multiport memory and external device in parallel system utilizing memory protection scheme and changing memory protection area | |
KR20020009823A (ko) | 버스 시스템 및 그 버스 중재방법 | |
JP4696199B2 (ja) | 転送ディスクリプタ用メモリを備えるusbホストコントローラ | |
JPWO2010097925A1 (ja) | 情報処理装置 | |
JP2001333137A (ja) | 自主動作通信制御装置及び自主動作通信制御方法 | |
JP2591502B2 (ja) | 情報処理システムおよびそのバス調停方式 | |
JP4856413B2 (ja) | 演算処理装置、情報処理装置、及び演算処理装置の制御方法 | |
US7336657B2 (en) | Inter-nodal data transfer system and data transfer apparatus | |
JPH0844662A (ja) | 情報処理装置 | |
EP1990725B1 (en) | Central processing unit, central processing unit control method, and information processing system | |
JP2000155738A (ja) | データ処理装置 | |
JP2005208972A (ja) | コンピュータ装置及びシステム | |
JP2001273191A (ja) | コンピュータシステム | |
JP2922342B2 (ja) | 割込み制御装置 | |
JP2984594B2 (ja) | マルチクラスタ情報処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050419 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050510 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050707 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060117 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060216 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060216 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20060216 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060329 |
|
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: 20060425 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060508 |
|
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: 20100526 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110526 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110526 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120526 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120526 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130526 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140526 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |