JPH08297647A - 並列計算機 - Google Patents

並列計算機

Info

Publication number
JPH08297647A
JPH08297647A JP10254195A JP10254195A JPH08297647A JP H08297647 A JPH08297647 A JP H08297647A JP 10254195 A JP10254195 A JP 10254195A JP 10254195 A JP10254195 A JP 10254195A JP H08297647 A JPH08297647 A JP H08297647A
Authority
JP
Japan
Prior art keywords
communication register
communication
register
address
physical
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
JP10254195A
Other languages
English (en)
Other versions
JP2742245B2 (ja
Inventor
Noriyuki Ando
憲行 安藤
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 Computertechno Ltd
Original Assignee
NEC Computertechno 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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP7102541A priority Critical patent/JP2742245B2/ja
Priority to EP96102910A priority patent/EP0730237A1/en
Priority to CA 2170468 priority patent/CA2170468A1/en
Publication of JPH08297647A publication Critical patent/JPH08297647A/ja
Application granted granted Critical
Publication of JP2742245B2 publication Critical patent/JP2742245B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】 論理通信レジスタワード数を物理通信レジス
タワード数よりも多く見せることを可能とし、また、オ
ペレーティングシステム、ユーザプログラム等での通信
レジスタ使用方法のフレキシビリティを高めることを可
能とする。 【構成】 各演算プロセッサに、演算プロセッサで実行
するプログラムでの通信レジスタワードが指定する論理
通信レジスタアドレスから、通信レジスタ装置内の通信
レジスタワードを指定する物理通信レジスタアドレスへ
変換する通信レジスタアドレス変換テーブル301を設
け、また前記各演算プロセッサは、通信レジスタが枯渇
した場合、殆んど使用されていない通信レジスタセット
を主記憶に一時的にスワップアウトする機能を有するこ
とを特徴とする並列計算機。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、複数個の演算プロセッ
サからなる演算処理装置、主記憶装置、通信レジスタ装
置及びこれら各装置を結合する相互結合網より構成され
るマルチプロセッサ構成の並列計算機に関する。
【0002】
【従来の技術】複数個の演算プロセッサより構成される
並列計算機においては、主記憶装置と比較してアクセス
タイムが高速である記憶装置、または主記憶装置と比較
してアクセススループットが大きい記憶装置、または双
方の利点を兼ねそろえた記憶装置を持たせることによ
り、各プロセッサ間の同期制御、排他制御、及び通信制
御の為の共有変数を、この記憶装置に割り当て、各演算
プロセッサはこの記憶装置にアクセスすることにより、
上記制御の処理時間を低減させることができる。例え
ば、2個の演算プロセッサ間で、共有変数へのリード/
ライト処理を介して通信を行う場合、アクセスタイムの
速い記憶装置を介するほうが、主記憶装置を介するよ
り、通信処理は高速に実行できる。この記憶装置を以
下、通信レジスタと呼ぶことにする。
【0003】これら同期制御、排他制御、及び通信制御
は、並列計算機で実行する並列処理において、並列実行
が十分になされない制御であり、高並列になるに従い、
これらの制御が全体の性能に及ぼす影響は非常に大きく
なる。従って、このような制御の処理時間を低減するこ
とを目的とする通信レジスタ構成が、並列計算機の性能
向上に及ぼす効果は非常に大きいものである。
【0004】通常、通信レジスタの使用方法として、通
信レジスタを複数個のワードから成るセットに分割し、
1つのプロセスに対し1つのセットが割り当てられる。
但し、ここでのプロセスとは複数個に分割され、並列実
行される単位(スレッドと言う)から成る1つの処理単
位である。1つのスレッドは、演算プロセッサのいづれ
かにおいて実行され、複数個のスレッドが同時に複数台
の演算プロセッサで並列に実行処理される。セット内の
複数個のワードの使用方法は、各プログラムにより規定
されており、例えば、あるワードは排他制御のためのロ
ック用フラグとして用いられ、また他のあるワードは同
期制御のためのカウンタに用いられる。さらに、プロセ
スが1つのセットの通信レジスタワード数のみで足りな
い場合には、そのプロセスに複数個のセットを割り当て
るという処理もありうる。
【0005】プロセスが実行を開始する場合、オペレー
ティングシステム(OS)に対し通信レジスタのセット
を要求する。OSはその要求に対し、あるセットをその
プロセスに与える。実際には、そのセット番号をプロセ
スに与えることになる。プロセスはセット使用権を受け
取ったならば、各種設定を行った後、並列実行を開始す
る。並列実行終了後は、その旨をOSに通知し、使用し
たセットを開放する。
【0006】
【発明が解決しようとする課題】上述した従来の通信レ
ジスタ装置付きの並列計算機においては、通信レジスタ
のワード数は、主記憶装置に比較して高速アクセスタイ
ム、高スループット性能を得る為に、論理構成上、回路
実装上の制約より、小容量にせざるを得ない。
【0007】しかし、並列計算機の演算プロセッサ数が
多数台数になり、その上で多数個のプロセスが並列実行
される処理環境においては、通信レジスタのセットが数
多く必要になる。従って、並列実行したいプロセス数が
セット数を上回る状況になれば、セット数の枯渇により
プロセスの実行が待たされることになる。また、プロセ
スが複数個のセットを要求するならば、さらに状況が悪
化する。
【0008】高並列状態にて通信レジスタセットが枯渇
する1つの理由として、以下のケースが考えられる。各
演算プロセッサは、タイムシュアリング処理により異る
プロセスを同時並行に実行するが、実際には、ある時間
に実行するプロセスは1つに限られる。この時、他のプ
ロセスは、I/O同期待ちや他演算プロセッサとの同期
待ち等により休止している。オペレーティングシステム
のタイムシュアリングプロセス制御部は、あるプロセス
が休止した場合、他の実行可能なプロセスに切替える。
しかし、休止したプロセスの通信レジスタのセット領域
は確保して置く必要がある。もちろん、休止プロセス切
替え時に、これの通信レジスタセット領域をメモリ等に
一時的に退避する処理を行うことも可能であるが、この
ようなプロセス切替え処理では、切替えオーバヘッドが
非常に大きくなる可能性がある。
【0009】
【課題を解決するための手段】本発明の並列計算機は、
複数個の演算プロセッサからなる演算処理装置、主記憶
装置、複数個の演算プロセッサ間の同期制御、排他制
御、通信制御を実行することを目的とし、複数個の記憶
ワードより構成される通信レジスタ装置が相互結合網に
より結合されたマルチプロセッサ構成の並列計算機にお
いて、各演算プロセッサに、演算プロセッサで実行する
プログラムでの通信レジスタワードが指定する論理通信
レジスタアドレスから、通信レジスタ装置内の通信レジ
スタワードを指定する物理通信レジスタアドレスへ変換
する通信レジスタアドレス変換テーブルを設け、また前
記各演算プロセッサは、通信レジスタが枯渇した場合、
殆んど使用されていない通信レジスタセットを主記憶に
一時的にスワップアウトする機能を有することを特徴と
する。
【0010】
【実施例】以下、本発明の実施例を図を用いて説明す
る。
【0011】図2は本発明が適用される通信レジスタ装
置を持つ並列計算機の概略構成を示している。10、1
1…1nは、各演算プロセッサ、2は主記憶装置、3は
通信レジスタ装置を示す。4は、演算プロセッサ10,
11…1n、主記憶装置2および通信レジスタ装置3を
接続する相互結合網を示す。各演算プロセッサ10,1
1…1nが主記憶アクセス、もしくは通信レジスタアク
セスを行う場合、リクエストを相互結合網4に対してリ
クエストを送出し、相互結合網4は複数個の演算プロセ
ッサから送られて来る複数個のリクエストを競合調停
し、リクエストが要求する主記憶装置12、もしくは通
信レジスタ装置3へルーティングする。主記憶装置2、
通信レジスタ装置3に到着したリクエストは、各装置内
でリードアクセス処理、モシクハライトアクセス処理が
実行される。リードアクセスの場合は、再度、相互結合
網4を介して演算プロセッサにリードデータが返却され
る。
【0012】通信レジスタ装置3は、複数個のワードよ
り構成される通信レジスタと、通信レジスタアクセスを
制御する制御部より構成される。通信レジスタは0番地
から連続的にアドレス番号が振られている。以下この通
信レジスタワードに対し付けられているアドレスのこと
を物理アドレスと呼ぶ。物理アドレスは論理的に2つの
フィールドに分割され、上位フィールドを物理セット番
号、下位フィールドをセット内オフセットと呼ぶ。例え
ば、物理セットフィールドがnビット、セット内オフセ
ットがmビットの物理アドレスが合計(n+m)ビット
より構成されているならば、物理セット数は2のn乗
個、セット内ワード数は2のm乗個の合計2の(n+
m)乗個のワードより通信レジスタは構成されているこ
とになる。演算プロセッサ10〜1nからの通信レジス
タアクセスでは、物理アドレスを指定することにより、
アクセスする通信レジスタのワードを決めることが出来
る。
【0013】図3に通信レジスタアクセス命令の命令フ
ォーマットを示す。通信レジスタ命令はオペコードフィ
ールド201とオペランドフィールドより構成される。
オペランドフィールドは、さらにスカラレジスタ番号を
指定する第一オペランドフィールド202と通信レジス
タアドレスを指定する第二オペランドフィールド203
より構成される。ロードアクセスの場合は第二オペラン
ドフィールド203で指定された通信レジスタワードに
格納されている値を、第一オペランドフィールド202
で指定されたスカラレジスタへ転送する。ストアアクセ
スの場合は、このソースとディストネーションの関係が
逆になる。
【0014】この第二オペランドフィールド203で指
定するアドレスのことを論理アドレスという。論理アド
レスは論理セット番号とセット内オフセットに分けるこ
とができる。ここで、論理セット番号はn’ビット構
成、セット内オフセットはmビット構成であり、論理ア
ドレスは合計(n’+m)ビット構成とする。従って、
論理的な通信レジスタ空間は、論理セット数は2のn’
乗個、セット内ワード数は2のm乗個の合計2の(n’
+m)乗個のワードより論理空間は構成されていること
になる。
【0015】ここで、論理通信レジスタアドレスと物理
通信レジスタアドレスの関係を述べる。論理通信レジス
タアドレスのセット内オフセットと物理通信レジスタア
ドレスのセット内オフセットは同じmビットであり、即
ち、セット内のワード数は同じ2のm乗ワードである。
セット番号は、n’>mである。即ち、論理通信レジス
タアドレス空間でのセット数は物理通信レジスタアドレ
ス空間でのセット数より多いことになる。
【0016】相互結合網4を流れるリクエストは、アク
セス先が主記憶装置2なのか通信レジスタ装置3なのか
を示すアクセス種別フィールド、アクセスがロードなの
かストアなのか等を示すコードフィールド、アクセスす
るワードの物理アドレス番地を示すアドレスフィール
ド、および書き込みデータフィールドより構成される。
物理アドレスフィールドはさらに、セット番号とセット
内オフセット分割され、各々にアクセスする通信レジス
タに対するセット番号とセット内オフセットが格納され
る。ロードアクセスの場合は、リプライとして読みだし
データが相互結合網4を逆向きに流れることになる。
【0017】通信レジスタ装置3では、相互結合網4よ
りリクエストを受け取ったならば、アドレスフィールド
で示されたセット番号とセット内オフセットで指定され
る通信レジスタのワードに対し、コードフィールドで示
される内容がストアならば、該ワードにデータフィール
ドの値を書き込み、ロードならば、該ワードの内容を詠
みだし、これをリプライのデータフィールドとして構成
し、相互結合網4に送出する。
【0018】図1は本発明の一実施例であり、演算プロ
セッサ10〜1nのそれぞれに設けられるアドレス変換
部の構成を示している。このアドレス変換部は複数個の
エントリーワードよりなる変換テーブル301,論理セ
ットレジスタ302,論理オフセットレジスタ303,
物理セットレジスタ304,物理オフセットレジスタ3
07,判定器308,論理通信レジスタアドレスレジス
タ309及び物理通信レジスタアドレスレジスタ310
を有する。変換テーブル301の各エントリーは物理通
信レジスタセット番号が入る物理アドレスフィールド3
12、アクセスする論理アドレスが物理アドレス上にマ
ッピングされているか否かを示すUAフィールド311
から構成される。UAフィールド311は1ビット長で
あり、AVAILABLEあらばマッピングされている
ことを意味し、UNAVAILABLEならばマッピン
グされていないことを意味する。
【0019】アドレス変換部は、演算プロセッサ10〜
1nが発行した通信レジスタアクセスを論理セット番号
から物理セット番号に変換する。それには、論理セット
番号が示すアドレスのエントリーを選択し、この内容を
読み出す。読み出されたエントリーは物理セットレジス
タ304に格納される。
【0020】この時、UAフィールド305がAVAI
LABLEならば、物理セット番号フィールド306
が、示す物理セット番号は有効である。従って、この物
理セット番号を上位フィールドとし、セット内オフセッ
トを下位フィールドとしてこれを連結することにより、
通信レジスタの物理アドレスは生成される。物理アドレ
スが生成されたならば、このアクセスは通信レジスタア
クセスリクエストとして構成され相互結合網4に送出さ
れ、通信レジスタ装置3に至る。
【0021】一方、UAフィールド305がUNAVA
ILABLEならば、この論理アドレスが示す通信レジ
スタは物理通信レジスタ上にマッピングされていないこ
とを意味するので、判定器308はこのことを演算プロ
セッサ制御部に割り込みとして通知する。演算プロセッ
サ制御部はこの割り込みを受け付けたならば、現在実行
中の処理を一時的にサスペンドし、これに対する割り込
み処理を実行開始する。
【0022】割り込み処理は、アローケートされずに主
記憶内にスワップアウトされている内容を、通信レジス
タのいずれかのワードにスワップインする処理となる。
このとき、スワップインするワードを選択する方法はい
くつか考えられるが、例えば、最も使用していないワー
ドを選択する方法がある。さらに、スワップアウト先に
拡張記憶装置を選んでもよい。このスワップアウト/ス
ワップイン処理は、オペレーティングシステムがソフト
的に処理する方法が一番簡単であるが、ハードウェア的
にこれら機能をサポートする構成も考えられる。
【0023】スワップインが完了したならば、スワップ
インした通信レジスタの物理アドレう値を、変換テーブ
ル301の論理アドレスが示すエントリーの物理アドレ
スフィールド312に更新する。この後、割り込み処理
は終了し、割り込み前の地点よりプログラムを再実行す
る。割り込みを起こした通信レジスタアクセスは再度ア
ドレス変換部において変換処理することになり、今後は
AVAILABLEで物理アドレスが引けるため通信レ
ジスタアクセスを完了することができる。
【0024】
【発明の効果】本発明は、以上の構成を採用することに
より、物理的に用意された通信レジスタ容量より、シス
テムとして使用可能な通信レジスタ容量多く見せること
が可能となる。従って、通信レジスタの枯渇によるプロ
セス投入のホールド状態を低減することが可能となり、
並列計算機上でのシステムループット向上に寄与するこ
とになる。
【図面の簡単な説明】
【図1】本発明の一実施例を示すブロック図である。
【図2】本発明の適用される並列計算機の概略構成図で
ある。
【図3】本発明の使用される通信レジスタアクセス命令
のフォーマットを示す図である。
【符号の説明】
10〜1n 演算プロセッサ 2 主記憶装置 3 通信レジスタ装置 4 相互結合網 201 オペコードフィールド 202 第一オペランドフィールド 203 第二オペランドフィールド 301 変換レジスタ 302 論理セットレジスタ 303 論理オフセットレジスタ 304 物理セットレジスタ 305,311 UAフィールド 306 物理セット番号フィールド 307 物理オフセットレジスタ 308 判定器 309 論理通信レジスタアドレスレジスタ 310 物理通信レジスタアドレスレジスタ 312 物理アドレスフィールド。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 複数個の演算プロセッサからなる演算処
    理装置、主記憶装置、複数個の演算プロセッサ間の同期
    制御、排他制御、通信制御を実行することを目的とし、
    複数個の記憶ワードより構成される通信レジスタ装置が
    相互結合網により結合されたマルチプロセッサ構成の並
    列計算機において、 各演算プロセッサに、演算プロセッサで実行するプログ
    ラムでの通信レジスタワードが指定する論理通信レジス
    タアドレスから、通信レジスタ装置内の通信レジスタワ
    ードを指定する物理通信レジスタアドレスへ変換する通
    信レジスタアドレス変換テーブルを設け、また前記各演
    算プロセッサは、通信レジスタが枯渇した場合、殆んど
    使用されていない通信レジスタセットを主記憶に一時的
    にスワップアウトする機能を有することを特徴とする並
    列計算機。
  2. 【請求項2】 前記スワップアウトする対象を個々の通
    信レジスタワードとしたことを特徴とする請求項1記載
    の並列計算機。
  3. 【請求項3】 前記通信レジスタのスワップアウト先を
    拡張記憶装置としたことを特徴とする請求項2記載の並
    列計算機。
JP7102541A 1995-02-28 1995-04-26 並列計算機 Expired - Fee Related JP2742245B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP7102541A JP2742245B2 (ja) 1995-04-26 1995-04-26 並列計算機
EP96102910A EP0730237A1 (en) 1995-02-28 1996-02-27 Multi-processor system with virtually addressable communication registers and controlling method thereof
CA 2170468 CA2170468A1 (en) 1995-02-28 1996-02-27 Multi-processor system with virtually addressable communication registers and controlling method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7102541A JP2742245B2 (ja) 1995-04-26 1995-04-26 並列計算機

Publications (2)

Publication Number Publication Date
JPH08297647A true JPH08297647A (ja) 1996-11-12
JP2742245B2 JP2742245B2 (ja) 1998-04-22

Family

ID=14330127

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7102541A Expired - Fee Related JP2742245B2 (ja) 1995-02-28 1995-04-26 並列計算機

Country Status (1)

Country Link
JP (1) JP2742245B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02116949A (ja) * 1988-10-27 1990-05-01 Nec Corp 情報処理システム
JPH04111153A (ja) * 1990-08-31 1992-04-13 Toshiba Corp 情報処理装置
JPH06131258A (ja) * 1992-10-20 1994-05-13 Fujitsu Ltd 複合情報処理システムにおける拡張記憶装置
JPH06187297A (ja) * 1992-12-18 1994-07-08 Fujitsu Ltd データ転送処理方法及びデータ転送処理装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02116949A (ja) * 1988-10-27 1990-05-01 Nec Corp 情報処理システム
JPH04111153A (ja) * 1990-08-31 1992-04-13 Toshiba Corp 情報処理装置
JPH06131258A (ja) * 1992-10-20 1994-05-13 Fujitsu Ltd 複合情報処理システムにおける拡張記憶装置
JPH06187297A (ja) * 1992-12-18 1994-07-08 Fujitsu Ltd データ転送処理方法及びデータ転送処理装置

Also Published As

Publication number Publication date
JP2742245B2 (ja) 1998-04-22

Similar Documents

Publication Publication Date Title
US6631462B1 (en) Memory shared between processing threads
US5123094A (en) Interprocessor communications includes second CPU designating memory locations assigned to first CPU and writing their addresses into registers
US6532509B1 (en) Arbitrating command requests in a parallel multi-threaded processing system
JPH0612386A (ja) プロセス内のスレッドを同期するための方法およびシステム
JP2001350638A (ja) 多重スレッド使用方法、多重スレッド処理システム、スレッド実行コントローラおよびバッファ使用方法
US6963962B2 (en) Memory system for supporting multiple parallel accesses at very high frequencies
JPH01228027A (ja) アドレス空間管理方法
JP2007133456A (ja) 半導体装置
US6101589A (en) High performance shared cache
JP2004234123A (ja) マルチスレッドコンピュータ
US6038642A (en) Method and system for assigning cache memory utilization within a symmetric multiprocessor data-processing system
US6138210A (en) Multi-stack memory architecture
JP2561261B2 (ja) バッファ記憶アクセス方法
EP0730237A1 (en) Multi-processor system with virtually addressable communication registers and controlling method thereof
JP3970705B2 (ja) アドレス変換装置、アドレス変換方法および2階層アドレス変換装置
US6058457A (en) Method for storing method frames in multiple stacks
JP3088303B2 (ja) キャッシュ・メモリ・バンク制御装置
US6067602A (en) Multi-stack-caching memory architecture
JP2742245B2 (ja) 並列計算機
US6092152A (en) Method for stack-caching method frames
JPS6349945A (ja) デ−タ処理装置のプロセス・ロ−ルイン方式
JP2000235503A (ja) オペレーティングシステム及び計算機
JPS6336012B2 (ja)
US6996665B2 (en) Hazard queue for transaction pipeline
JPH11212900A (ja) システム制御装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19971224

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20080130

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090130

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20100130

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20110130

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20110130

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20120130

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20130130

Year of fee payment: 15

LAPS Cancellation because of no payment of annual fees