JPH10214259A - 並列計算機 - Google Patents

並列計算機

Info

Publication number
JPH10214259A
JPH10214259A JP9029722A JP2972297A JPH10214259A JP H10214259 A JPH10214259 A JP H10214259A JP 9029722 A JP9029722 A JP 9029722A JP 2972297 A JP2972297 A JP 2972297A JP H10214259 A JPH10214259 A JP H10214259A
Authority
JP
Japan
Prior art keywords
write
main memory
request
message
parallel computer
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
JP9029722A
Other languages
English (en)
Other versions
JP3877186B2 (ja
Inventor
Keimei Fujii
啓明 藤井
Yoshiko Yasuda
淑子 保田
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP02972297A priority Critical patent/JP3877186B2/ja
Publication of JPH10214259A publication Critical patent/JPH10214259A/ja
Application granted granted Critical
Publication of JP3877186B2 publication Critical patent/JP3877186B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 分散メモリ方式の並列計算機において、主記
憶内容の共有機構を低コストで実現し、要素プロセッサ
間の連携処理の効率向上等を可能とする。 【解決手段】 要素プロセッサ間で主記憶内容を共有す
るミラーグループを定義し、そのグループidに対応す
るミラーページを各要素プロセッサの主記憶118上に
用意する。また、ストレージコントローラ102に該ミ
ラーページの先頭アドレスとグループidを登録するミ
ラーテーブル105を設け、該テーブル105を参照し
てミラーページへの主記憶書き込み要求をアドレス解析
部104が検出し、該書き込み要求を主記憶118に伝
えるとともに、相互結合網202を介してミラーグルー
プの全要素プロセッサに伝える機構を設ける。該機構に
よって、ミラーグループの各要素プロセッサに同じ主記
憶内容を持つページを存在させ、主記憶内容の共有を擬
似的に実現する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、分散メモリ方式の
並列計算機のメモリ機構に係わり、特に、並列計算機を
構成する各要素プロセッサ間での主記憶内容の共有を実
現するためのメモリ機構に関する。
【0002】
【従来の技術】計算機に対する高速処理性能への要求
は、演算プロセッサを複数台連携して使用する並列計算
機の登場を促した。科学技術計算などのいわゆるスーパ
ーコンピューティング分野への適用を目的とする並列計
算機は、数百から数千台の演算プロセッサを有し、その
演算プロセッサが相互結合網で接続されるという形態を
とる。また、この形態の並列計算機は、各演算プロセッ
サがそれぞれ主記憶を有し、それを管理するという構成
方式(一般に分散メモリ方式と呼ぶ)をとる。分散メモ
リ方式の並列計算機では、各演算プロセッサが他の演算
プロセッサが管理する主記憶上のデータを参照したい場
合に、演算プロセッサ間の相互結合網を介したデータ転
送によってこれを実現する。
【0003】分散メモリ方式の並列計算機は、このデー
タ転送の実現方法の違いによって、分散共有メモリ型と
メッセージパッシング型の2種類に分類される。分散共
有メモリ型の並列計算機では、他演算プロセッサの主記
憶領域を指すアドレスへのロード/ストア命令(機械語
命令)の実行によって自動的にデータ転送が発生する。
この時のデータ転送量は、ロード/ストア命令が対象と
するワード(方式によっては数十ワード)程度である。
一方、メッセージパッシング型の並列計算機では、プロ
グラム上の手続き(関数)により明示的にデータ転送機
構を動作させてデータ転送を実現する。この時のデータ
転送量は、ハードウェア的な限界があるものの、その限
界までの範囲内で任意であり、数キロワード以上といっ
た多量のデータ転送も実現できる。
【0004】上述のとおり、分散共有メモリ型とメッセ
ージパッシング型では、データ転送起動のメカニズムや
転送データ量に相違があるが、さらに演算プロセッサが
キャッシュメモリを有する場合の制御機構が大幅に異な
る。分散共有メモリ型の並列計算機では、バス結合のマ
ルチプロセッサ(シンメトリックマルチプロセッサ:S
MP)と同様に、データ転送にともなって、キャッシュ
メモリと主記憶との内容一致制御(コヒーレンス制御)
をハードウェアによって自動的に行う。例えば、米国S
tanford大学のDashという分散共有メモリ型
の並列計算機では、ディレクトリ方式という方式でコヒ
ーレンス制御を実現している。しかし、このような制御
機構を実現するのは、ハードウェアコストの面からは不
利である。
【0005】
【発明が解決しようとする課題】主記憶内容の共有に関
しては、科学技術計算のような定型的な処理ではそれほ
ど要求がなかった。しかし、並列計算機の適用分野を広
げるという面では、主記憶内容の共有が必要となる応用
も考えられる。また、並列計算機のOSは、基本的に各
要素プロセッサ上で個別に動作し、個々の要素プロセッ
サの資源や状態を管理しており、システム全体の資源や
状態に関する情報が必要な時には、各要素プロセッサ上
のOS間で相互に情報を交換してデータベースを構築
し、その情報を元に資源の割り当てやプロセス(ジョ
ブ)のスケジューリングを行う。例えば、IBMの並列
計算機であるSP2のOSは、ロードレベラーという機
能を提供し、各要素プロセッサの負荷状況を示すデータ
ベースを構築し、その情報に基づいた負荷分散によって
要素プロセッサ毎の負荷の均等化を実現する。このよう
な処理では、各要素プロセッサ上のOS間で多量の通信
が発生するため、処理オーバヘッドが大きい。この問題
に対しても主記憶内容の共有が可能であれば、その共有
領域にデータベースを構築することで上記のOS間通信
による処理オーバヘッドが削減できる。上記の主記憶内
容の共有機構を、先述の米国Stanford大学のD
ashに代表されるような従来の分散共有メモリ機構ほ
どのハードウェアコストをかけずに実現するというのが
本発明が解決しようとする課題である。
【0006】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、相互結合網で接続される複数の要素プロ
セッサを有し、該各要素プロセッサが個別に主記憶を所
有し、これを管理する分散メモリ方式をとる並列計算機
において、該要素プロセッサの記憶制御装置が、特定の
アドレス領域への主記憶書き込み要求を検出する機構を
持ち、該要素プロセッサの該記憶制御装置が、該特定ア
ドレス領域への主記憶書き込み要求を検出した際に、該
書き込み要求を主記憶に送出すると同時に、相互結合網
へのインタフェース装置を介して、該書き込み要求を該
要素プロセッサから相互結合網に送出する機構を備える
ようにしている。さらに、前記要素プロセッサの記憶制
御装置が、前記特定アドレス領域への主記憶書き込み要
求を検出するための該特定アドレス領域の先頭アドレス
値を登録した参照表を備えるようにしている。さらに、
前記参照表は複数のエントリからなり、各エントリは、
エントリの有効/無効を示すフィールドと、前記特定ア
ドレス領域の先頭アドレス値を示すフィールドと、該特
定アドレス領域に対応する識別名を示すフィールドを有
し、該識別名は、システム全体で一元的に管理され、同
じ識別名を有する特定アドレス領域を所有する該要素プ
ロセッサは、同グループとして定義され、該グループの
同じ識別名を有する特定アドレス領域は、該各要素プロ
セッサの主記憶上での存在するアドレスが異なっていて
も、該識別名によって一意に認識され、該要素プロセッ
サの記憶制御装置が前記特定アドレス領域への主記憶書
き込み要求を検出し、前記相互結合網へのインタフェー
ス装置を介して該書き込み要求を要素プロセッサ外に伝
える機構によって、該グループの同じ該識別名を有する
全該特定アドレス領域が同じ内容を維持するように制御
されるようにしている。
【0007】また、前記要素プロセッサの記憶制御装置
が前記特定アドレス領域への主記憶書き込み要求を検出
し、前記相互結合網へのインタフェース装置を介して該
書き込み要求を要素プロセッサから相互結合網に送出す
る際に、該相互結合網に接続される全該要素プロセッサ
を対象として放送メッセージ機能を使用するようにして
いる。さらに、前記放送メッセージ機能を使用する際
に、通常の放送メッセージ機能と区別するために、該放
送メッセージのメッセージ形式の中に特殊モードビット
フィールドを設け、前記要素プロセッサの記憶制御装置
が前記特定アドレス領域への主記憶書き込み要求を検出
し、前記相互結合網へのインタフェース装置を介して該
書き込み要求を該要素プロセッサから該相互結合網へ送
出する際には、該メッセージの該特殊モードビットフィ
ールドを有効化し、該メッセージに主記憶への書き込み
バイト位置を示す情報、書き込み先領域での相対アドレ
ス、前記識別名、書き込みデータ、および、書き込みデ
ータ長を登録するようにしている。さらに、前記相互結
合網へのインタフェース装置は、複数のエントリからな
り、各エントリはエントリの有効/無効を示すフィール
ドと、前記特定アドレス領域の先頭アドレス値を示すフ
ィールドと、該特定アドレス領域に対応する識別名を示
すフィールドを持つ参照表を有し、前記特殊モードの放
送メッセージを受信した際に、該メッセージ中の識別名
情報を取り出し、該参照表から該識別名が一致するエン
トリを探索し、一致するエントリが存在しなければ、該
メッセージを破棄し、一致するエントリが存在すれば、
該エントリから該特定アドレス領域の先頭アドレス値を
読み取り、該メッセージ中の該書き込み先領域での相対
アドレス情報と組み合わせて書き込みアドレスを作成
し、その他、該メッセージ中の書き込みデータ、書き込
みデータ長、書き込みバイト位置を示す情報を組み合わ
せて主記憶アクセス要求を作成し、これを前記記憶制御
装置に送出する機構を有するようにしている。さらに、
前記相互結合網へのインタフェース装置は、前記特殊モ
ードの放送メッセージを受信した際に、該メッセージか
ら主記憶への書き込みバイト位置を示す情報、前記書き
込み先領域での相対アドレス、前記識別名、書き込みデ
ータ、および、書き込みデータ長といった情報を取り出
し、これらを外部からの該特定アドレス領域への書き込
み要求として前記記憶制御装置に送出する機構を有し、
前記記憶制御装置は、該外部からの特定アドレス領域へ
の書き込み要求を前記相互結合網へのインタフェース装
置から受け取ると、該要求中の識別名情報を取り出し、
該記憶制御装置が有する参照表から該識別名が一致する
エントリを探索し、一致するエントリが存在しなけれ
ば、該要求を破棄し、一致するエントリが存在すれば、
該エントリから該特定アドレス領域の先頭アドレス値を
読み取り、該要求中の書き込み先領域での相対アドレス
情報と組み合わせて書き込みアドレスを作成し、その
他、該要求中の書き込みデータ、書き込みデータ長、書
き込みバイト位置を示す情報を組み合わせて主記憶アク
セス要求を作成し、これを該主記憶に送出する機構を有
するようにしている。
【0008】また、前記要素プロセッサの記憶制御装置
が前記特定アドレス領域への主記憶書き込み要求を検出
し、前記相互結合網へのインタフェース装置を介して該
書き込み要求を要素プロセッサから該相互結合網へ送出
する際に、特定のグループとして定義された複数の要素
プロセッサの総てを対象とした放送メッセージの転送を
行うグループ内放送メッセージ機能を使用するようにし
ている。さらに、該グループ内放送メッセージ機能を使
用する際に、通常のグループ内放送メッセージ機能と区
別するために、該グループ内放送メッセージのメッセー
ジ形式の中に特殊モードビットフィールドを設け、該要
素プロセッサの該記憶制御装置が前記特定アドレス領域
への主記憶書き込み要求を検出し、前記相互結合網への
インタフェース装置を介して該書き込み要求を該要素プ
ロセッサから該相互結合網へ送出する際には、該メッセ
ージの該特殊モードビットフィールドを有効化し、該メ
ッセージに主記憶への書き込みバイト位置を示す情報、
書き込み先領域での相対アドレス、前記識別名、書き込
みデータ、および、書き込みデータ長を登録するように
している。さらに、前記相互結合網へのインタフェース
装置は、複数のエントリからなり、各エントリはエント
リの有効/無効を示すフィールドと、前記特定アドレス
領域の先頭アドレス値を示すフィールドと、該特定アド
レス領域に対応する識別名を示すフィールドを持つ参照
表を有し、前記特殊モードのグループ内放送メッセージ
を受信した際に、該メッセージ中の識別名情報を取り出
し、該参照表から該識別名が一致するエントリを探索
し、一致するエントリが存在しなければ、該メッセージ
を破棄し、一致するエントリが存在すれば、該エントリ
から該特定アドレス領域の先頭アドレス値を読み取り、
該メッセージ中の該書き込み先領域での相対アドレス情
報と組み合わせて書き込みアドレスを作成し、その他、
該メッセージ中の書き込みデータ、書き込みデータ長、
書き込みバイト位置を示す情報を組み合わせて主記憶ア
クセス要求を作成し、これを前記記憶制御装置に送出す
る機構を有するようにしている。さらに、前記相互結合
網へのインタフェース装置は、前記特殊モードの放送メ
ッセージを受信した際に、該メッセージから主記憶への
書き込みバイト位置を示す情報、前記書き込み先領域で
の相対アドレス、前記識別名、書き込みデータ、およ
び、書き込みデータ長といった情報を取り出し、これら
を外部からの該特定アドレス領域への書き込み要求とし
て前記記憶制御装置に送出する機構を有し、前記記憶制
御装置は、該外部からの特定アドレス領域への書き込み
要求を前記相互結合網へのインタフェース装置から受け
取ると、該要求中の識別名情報を取り出し、該記憶制御
装置が有する参照表から該識別名が一致するエントリを
探索し、一致するエントリが存在しなければ、該要求を
破棄し、一致するエントリが存在すれば、該エントリか
ら該特定アドレス領域の先頭アドレス値を読み取り、該
要求中の書き込み先領域での相対アドレス情報と組み合
わせて書き込みアドレスを作成し、その他、該要求中の
書き込みデータ、書き込みデータ長、書き込みバイト位
置を示す情報を組み合わせて主記憶アクセス要求を作成
し、これを該主記憶に送出する機構を有するようにして
いる。
【0009】また、それぞれが主記憶を有する複数のプ
ロセッサと、該複数のプロセッサを相互接続する相互結
合網とを有する並列計算機において、該プロセッサの記
憶装置は、特定領域への主記憶書き込み要求を検出する
機構と、該特定領域への主記憶書き込み要求を検出した
際に、該書き込み要求を主記憶および該相互結合網へ送
出する機構と、該書き込み要求を該相互結合網から伝え
られた際に、該伝えられた書き込み要求に従って、該書
き込み要求を伝えられたプロセッサの主記憶の特定領域
を、該書き込み要求を送信したプロセッサの主記憶の特
定領域と同じ内容にする機構とを有するようにしてい
る。さらに、前記並列計算機は、前記特定領域と対応す
る識別子を有し、前記記憶制御装置は、該識別子を参照
して、前記書き込み要求の送信側の主記憶の特定領域の
内容と該書き込み要求の受信側の主記憶の特定領域の内
容を同じにし、前記各プロセッサの主記憶上での該特定
領域は任意の主記憶のアドレスであるようにしている。
【0010】
【発明の実施の形態】
(実施の形態1)本発明の実施の形態を図を用いながら
説明する。図2は、並列計算機の概略構成を示してい
る。並列計算機は、数十から数百、数千といった台数の
要素プロセッサ201で構成され、要素プロセッサ20
1各々は、相互結合網202に接続し、その相互結合網
202を介して他の要素プロセッサ201とデータの授
受を行う。相互結合網202の構成方法は様々である
が、本発明ではこの相互結合網202の構成方法を特に
限定しない。また、本発明が対象とする並列計算機は、
先述のメッセージパッシング型を基本とする。
【0011】要素プロセッサ201の構成方法もまた多
種多様になるが、その一例を図3で概略的に示す。要素
プロセッサ201の主な構成要素は、命令プロセッサ1
01、命令プロセッサ101に付随するキャッシュメモ
リ(単にキャッシュと呼ぶ場合もある)302、命令プ
ロセッサ101や後述のネットワークインタフェース1
08およびI/Oインタフェース303から発行される
データアクセス要求にしたがって適当な記憶デバイスに
アクセスを行うストレージコントローラ102、ストレ
ージコントローラ102で制御される主記憶118、相
互結合網202に接続しデータ転送を制御するネットワ
ークインタフェース108、および、ストレージコント
ローラ102からの要求によってI/O装置にアクセス
を行うI/Oインタフェース303などである。なお、
I/Oインタフェース303は構成によっては存在しな
いケースも考えられる。
【0012】要素プロセッサ201中、命令プロセッサ
101は、プログラム処理を行うユニットであり、ネッ
トワークインタフェース108は、命令プロセッサ10
1からの指令にしたがって、メッセージパッシング型の
並列計算機の特徴であるデータ転送(メッセージパッシ
ング)を命令プロセッサ101のプログラム処理とは独
立に行うユニットである。命令プロセッサ101とネッ
トワークインタフェース108が独立に動作するため、
ストレージコントローラ102は、命令プロセッサ10
1からの主記憶118のアクセスを処理すると同時に、
ネットワークインタフェース108からのデータ転送に
ともなう主記憶118へのアクセスも処理する。本発明
は、上記ストレージコントローラ102およびネットワ
ークインタフェース108内に実現する機構に係わる。
本実施の形態では、ストレージコントローラ102およ
びネットワークインタフェース108内で実現する主記
憶内容の共有機構について図1に基づき説明する。な
お、以降の記述において、I/Oインタフェース303
がらみの動作は特に主題とする内容とは関係が無いため
省略する。また、図1についてもI/Oインタフェース
303がらみの処理要素については記述を省略した。
【0013】本発明に係わるストレージコントローラ1
02の主要構成要素は、命令プロセッサインタフェース
103、アドレス解析部104、ミラーテーブル10
5、主記憶アクセスインタフェース106、および、デ
ータ転送インタフェース107である。命令プロセッサ
インタフェース103は、命令プロセッサ101からの
主記憶アクセスやネットワークインタフェース108へ
のコマンド発行(通常、ネットワークインタフェース1
08内の制御レジスタへのアクセスという形で実現す
る。制御レジスタとして、複数本のレジスタが設けられ
ており、該レジスタをアクセスすることにより、データ
転送を起動するとか、ステータスを確認するなどの処理
が行われる。)というトランザクションをL101より
受け取り、トランザクションへの返答(例えば主記憶読
み出し結果など)や、ストレージコントローラ102や
ネットワークインタフェース108で検出した割り込み
要因、および、データ転送に係わるキャッシュ制御コマ
ンドなどをL102を介して命令プロセッサ101に伝
える。
【0014】アドレス解析部104は、命令プロセッサ
インタフェース103から伝えられた主記憶アクセス要
求や、ネットワークインタフェース108へのコマンド
(形式は主記憶アクセスと同様)を受け取り、そのアク
セス先アドレスを解析して、主記憶アクセスはL104
を介して主記憶アクセスインタフェース106へ伝え、
ネットワークインタフェース108へのコマンドはL1
07を介してデータ転送インタフェース107へ伝え
る。また、アドレス解析部104は、本発明の主記憶内
容の共有機構(以降、ミラーページ機構と呼ぶ)を実現
するための機能を持つ。ミラーテーブル105は、アド
レス解析部104がミラーページ機構サポート機能を実
現する際に参照されるテーブルである。
【0015】主記憶アクセスインタフェース106は、
アドレス解析部104からの主記憶アクセスをL104
を介して受理し、これをL105を介して主記憶118
に伝える。アクセスタイプが主記憶読み出しであった時
には、読み出し結果がL106を介して主記憶118か
ら伝えられる。主記憶アクセスインタフェース106
は、この読み出し結果を受け取り、L108を介して命
令プロセッサインタフェース103に読み出し結果を伝
える。この読み出し結果は、L102を介して命令プロ
セッサ101に伝わる。
【0016】さらに、主記憶インタフェース106は、
データ転送に係わる主記憶アクセスも処理する。データ
転送に係わる主記憶アクセスは、データ転送インタフェ
ース107からL110を介して伝えられる。主記憶ア
クセスインタフェース106は、アドレス解析部104
から主記憶アクセス要求が伝えられた時と同様に主記憶
アクセスを主記憶118に対して発行し、読み出しアク
セスに対しては、読み出し結果をL111を介してデー
タ転送インタフェース107に返送する。
【0017】データ転送インタフェース107は、アド
レス解析部104からL107を介して伝えられるネッ
トワークインタフェース108へのコマンドを受け取
り、これをL112を介してネットワークインタフェー
ス108に伝える。ネットワークインタフェース108
からは、L113を介して前記コマンドに対する返答
や、データ転送に係わる主記憶アクセス要求が伝わる。
データ転送インタフェース107は、前記コマンドに対
する返答については、L109を介して命令プロセッサ
インタフェース103に伝え(さらにこれがL102を
介して命令プロセッサ101に伝えられる)、主記憶ア
クセス要求については、L110を介して主記憶アクセ
スインタフェース106に伝える。主記憶読み出し結果
は、L111を介してデータ転送インタフェース107
に伝わるので、データ転送インタフェース107は、こ
れをL112を介してネットワークインタフェース10
8に伝える。また、データ転送インタフェース107
は、ネットワークインタフェース108内で発生した割
り込み伝達要求を受ける場合もある。この場合、その割
り込み伝達要求は、L109を介して命令プロセッサイ
ンタフェース103に伝わり、そこから命令プロセッサ
101に伝えられる。
【0018】ストレージコントローラ102の中で、ミ
ラーページ機構を実現する主な要素は、アドレス解析部
104、ミラーテーブル105、およびデータ転送イン
タフェース107である。これらの連携動作を説明する
前に、本発明による主記憶内容の共有方式を説明する。
本発明では、共有主記憶(分散共有メモリ)を提供する
ことで主記憶内容の共有を実現するというアプローチは
採らない。本発明では、同じ記憶内容を持つ主記憶ペー
ジ(本ページをミラーページと呼ぶ)を主記憶内容の共
有を行いたい全プロセッサ(この全プロセッサをミラー
グループとして定義し、それぞれのグループをidで識
別する)に用意する。個々のプロセッサ内での当該ミラ
ーページに対する書き込みは、自らの主記憶に対して反
映されると同時に、相互結合網202を介して前記ミラ
ーグループ内の全プロセッサに対してブロードキャスト
され、ミラーグループ内全プロセッサにおける各ミラー
ページに同じ書き込みとして反映される。これによっ
て、ミラーグループ内全プロセッサにおけるミラーペー
ジとして定義された主記憶領域が常に同じ内容をとるよ
うになり、結果として記憶内容を共有しているのと同じ
効果が得られる。各ミラーページのページ先頭物理アド
レスは、各要素プロセッサ毎に異なっていてもよい。ミ
ラーページの特定は、上記グループidによって行われ
る。
【0019】ストレージコントローラ102内の上記ミ
ラーページ機構を実現するためのアドレス解析部10
4、ミラーテーブル105、およびデータ転送インタフ
ェース107の連携動作を以下に示す。まず、ミラーテ
ーブル105の構造を説明する。ミラーテーブル105
は、例えば図4に示す構造をとる。本テーブルの主要フ
ィールドは、有効ビットフィールド401、アドレスフ
ィールド402、および、idフィールド403であ
る。有効ビットフィールド401は、当該テーブルエン
トリが有効な情報を持つことを示す。アドレスフィール
ド402は、ミラーページとして定義した主記憶ページ
の先頭アドレスを示す。idフィールド403は、同列
のアドレスフィールド402が示すページが属するミラ
ーグループのグループidを示す。
【0020】アドレス解析部104は、命令プロセッサ
インタフェース103から主記憶書き込み要求を受け取
ると、そのアクセス先アドレスに関して、ミラーテーブ
ル105の有効エントリ(有効ビットフィールド401
が「有効」を示しているエントリ)のアドレスフィール
ド402を検査し、ミラーページ領域に対するアクセス
でないかどうかを調べる。その検査結果に係わらず、主
記憶書き込み要求は、主記憶アクセスインタフェース1
06に対して発行される。
【0021】一方、検査の結果、当該主記憶書き込み要
求がミラーページ領域に対するアクセスであった場合、
アドレス解析部104は、アドレス領域が一致したミラ
ーテーブル105のエントリのidフィールド403の
内容を取り出し、当該書き込み要求とそのid情報を組
とし、これをミラー要求としてデータ転送インタフェー
ス107に伝える。ミラー要求を受け取ったデータ転送
インタフェース107は、これをミラー要求コマンドと
してネットワークインタフェース108に伝える。この
時、伝えられる内容は、ミラー要求コマンド、書き込み
データ、書き込みデータ長および書き込みバイトマーク
(例えば、単位書き込み長が8バイトであった場合に、
8バイトのどのバイト位置に書き込みを反映させるかを
示す情報)、主記憶書き込み要求の指定アドレスのうち
のページ内アドレス(ページの先頭からの相対アドレ
ス)、および、id情報(ミラーグループid)であ
る。書き込み先ページの先頭アドレスは、各要素プロセ
ッサ毎にid情報に基づいて決定されるため、伝達する
必要がない。
【0022】次に、本発明に係わるネットワークインタ
フェース108の構成を説明する。本発明に係わるネッ
トワークインタフェース108の主要な構成要素は、コ
マンド受信部109、コマンド送出部110、ミラー要
求作成部111、メッセージ送信・コマンド処理部11
2、メッセージ受信部113、ミラー処理部114、ミ
ラーテーブル115、パケット送信部116、および、
パケット受信部117である。コマンド受信部109
は、ストレージコントローラ102からL112を介し
て、ネットワークインタフェース108内の制御レジス
タへのアクセス、ミラー要求コマンド、および、ネット
ワークインタフェース108から要求した主記憶読み出
し結果などを受け取る。主記憶読み出し結果は、L11
5を介してメッセージ送信・コマンド処理部112に伝
えられ、ネットワークインタフェース108の動作制御
用データとしてネットワークインタフェース108内の
制御レジスタにセットされたり、メッセージ送信のため
のパケット作成データあるいは転送データそのものとし
て使用される。ネットワークインタフェース108内の
制御レジスタへのアクセスは、L115を介してメッセ
ージ送信・コマンド処理部112に伝えられる。そのア
クセスが読み出しであった場合には、読み出し結果をL
116を介してコマンド送出部110に伝える(この読
み出し結果は、L113を介してストレージコントロー
ラ102に伝わり、さらに、命令プロセッサ101に伝
えられる)。
【0023】アクセスが書き込みであった場合には、そ
の書き込みはメッセージ送信・コマンド処理部112で
処理される。メッセージ送信を起動するための書き込み
コマンドも存在する。そのようなコマンドを受け取った
メッセージ送信・コマンド処理部112は、メッセージ
送信処理を開始する。また、ミラー要求コマンドは、L
114を介してミラー要求作成部111に伝わる。メッ
セージ送信・コマンド処理部112は、コマンド受信部
109から要求のあるネットワークインタフェース10
8内の制御レジスタへのアクセスと、メッセージ送信処
理を行う。制御レジスタ読み出しアクセスを受けた場
合、メッセージ送信・コマンド処理部112は、読み出
し結果をL116を介してコマンド送出部110に伝え
る。レジスタ書き込みアクセスを受けた場合、メッセー
ジ送信・コマンド処理部112は、その書き込みを実行
する。また、メッセージ送信・コマンド処理部112
は、メッセージ送信処理を行う。
【0024】メッセージ送信処理は、上記レジスタ書き
込みアクセスがメッセージ送信起動用の制御レジスタを
対象にした際に始まる。メッセージ送信処理では、メッ
セージのヘッダを作成するための情報および転送データ
そのものを得るために主記憶アクセス要求が発生する。
この主記憶アクセス要求はL116を介してコマンド送
出部110に伝わる。主記憶読み出し結果は、コマンド
受信部109を介してストレージコントローラ102か
ら受け取る。メッセージ送信・コマンド処理部112
は、主記憶読み出し結果から作成したメッセージのヘッ
ダや転送データをL120を介してパケット送信部11
6に伝える。
【0025】ミラー要求作成部111は、ミラー要求コ
マンドを受け取ると、コマンドのパラメータとして引き
渡される書き込みデータ、書き込みデータ長、書き込み
バイトマーク、書き込み先ページ内相対アドレス、およ
び、id情報(ミラーグループid)を元にして、ミラ
ー用ブロードキャストメッセージを作成する。このミラ
ー用ブロードキャストメッセージは、分散メモリ型並列
計算機に一般的に提供されるブロードキャストメッセー
ジと基本的には同形であり、その1タイプとして実装す
る。具体的には、メッセージヘッダ中に、「ミラー用」
を示す情報フィールドを追加し、ミラー用ブロードキャ
ストメッセージの場合には、この「ミラー用」フィール
ドを有効化する。そして、通常のブロードキャストメッ
セージでは書き込み先アドレスが指定されているフィー
ルドに、書き込みバイトマーク、書き込み先ページ内相
対アドレスやミラーグループidといったミラー用ブロ
ードキャストメッセージ固有の情報を指定する。書き込
みデータ、および、書き込みデータ長は本来のブロード
キャストメッセージと同様に指定する。作成したミラー
用ブロードキャストメッセージは、L119を介してパ
ケット送信部116に伝える。
【0026】ここで、上記ブロードキャスト機能につい
て、さらに説明を加える。本実施例において想定してい
るブロードキャスト機能は、並列計算機を構成する全要
素プロセッサを対象とするものである。これに対して、
あらかじめグループ化した要素プロセッサ群のみを対象
としてブロードキャストを実行する部分ブロードキャス
ト(あるいはグループ内ブロードキャスト)というハー
ドウェア機能を持つ並列計算機も存在する。例えば、日
立のSR2201という並列計算機は、分割運転機能の
一機能としてこの機能をサポートしている。本実施例に
関しては、上記ミラーグループと、グループ内ブロード
キャストのグループを一致させれば、ミラーページ機能
が効率良く実装できる。全要素プロセッサを対象とする
ブロードキャスト機能を利用した場合の非効率な点は、
ミラーグループ以外の要素プロセッサにもミラー用ブロ
ードキャストメッセージが届いてしまい、これをその要
素プロセッサが破棄する(詳細は後述するが、ネットワ
ークインタフェース108内のミラーテーブル115を
用いて、idを照合することで実現する)必要がある点
である。グループ内ブロードキャスト機能を利用すれ
ば、このような非効率な動作をする要素プロセッサを減
らす(場合によっては無くす)ことができる。グループ
内ブロードキャスト機能を利用する場合のミラー用ブロ
ードキャストメッセージの実装方法も、上記ブロードキ
ャスト機能を利用する場合と同様である(グループ内ブ
ロードキャストメッセージのフォーマットを上記と同様
に変更する)。
【0027】次に、パケット送信部116について説明
する。パケット送信部116は、メッセージ送信・コマ
ンド処理部112およびミラー要求作成部111からの
メッセージ送信要求を受けて、伝えられたメッセージを
L123を介して相互結合網202に送出する。送出さ
れたメッセージは、相互結合網202を介し、メッセー
ジのヘッダ情報に基づいて宛先に転送される。メッセー
ジ送信・コマンド処理部112およびミラー要求作成部
111からの要求は、それぞれの起動要求(コマンド)
がネットワークインタフェース108に届いた順序にシ
リアライズされて処理される。
【0028】パケット受信部117は、L124を介し
て相互結合網202からメッセージを受け取る。パケッ
ト受信部117は、受け取ったメッセージのヘッダを解
析し、そのメッセージの種類に応じてメッセージ受信部
113またはミラー処理部114にメッセージを引き渡
す。メッセージの種類が通常のメッセージ(上記メッセ
ージ送信・コマンド処理部112によって作成されたメ
ッセージ)であれば、そのメッセージはL121を介し
てメッセージ受信部113に伝わる。一方、メッセージ
の種類がミラー用ブロードキャストメッセージであれ
ば、そのメッセージはL122を介してミラー処理部1
14に伝わる。
【0029】メッセージ受信部113は、受信したメッ
セージの主記憶118への書き込み要求を発行する。本
処理部は、先述の日立SR2201などのメッセージパ
ッシング型の分散メモリ方式並列計算機で一般に採用さ
れている公知の技術によって実現可能であるため、本実
施例では詳細な構成および動作説明を省略する。メッセ
ージ受信部113は、発行した主記憶書き込み要求をL
117を介してコマンド送出部110に伝える。
【0030】ミラー処理部114は、その処理において
ミラーテーブル115を参照する。ミラーテーブル11
5は、先に説明したストレージコントローラ102内の
ミラーテーブル105と同じ構造であり、同じ要素プロ
セッサ201内のストレージコントローラ102内ミラ
ーテーブル105とネットワークインタフェース108
内ミラーテーブル115は同じ内容となる。ミラー処理
部114は、ミラー用ブロードキャストメッセージを受
け取ると、メッセージヘッダからミラーグループid情
報を取り出し、このid情報とミラーテーブル115の
有効な(有効ビットフィールド401が「有効」を示し
ている)エントリのidフィールド403の値を照合す
る。idが一致するエントリが存在しなかった場合、そ
のミラー用ブロードキャストメッセージは当該要素プロ
セッサ201を対象としたものでないと判断し、破棄す
る。idが一致するエントリが存在した場合、ミラー処
理部114は、そのエントリのアドレスフィールド40
2からミラーページの先頭アドレスを取り出し、ミラー
用ブロードキャストメッセージ中の書き込み先ページ内
相対アドレスと組み合わせて主記憶書き込み要求のター
ゲットアドレスを決定し、その他、ミラー用ブロードキ
ャストメッセージ中の書き込みデータ、書き込みデータ
長、書き込みバイトマークの各情報と組み合わせてスト
レージコントローラ102への主記憶書き込み要求を生
成し、これをL118を介してコマンド送出部110に
伝える。この主記憶書き込み要求は、メッセージ受信部
113で発行される要求と同形式である。
【0031】コマンド送出部110は、L116を介し
て伝わるネットワークインタフェース108内の制御レ
ジスタ読み出し結果、ネットワークインタフェース10
8の動作制御に係わる情報の主記憶118からの読み出
し要求、および、メッセージ送信処理に伴う主記憶11
8の読み出し要求、L117およびL118を介して伝
わる主記憶118への書き込み要求、さらには、ネット
ワークインタフェース108内で発生した割り込み要求
をL113を介してストレージコントローラ102に伝
える(ストレージコントローラ102に要求が伝わって
からの処理は既に説明したとおりである)。以上が本発
明に係わる構成要素についての説明である。
【0032】続いて、本発明のミラーページ機構に関す
る基本的な動作のフローを説明する。まず、本機構を使
用するにあたってのソフトウェア的な準備手続きについ
て説明する。第一に、主記憶内容を共有したい要素プロ
セッサ201間で、ミラーグループを定義する。ミラー
グループは、ミラーグループidによって認識される
が、このミラーグループidの割り当ては、並列計算機
全体でOS(特定のサーバ)が一元的に管理する。ミラ
ーグループを形成すべくミラーグループidを取得した
各要素プロセッサ201のOSは、それぞれミラーペー
ジとして使用させる主記憶118上のページを用意し、
これを初期化する。そしてそのページの先頭アドレスを
ミラーグループidとともにミラーテーブル105およ
び115の空きエントリに登録する。このミラーテーブ
ル105および115への登録にあたっては、ページの
先頭アドレスをアドレスフィールド402に、ミラーグ
ループidをidフィールド403にそれぞれ登録し、
当該エントリの有効ビットフィールド401を「有効」
を示す内容にセットする。以上でミラーページが定義で
きたことになる。各要素プロセッサ201上の同じミラ
ーグループで定義されるミラーページの主記憶118上
の先頭アドレスは、各要素プロセッサ201毎に異なっ
ていても構わない。これらは、ミラーグループidによ
って同じミラーページとして認識される。
【0033】次に、ハードウェアの動作を説明する。本
機構が動作を開始するトリガとなるのが、要素プロセッ
サ201におけるミラーページを対象とした主記憶書き
込み要求の発生である。この主記憶書き込み要求は、命
令プロセッサ101からL101を介して、ストレージ
コントローラ102内の命令プロセッサインタフェース
103に伝わり、そこからL103を介してアドレス解
析部104に到達する。アドレス解析部104は、受け
取った主記憶書き込み要求をL104を介して主記憶ア
クセスインタフェース106に伝える(その後、本要求
はL105を介して主記憶118に伝えられ、書き込み
が反映される)と同時に、受け取った主記憶書き込み要
求のターゲットアドレスに関して、ミラーテーブル10
5を検査する。検査の結果、主記憶書き込み要求のター
ゲットアドレスと一致する(ページ境界アドレスで比較
する)値のアドレスフィールド402を持つエントリが
存在すれば(このエントリの有効ビットフィールド40
1は、「有効」を示す)、そのエントリのidフィール
ド403の値(ミラーグループid)を取り出す。さら
に、主記憶書き込み要求のターゲットアドレスを元にペ
ージ境界アドレスからの相対アドレスを求め、このミラ
ーグループid、相対アドレス、さらに、主記憶書き込
み要求の書き込みデータ、書き込みデータ長、書き込み
バイトマークを組としてミラー要求コマンドを生成す
る。
【0034】ミラー要求コマンドは、L107を介して
データ転送インタフェース107に伝えられ、さらにL
112を介してネットワークインタフェース108内の
コマンド受信部109に伝えられる。コマンド受信部1
09では、コマンドタイプがミラー要求コマンドである
ことを認識すると、L114を介してミラー要求作成部
111にそのコマンドを伝達する。ミラー要求作成部1
11では、ミラー要求コマンドを受け取ると、そのコマ
ンドのパラメータであるミラーグループid、相対アド
レス、主記憶書き込み要求の書き込みデータ、書き込み
データ長、および書き込みバイトマークを用いてミラー
用ブロードキャストメッセージを生成し、これをL11
9を介してパケット送信部116に伝える。パケット送
信部116は、L123を介してミラー用ブロードキャ
ストメッセージを相互結合網202に送出する。相互結
合網202は、ブロードキャスト機能(あるいはグルー
プ内ブロードキャスト機能)を使用して、全要素プロセ
ッサ201(グループ内ブロードキャスト機能を用いた
場合にはグループ内全要素プロセッサ201)に対して
ミラー用ブロードキャストメッセージを配布する。
【0035】各要素プロセッサ201は、L124を介
してネットワークインタフェース108内のパケット受
信部117で上記ミラー用ブロードキャストメッセージ
を受け取り、パケット受信部117は、これをミラー処
理部114に伝える。ミラー処理部114は、ミラー用
ブロードキャストメッセージを受け取ると、メッセージ
ヘッダからミラーグループid情報を取り出し、このi
d情報とミラーテーブル115の有効な(有効ビットフ
ィールド401が「有効」を示している)エントリのi
dフィールド403の値を照合する。idが一致するエ
ントリが存在しなかった場合、そのミラー用ブロードキ
ャストメッセージは当該要素プロセッサ201を対象と
したものでないと判断し、破棄する。idが一致するエ
ントリが存在した場合、ミラー処理部114は、そのエ
ントリのアドレスフィールド402からミラーページの
先頭アドレスを取り出し、ミラー用ブロードキャストメ
ッセージ中の書き込み先ページ内相対アドレスと組み合
わせて主記憶書き込み要求のターゲットアドレスを決定
し、その他、ミラー用ブロードキャストメッセージ中の
書き込みデータ、書き込みデータ長、書き込みバイトマ
ークの各情報と組み合わせてストレージコントローラ1
02へのミラーページ処理に係わる主記憶書き込み要求
を生成し、これをL118を介してコマンド送出部11
0に伝える。コマンド送出部110は、L118を介し
て伝わる主記憶118への書き込み要求をL113を介
してストレージコントローラ102内のデータ転送イン
タフェース107に伝える。
【0036】データ転送インタフェース107は、受理
したミラーページ処理に係わる主記憶書き込み要求をL
110を介して主記憶アクセスインタフェース106に
伝える。その後、この要求は、L105を介して主記憶
118に伝わり、主記憶118のミラーページに対して
書き込みが反映される。以上の一連の動作によって、ミ
ラーグループで定義したミラーページに対するミラーグ
ループ内の任意の要素プロセッサ201での主記憶11
8への書き込み処理が、その書き込み処理が発生した要
素プロセッサ201の主記憶118だけでなく、ミラー
グループ内全要素プロセッサ201の主記憶118のミ
ラーページに対して反映され、これによって、論理的な
主記憶内容の共有が実現できる。
【0037】説明の都合上、最後の記述となったが、本
発明では、命令プロセッサ101に付随するキャッシュ
メモリ302の制御に関して2つの想定をしている。1
つ目の想定は、命令プロセッサ101内でのキャッシュ
メモリ302への書き込みを同時に主記憶118にも反
映させるストアスルー方式をとる点である。これまでに
説明したとおり、本発明のミラーページ機構は、ミラー
ページを対象とした主記憶書き込み要求がストレージコ
ントローラ102に伝わってはじめて動作を開始する。
したがって、主記憶118への書き込みがキャッシュメ
モリ302のみに反映され、キャッシュメモリ302か
らそのアドレス領域が追い出されるまでその書き込み内
容が主記憶118に反映されないストアイン方式では、
ミラーページアクセスに関する処理効率および使い勝手
が低下する。ストアイン方式を採る場合、主記憶118
のミラーページへの書き込みが発生する度(あるいは一
定のタイミング毎)に、ソフトウェア手段によってキャ
ッシュメモリ302の内容を主記憶118に反映させる
コマンドを発行することで、本発明のミラーページ機構
を活用できる。
【0038】次に、2つ目の想定について説明する。ネ
ットワークインタフェース108からの主記憶書き込み
要求は、命令プロセッサ101の動作とは独立に行われ
る。したがって、ネットワークインタフェース108か
らの主記憶書き込み要求が対象とするアドレス領域が、
命令プロセッサ101に付随するキャッシュメモリ30
2に存在した場合、通常、命令プロセッサ101では、
このネットワークインタフェース108からの主記憶書
き込みを知ることができず、古い情報を参照し続けるこ
とになる。この問題は、従来のメッセージパッシングに
おけるメッセージ受信に関しても存在した。例えば、日
立の並列計算機SR2201では、ストレージコントロ
ーラ102内のデータ転送インタフェース107に相当
する部分で、メッセージ受信に伴う主記憶書き込み要求
に対して、対象とするアドレス領域に関して自動的にキ
ャッシュ制御コマンドを命令プロセッサ101に対して
発行する機構を実現してこの問題を解消している
((社)電子情報通信学会・信学技報CPSY96−4
7「並列計算機SR2201の方式と評価」参照)。本
発明においても、同様の機構をデータ転送インタフェー
ス107が有し、ミラーページへの書き込み要求も含め
て、主記憶118への書き込み要求を受け付けると、命
令プロセッサ101に対して、書き込み要求が対象とす
るアドレス領域に関するキャッシュ制御コマンドを発行
することを想定した。ただし、この2点目の想定も、1
点目の想定同様、効率を気にしなければソフトウェア手
段で回避可能である。以上が、本発明に関わる実施の形
態である。
【0039】(実施の形態1の変形例1)本発明の実施
の形態1では、同じ要素プロセッサ201のストレージ
コントローラ102とネットワークインタフェース10
8の中に同じ構造でかつ同じ内容のミラーテーブル10
5および115を有していた。本変形例1では、この2
つのミラーテーブルのうちネットワークインタフェース
108中のミラーテーブル115を用意しない場合の実
施の形態を述べる。図5を用いて本実施の形態を説明す
る。本実施の形態において、図1で説明した実施の形態
1と異なる部分は、ネットワークインタフェース108
内のミラー処理部514およびコマンド送出部510
と、ストレージコントローラ102内のデータ転送イン
タフェース507のみである。これ以外の部分は、実施
の形態1と全く同じである。動作的には、ミラー用ブロ
ードキャストメッセージをミラー処理部514が受理し
てから、ミラーページ処理に係わる主記憶118への書
き込み要求がデータ転送インタフェース507から発行
されるまでの動作および各動作ユニット間のインタフェ
ースが異なっている。本実施の形態では、以上の相違点
についてのみ記述する。
【0040】ミラー処理部514は、ミラー用ブロード
キャストメッセージを受け取ると、ミラーグループi
d、書き込み先ページ内相対アドレス、書き込みデー
タ、書き込みデータ長、書き込みバイトマークといった
情報をメッセージから取り出し、これらを組としてミラ
ー書き込み要求コマンドを生成する。ミラー書き込み要
求コマンドは、L518を介してコマンド送出部510
に伝わる。コマンド送出部510は、実施の形態1には
存在しなかったミラー書き込み要求コマンドを受け取
り、これをL513を介してストレージコントローラ1
02内のデータ転送インタフェース507に伝える。こ
の点を除くと、コマンド送出部510の構成および動作
は、実施の形態1と同じである。データ転送インタフェ
ース507は、ミラー書き込み要求コマンドを受け取る
と、そのコマンドのパラメータであるミラーグループi
d情報を取り出し、このid情報とミラーテーブル10
5の有効な(有効ビットフィールド401が「有効」を
示している)エントリのidフィールド403の値を照
合する。idが一致するエントリが存在しなかった場
合、そのミラー書き込み要求コマンドは当該要素プロセ
ッサ201を対象としたものでないと判断し、破棄す
る。idが一致するエントリが存在した場合、データ転
送インタフェース507は、そのエントリのアドレスフ
ィールド402からミラーページの先頭アドレスを取り
出し、ミラー書き込み要求コマンドのパラメータである
書き込み先ページ内相対アドレスと組み合わせて主記憶
書き込み要求のターゲットアドレスを決定し、このアド
レスとミラー書き込み要求コマンドのその他のパラメー
タである、書き込みデータ、書き込みデータ長、書き込
みバイトマークの各情報とを組み合わせて主記憶書き込
み要求を生成し、これをL110を介して主記憶アクセ
スインタフェース106に伝える。データ転送インタフ
ェース507の上記以外の構成および動作については実
施の形態1と同じである。ミラーページ機構に関する動
作フローについても、上記のとおり、ミラー用ブロード
キャストメッセージをミラー処理部514が受理してか
ら、ミラーページ処理に係わる主記憶118への書き込
み要求がデータ転送インタフェース507から発行され
るまでの部分が実施の形態1と異なるだけである。以上
が、本発明に関わる実施の形態1に対する変形例1であ
る。
【0041】
【発明の効果】本発明によれば、分散メモリ方式の並列
計算機において、主記憶内容の共有を低コストで実現で
きる。また、主記憶内容の共有機構を提供したことで、
要素プロセッサ間の連携処理の効率向上や、適用アプリ
ケーションの拡大が可能となる。
【図面の簡単な説明】
【図1】本発明に係わるストレージコントローラおよび
ネットワークインタフェースの構成を示す図である。
【図2】本発明に係わるメッセージパッシング型の分散
メモリ方式並列計算機の概略構成を示す図である。
【図3】本発明に係わる要素プロセッサの概略構成を示
す図である。
【図4】本発明に係わるミラーテーブルの構成を示す図
である。
【図5】本発明に係わるストレージコントローラおよび
ネットワークインタフェースの他の構成を示す図であ
る。
【符号の説明】
101 命令プロセッサ 102 ストレージコントローラ 103 命令プロセッサインタフェース 104 アドレス解析部 105、115 ミラーテーブル 106 主記憶アクセスインタフェース 107、507 データ転送インタフェース 108 ネットワークインタフェース 109 コマンド受信部 110、510 コマンド送信部 111 ミラー要求作成部 112 メッセージ送信・コマンド処理部 113 メッセージ受信部 114、514 ミラー処理部 116 パケット送信部 117 パケット受信部 118 主記憶 201a〜201n 要素プロセッサ 202 相互結合網 302 キャッシュメモリ

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 相互結合網で接続される複数の要素プロ
    セッサを有し、該各要素プロセッサが個別に主記憶を所
    有し、これを管理する分散メモリ方式をとる並列計算機
    において、 該要素プロセッサの記憶制御装置が、特定のアドレス領
    域への主記憶書き込み要求を検出する機構を持ち、該要
    素プロセッサの該記憶制御装置が、該特定アドレス領域
    への主記憶書き込み要求を検出した際に、該書き込み要
    求を主記憶に送出すると同時に、相互結合網へのインタ
    フェース装置を介して、該書き込み要求を該要素プロセ
    ッサから相互結合網に送出する機構を備えることを特徴
    とする並列計算機。
  2. 【請求項2】 請求項1記載の並列計算機において、 前記要素プロセッサの記憶制御装置が、前記特定アドレ
    ス領域への主記憶書き込み要求を検出するための該特定
    アドレス領域の先頭アドレス値を登録した参照表を備え
    ることを特徴とする並列計算機。
  3. 【請求項3】 請求項2記載の並列計算機において、 前記参照表は複数のエントリからなり、 各エントリは、エントリの有効/無効を示すフィールド
    と、前記特定アドレス領域の先頭アドレス値を示すフィ
    ールドと、該特定アドレス領域に対応する識別名を示す
    フィールドを有し、 該識別名は、システム全体で一元的に管理され、同じ識
    別名を有する特定アドレス領域を所有する該要素プロセ
    ッサは、同グループとして定義され、該グループの同じ
    識別名を有する特定アドレス領域は、該各要素プロセッ
    サの主記憶上での存在するアドレスが異なっていても、
    該識別名によって一意に認識され、該要素プロセッサの
    記憶制御装置が前記特定アドレス領域への主記憶書き込
    み要求を検出し、前記相互結合網へのインタフェース装
    置を介して該書き込み要求を要素プロセッサ外に伝える
    機構によって、該グループの同じ該識別名を有する全該
    特定アドレス領域が同じ内容を維持するように制御され
    ることを特徴とする並列計算機。
  4. 【請求項4】 請求項1乃至請求項3のいずれかの請求
    項記載の並列計算機において、 前記要素プロセッサの記憶制御装置が前記特定アドレス
    領域への主記憶書き込み要求を検出し、前記相互結合網
    へのインタフェース装置を介して該書き込み要求を要素
    プロセッサから相互結合網に送出する際に、該相互結合
    網に接続される全該要素プロセッサを対象として放送メ
    ッセージ機能を使用することを特徴とする並列計算機。
  5. 【請求項5】 請求項4記載の並列計算機において、 前記放送メッセージ機能を使用する際に、通常の放送メ
    ッセージ機能と区別するために、該放送メッセージのメ
    ッセージ形式の中に特殊モードビットフィールドを設
    け、 前記要素プロセッサの記憶制御装置が前記特定アドレス
    領域への主記憶書き込み要求を検出し、前記相互結合網
    へのインタフェース装置を介して該書き込み要求を該要
    素プロセッサから該相互結合網へ送出する際には、該メ
    ッセージの該特殊モードビットフィールドを有効化し、
    該メッセージに主記憶への書き込みバイト位置を示す情
    報、書き込み先領域での相対アドレス、前記識別名、書
    き込みデータ、および、書き込みデータ長を登録するこ
    とを特徴とする並列計算機。
  6. 【請求項6】 請求項5記載の並列計算機において、 前記相互結合網へのインタフェース装置は、 複数のエントリからなり、各エントリはエントリの有効
    /無効を示すフィールドと、前記特定アドレス領域の先
    頭アドレス値を示すフィールドと、該特定アドレス領域
    に対応する識別名を示すフィールドを持つ参照表を有
    し、 前記特殊モードの放送メッセージを受信した際に、該メ
    ッセージ中の識別名情報を取り出し、該参照表から該識
    別名が一致するエントリを探索し、一致するエントリが
    存在しなければ、該メッセージを破棄し、一致するエン
    トリが存在すれば、該エントリから該特定アドレス領域
    の先頭アドレス値を読み取り、該メッセージ中の該書き
    込み先領域での相対アドレス情報と組み合わせて書き込
    みアドレスを作成し、その他、該メッセージ中の書き込
    みデータ、書き込みデータ長、書き込みバイト位置を示
    す情報を組み合わせて主記憶アクセス要求を作成し、こ
    れを前記記憶制御装置に送出する機構を有することを特
    徴とする並列計算機。
  7. 【請求項7】 請求項5記載の並列計算機において、 前記相互結合網へのインタフェース装置は、前記特殊モ
    ードの放送メッセージを受信した際に、該メッセージか
    ら主記憶への書き込みバイト位置を示す情報、前記書き
    込み先領域での相対アドレス、前記識別名、書き込みデ
    ータ、および、書き込みデータ長といった情報を取り出
    し、これらを外部からの該特定アドレス領域への書き込
    み要求として前記記憶制御装置に送出する機構を有し、 前記記憶制御装置は、該外部からの特定アドレス領域へ
    の書き込み要求を前記相互結合網へのインタフェース装
    置から受け取ると、該要求中の識別名情報を取り出し、
    該記憶制御装置が有する参照表から該識別名が一致する
    エントリを探索し、一致するエントリが存在しなけれ
    ば、該要求を破棄し、一致するエントリが存在すれば、
    該エントリから該特定アドレス領域の先頭アドレス値を
    読み取り、該要求中の書き込み先領域での相対アドレス
    情報と組み合わせて書き込みアドレスを作成し、その
    他、該要求中の書き込みデータ、書き込みデータ長、書
    き込みバイト位置を示す情報を組み合わせて主記憶アク
    セス要求を作成し、これを該主記憶に送出する機構を有
    することを特徴とする並列計算機。
  8. 【請求項8】 請求項1乃至請求項3のいずれかの請求
    項記載の並列計算機において、 前記要素プロセッサの記憶制御装置が前記特定アドレス
    領域への主記憶書き込み要求を検出し、前記相互結合網
    へのインタフェース装置を介して該書き込み要求を要素
    プロセッサから該相互結合網へ送出する際に、特定のグ
    ループとして定義された複数の要素プロセッサの総てを
    対象とした放送メッセージの転送を行うグループ内放送
    メッセージ機能を使用することを特徴とする並列計算
    機。
  9. 【請求項9】 請求項8記載の並列計算機において、 該グループ内放送メッセージ機能を使用する際に、通常
    のグループ内放送メッセージ機能と区別するために、該
    グループ内放送メッセージのメッセージ形式の中に特殊
    モードビットフィールドを設け、 該要素プロセッサの該記憶制御装置が前記特定アドレス
    領域への主記憶書き込み要求を検出し、前記相互結合網
    へのインタフェース装置を介して該書き込み要求を該要
    素プロセッサから該相互結合網へ送出する際には、該メ
    ッセージの該特殊モードビットフィールドを有効化し、
    該メッセージに主記憶への書き込みバイト位置を示す情
    報、書き込み先領域での相対アドレス、前記識別名、書
    き込みデータ、および、書き込みデータ長を登録するこ
    とを特徴とする並列計算機。
  10. 【請求項10】 請求項9記載の並列計算機において、 前記相互結合網へのインタフェース装置は、 複数のエントリからなり、各エントリはエントリの有効
    /無効を示すフィールドと、前記特定アドレス領域の先
    頭アドレス値を示すフィールドと、該特定アドレス領域
    に対応する識別名を示すフィールドを持つ参照表を有
    し、 前記特殊モードのグループ内放送メッセージを受信した
    際に、該メッセージ中の識別名情報を取り出し、該参照
    表から該識別名が一致するエントリを探索し、一致する
    エントリが存在しなければ、該メッセージを破棄し、一
    致するエントリが存在すれば、該エントリから該特定ア
    ドレス領域の先頭アドレス値を読み取り、該メッセージ
    中の該書き込み先領域での相対アドレス情報と組み合わ
    せて書き込みアドレスを作成し、その他、該メッセージ
    中の書き込みデータ、書き込みデータ長、書き込みバイ
    ト位置を示す情報を組み合わせて主記憶アクセス要求を
    作成し、これを前記記憶制御装置に送出する機構を有す
    ることを特徴とする並列計算機。
  11. 【請求項11】 請求項9記載の並列計算機において、 前記相互結合網へのインタフェース装置は、前記特殊モ
    ードの放送メッセージを受信した際に、該メッセージか
    ら主記憶への書き込みバイト位置を示す情報、前記書き
    込み先領域での相対アドレス、前記識別名、書き込みデ
    ータ、および、書き込みデータ長といった情報を取り出
    し、これらを外部からの該特定アドレス領域への書き込
    み要求として前記記憶制御装置に送出する機構を有し、 前記記憶制御装置は、該外部からの特定アドレス領域へ
    の書き込み要求を前記相互結合網へのインタフェース装
    置から受け取ると、該要求中の識別名情報を取り出し、
    該記憶制御装置が有する参照表から該識別名が一致する
    エントリを探索し、一致するエントリが存在しなけれ
    ば、該要求を破棄し、一致するエントリが存在すれば、
    該エントリから該特定アドレス領域の先頭アドレス値を
    読み取り、該要求中の書き込み先領域での相対アドレス
    情報と組み合わせて書き込みアドレスを作成し、その
    他、該要求中の書き込みデータ、書き込みデータ長、書
    き込みバイト位置を示す情報を組み合わせて主記憶アク
    セス要求を作成し、これを該主記憶に送出する機構を有
    することを特徴とする並列計算機。
  12. 【請求項12】 それぞれが主記憶を有する複数のプロ
    セッサと、該複数のプロセッサを相互接続する相互結合
    網とを有する並列計算機において、 該プロセッサの記憶装置は、 特定領域への主記憶書き込み要求を検出する機構と、 該特定領域への主記憶書き込み要求を検出した際に、該
    書き込み要求を主記憶および該相互結合網へ送出する機
    構と、 該書き込み要求を該相互結合網から伝えられた際に、該
    伝えられた書き込み要求に従って、該書き込み要求を伝
    えられたプロセッサの主記憶の特定領域を、該書き込み
    要求を送信したプロセッサの主記憶の特定領域と同じ内
    容にする機構とを有することを特徴とする並列計算機。
  13. 【請求項13】 請求項12記載の並列計算機におい
    て、前記並列計算機は、前記特定領域と対応する識別子
    を有し、 前記記憶制御装置は、該識別子を参照して、前記書き込
    み要求の送信側の主記憶の特定領域の内容と該書き込み
    要求の受信側の主記憶の特定領域の内容を同じにし、 前記各プロセッサの主記憶上での該特定領域は任意の主
    記憶のアドレスであることを特徴とする並列計算機。
JP02972297A 1997-01-29 1997-01-29 並列計算機 Expired - Fee Related JP3877186B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP02972297A JP3877186B2 (ja) 1997-01-29 1997-01-29 並列計算機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP02972297A JP3877186B2 (ja) 1997-01-29 1997-01-29 並列計算機

Publications (2)

Publication Number Publication Date
JPH10214259A true JPH10214259A (ja) 1998-08-11
JP3877186B2 JP3877186B2 (ja) 2007-02-07

Family

ID=12284013

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02972297A Expired - Fee Related JP3877186B2 (ja) 1997-01-29 1997-01-29 並列計算機

Country Status (1)

Country Link
JP (1) JP3877186B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011161787A1 (ja) * 2010-06-23 2011-12-29 富士通株式会社 通信装置、通信方法、および通信プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011161787A1 (ja) * 2010-06-23 2011-12-29 富士通株式会社 通信装置、通信方法、および通信プログラム
CN102947817A (zh) * 2010-06-23 2013-02-27 富士通株式会社 通信装置、通信方法以及通信程序
JP5403160B2 (ja) * 2010-06-23 2014-01-29 富士通株式会社 通信装置、通信方法、および通信プログラム
US9565049B2 (en) 2010-06-23 2017-02-07 Fujitsu Limited Communication apparatus, communication method, and computer product for sharing data

Also Published As

Publication number Publication date
JP3877186B2 (ja) 2007-02-07

Similar Documents

Publication Publication Date Title
US7366835B2 (en) Data access responding system, storage system, client apparatus, cache apparatus, and method for accessing data access responding system
JP3836838B2 (ja) マルチプロセッサ・システムでのプロセッサ相互接続を使用するマイクロプロセッサ通信の方法およびデータ処理システム
JP3512910B2 (ja) 分散計算機システムにおける記憶空間管理方法、計算機及びデータ転送方法
JP2625385B2 (ja) マルチプロセッサシステム
US6971098B2 (en) Method and apparatus for managing transaction requests in a multi-node architecture
US6327614B1 (en) Network server device and file management system using cache associated with network interface processors for redirecting requested information between connection networks
JP3836840B2 (ja) マルチプロセッサ・システム
US8250254B2 (en) Offloading input/output (I/O) virtualization operations to a processor
US5257386A (en) Data transfer control system for virtual machine system
US20020065989A1 (en) Master/slave processing system with shared translation lookaside buffer
JPH0816470A (ja) 並列計算機
JP2000112910A (ja) 非一様メモリ・アクセス・コンピュ―タ・システム及びその操作方法
US20130163593A1 (en) Method of processing data packets
JP2005189928A (ja) マルチプロセッサシステム、マルチプロセッサシステムにおける一貫性制御装置及び一貫性制御方法
US8190853B2 (en) Calculator and TLB control method
JP3836837B2 (ja) マルチプロセッサ・システムでのマイクロプロセッサ通信の方法、処理ユニット、およびデータ処理システム
JP3836839B2 (ja) クラスタベースのマルチプロセッサ・システムでのマイクロプロセッサ通信の方法およびデータ処理システム
JPH10214259A (ja) 並列計算機
JP2006164218A (ja) ストレージシステム及びそのキャッシュ制御方法
JPH04291660A (ja) プロセッサ間通信方法およびそのための並列プロセッサ
CN112347012A (zh) 支持SR-IOV的NVMe控制器及方法
JP2780662B2 (ja) マルチプロセッサシステム
CN117519955B (zh) 一种加速设备的控制方法、系统、装置及加速设备
EP1262875A1 (en) Master/slave processing system with shared translation lookaside buffer
JP3641837B2 (ja) 分散メモリ型並列計算機のデータ転送方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040318

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050809

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060328

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060526

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: 20061017

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061027

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees