JP2766217B2 - 並列処理装置 - Google Patents
並列処理装置Info
- Publication number
- JP2766217B2 JP2766217B2 JP7113321A JP11332195A JP2766217B2 JP 2766217 B2 JP2766217 B2 JP 2766217B2 JP 7113321 A JP7113321 A JP 7113321A JP 11332195 A JP11332195 A JP 11332195A JP 2766217 B2 JP2766217 B2 JP 2766217B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- communication register
- register
- registers
- positive integer
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Description
に複数の演算処理装置間で同期排他制御を行うための通
信レジスタを含む並列処理装置に関する。
びこれらを結合する相互結合網より構成される並列処理
装置においては、上記複数の演算処理装置の各々がアク
セス可能であり、主記憶装置に比べアクセスタイムが高
速、もしくはアクセススループットが高い、もしくは両
方の特徴を有するように構成されたレジスタ(以下、
「通信レジスタ」という)を設ける並列処理装置があ
る。
理装置間の通信の制御および入出力装置間、演算処理装
置間の制御、複数個の演算処理装置間の同期制御等に利
用される。
合には処理実行の途中で必ず複数個の演算処理装置間で
の同期制御、もしくは、排他制御が必要となる。
性能に多大な影響を与えるが、通信レジスタを用いて同
期/排他制御を行うことにより、同期/排他制御のオー
バヘッドを小さくすることができる。
命令処理での歩調合わせを行うための処理であり、具体
的には、ポスト/ウエイト処理やバリア同期処理を示
す。
連の操作処理に対し、その操作処理を同一時刻に実行で
きるのが複数個の演算処理装置の中で唯一、一つの演算
処理装置である場合に、一つの演算処理装置のみに処理
を行わせる制御方法である。唯一、一つの演算処理装置
のみ実行が許されるプログラム中の操作処理区間をクリ
テカルセクションという。
が、その内の一つに、テストアンドセット命令とストア
命令を用いた排他制御がある。これは、リード/ライト
アクセス対象が通信レジスタであるテストアンドセット
命令、ストア命令を用いた排他制御処理である。以下
に、複数の演算処理装置が共有する主記憶上の変数に対
して、複数の演算処理装置がアクセスする際の排他制御
を上記の方法を用いて行う場合の例を示す。
セクション内の処理として共有変数をプラス1する処理
を示している。すなわち、複数個の演算処理装置でこの
排他制御が終了すると、この共有変数の値は演算処理装
置分だけインクリメントされている。仮に、この排他制
御を行わずに共有変数アクセスし、プラス1する処理を
行うとすると、処理終了時の共有変数の値は不定とな
る。本例においては、この共有変数として、通信レジス
タの1番地のワードを用いている。なお、CRは通信レ
ジスタを、S0およびS1はそれぞれスカラレジスタの
第0番および第1番を指す。
は、共有変数アクセスタイムの短縮というメリットをい
かすことができる。
0)”はCR(#0)の値をスカラレジスタS0に読み
出し、そして、CR(#0)が0であつたら、CR(#
0)を1に変える。
はスカラレジスタS0の値が0値であったならば、00
3行目以降の命令処理に進みみS0の値が0値以外の値
ならば、loop1と名付けられた001行目に戻ると
いうブランチ命令である。
は通信レジスタ(CR)の1番地のワードを読み出し、
その値をスカラレジスタS1に書き込むという通信レジ
スタに対するロード命令である。
スカラレジスタS1の値に1を加え、再びS1に書き戻
すという加算命令である。
1)”はスカラレジスタS1の値をCR(#1)に書き
込むという通信レジスタに対するストア命令である。
0)”はスカラレジスタS0の値をCR(#0)に書き
込むという通信レジスタに対するストア命令である。
クリティカルセクションに入っていることによってロッ
クビットが”1”である場合には、各演算処理装置はロ
ックビットが”0”になるまで繰り返し通信レジスタに
アクセスしてロックビットをチェックし、ロックビット
が”0”になったときにロックビットを”1”に変えて
ロックしてからクリティカルセクションでの処理をはじ
める。
と、ロックを獲得した演算処理装置はCR(#1)のカ
ウンタに1を加える。こういう処理を繰り返し、カウン
タの値が全ての演算処理装置の数を示した時点で通信レ
ジスタを用いた同期制御が終了する。
領域である(上記の例ではCR(#0))。各演算処理
装置はロックビットにアクセスし、ロックビットが”
0”であった場合にアクセスした演算処理装置のみがク
リティカルセクションに入ることを許される。そこで、
クリティカルセクションに入ることを許された演算処理
装置は他の演算処理装置がクリティカルセクションに入
らないようにロックビットを”1”に変える。この動作
をロックするという。また、上記のようにロックビット
にアクセスし、ロックビットが”0”であるかどうかを
チェックし、”0”である場合にロックしてクリティカ
ルセクションに入ることをロックを獲得するという。
作を行うことにより、ロックを獲得できない演算処理装
置はクリティカルセクションに入ることが許されないた
め、クリティカルセクションは排他的になり、1つの演
算処理装置のみが処理を行うことができる。
並列処理装置に対し、通信レジスタ部3には通信レジス
タモジュール4は1つしか存在せず、通信レジスタ部3
と相互結合網9とを結ぶ一本のバスにより相互結合網9
に接続している。このような構成では、通信レジスタ部
3にアクセスできる演算処理装置は同一時刻に一個と限
られることになる。
したようなXワードの連続したアドレスを有する通信レ
ジスタが割り当てられる。このXワードをまとめて通信
レジスタセットという。
合で、1つのタスクにおいて、その複数個の演算処理装
置に対して同期/排他制御を行う際には、この1セット
の通信レジスタを用いることになる。また、異なるタス
クには異なるセットの通信レジスタが割り当てられる。
従来の通信レジスタモジュールが1個しかない構成で
は、この複数個のセットは全て一つの通信レジスタモジ
ュールに入ることになる。
を用いた同期/排他制御においては、通信レジスタに、
複数の演算処理装置からのアクセスが集中する傾向があ
り、これが、並列処理機能を低下させる要因の一つとな
る。
が取れた演算処理装置以外の演算処理装置が行う、ロッ
クを取ろうとする001〜002行の処理(これをスピ
ンロックという)により、通信レジスタに対するアクセ
スが頻繁に行われる。そのため、ロックが取れ、クリテ
カルセクションでの処理を実行しようとする演算処理装
置が行う共有変数(CR(#1))に対するアクセスが
妨害されてしまう。
う場合には1つの通信レジスタモジュールに複数のロッ
クビット、複数のカウンタが存在しているため、通信レ
ジスタモジュールに対してアクセスが集中し、相互結合
網上で激しい競合が起きてしまう。
理装置全体に深刻な能率低下を引き起こしていた。
ュールを設け、通信レジスタモジュールへのアクセスを
分散させ、ロックビットとカウンタとを異なる通信レジ
スタモジュールに設置することにより相互結合網上での
競合を格段に緩和できる並列処理装置を提供することに
ある。
に本発明の並列処理装置は、複数の通信レジスタからな
る通信レジスタ部と主記憶装置と複数の演算処理装置と
を有し、さらに前記主記憶装置と前記演算処理装置と前
記通信レジスタ部とを相互に接続する相互結合網を有し
前記複数の演算処理装置で動作するタスクは連続するア
ドレスを有する複数の通信レジスタよりなる通信レジス
タセットを使用する並列処理装置において、前記通信レ
ジスタ部は前記通信レジスタを等分に組分けした複数の
通信レジスタモジュールより構成され、同一の通信レジ
スタセットに属する通信レジスタは同一の通信レジスタ
モジュールに属するように割り当てられる。
レジスタからなる通信レジスタ部と主記憶装置と複数の
演算処理装置とを有し、さらに前記主記憶装置と前記演
算処理装置と前記通信レジスタ部とを相互に接続する相
互結合網を有し前記複数の演算処理装置で動作するタス
クは連続するアドレスを有する複数の通信レジスタより
なる通信レジスタセットを使用する並列処理装置におい
て、前記通信レジスタ部は前記通信レジスタを等分に組
分けした複数の通信レジスタモジュールより構成され、
同一の通信レジスタセットに属する通信レジスタは各通
信レジスタモジュールに分散して割り当てられる。
(M及びNは0を含まない正の整数)の通信レジスタか
らなる通信レジスタ部と主記憶装置と複数の演算処理装
置とを有し、さらに前記主記憶装置と前記演算処理装置
と前記通信レジスタ部とを相互に接続する相互結合網を
有し前記複数の演算処理装置で動作するタスクは連続す
るアドレスを有するW個(Wは正の整数かつNの約数)
の通信レジスタよりなる通信レジスタセットを使用する
並列処理装置において、前記通信レジスタ部は前記複数
個の通信レジスタをN個ずつ等分に組分けしたM個の通
信レジスタモジュールより構成され、前記通信レジスタ
モジュールはそれぞれ固有の接続パスにより独立に前記
相互結合網に接続され、m番目(mは0を含まない正の
整数)の通信レジスタモジュールにあるp番目(pは0
を含まない正の整数)の通信レジスタのアドレスA(A
は0を含む正の整数)はA=N*(m−1)+p−1に
より与えられ、前記相互結合網は互いに相異なる前記通
信レジスタモジュールへの複数の同時アクセス要求は独
立かつ同時に接続する。
(M及びNは0を含まない正の整数)の通信レジスタか
らなる通信レジスタ部と主記憶装置と複数の演算処理装
置とを有し、さらに前記主記憶装置と前記演算処理装置
と前記通信レジスタ部とを相互に接続する相互結合網を
有し前記複数の演算処理装置で動作するタスクは連続す
るアドレスを有するW個(Wは正の整数かつMの約数)
の通信レジスタよりなる通信レジスタセットを使用する
並列処理装置において、前記通信レジスタ部は前記複数
個の通信レジスタをN個ずつ等分に組分けしたM個の通
信レジスタモジュールより構成され、前記通信レジスタ
モジュールはそれぞれ固有の接続パスにより独立に前記
相互結合網に接続され、m番目(mは0を含まない正の
整数)の通信レジスタモジュールにあるp番目(pは0
を含まない正の整数)の通信レジスタのアドレスA(A
は0を含む正の整数)はA=M*(p−1)+m−1に
より与えられ、前記相互結合網は互いに相異なる前記通
信レジスタモジュールへの複数の同時アクセス要求は独
立かつ同時に接続する。
(M及びNは0を含まない正の整数)の通信レジスタか
らなる通信レジスタ部と主記憶装置と複数の演算処理装
置とを有し、さらに前記主記憶装置と前記演算処理装置
と前記通信レジスタ部とを相互に接続する相互結合網を
有し前記複数の演算処理装置で動作するタスクは連続す
るアドレスを有するW個(Wは0を含まない正の整数か
つNの約数)の通信レジスタよりなる通信レジスタセッ
トを使用する並列処理装置において、前記通信レジスタ
部は前記複数個の通信レジスタをN個ずつ等分に組分け
したM個の通信レジスタモジュールより構成され、前記
通信レジスタモジュールはそれぞれ固有の接続パスによ
り独立に前記相互結合網に接続され、m番目(mは0を
含まない正の整数)の通信レジスタモジュールにあるp
番目(pは0を含まない正の整数)の通信レジスタのア
ドレスA(Aは0を含む正の整数)はp=α*W+β+
1(α、βは0を含む正の整数、β<W)としたときに
A=α*W*M+(m−1)*W+βにより与えられ、
前記相互結合網は互いに相異なる前記通信レジスタモジ
ュールへの複数の同時アクセス要求は独立かつ同時に接
続する。
(M及びNは0を含まない正の整数)の通信レジスタか
らなる通信レジスタ部と主記憶装置と複数の演算処理装
置とを有し、さらに前記主記憶装置と前記演算処理装置
と前記通信レジスタ部とを相互に接続する相互結合網を
有し前記複数の演算処理装置で動作するタスクは連続す
るアドレスを有するW個(Wは正の整数かつMの約数)
の通信レジスタよりなる通信レジスタセットを使用する
並列処理装置において、前記通信レジスタ部は前記複数
個の通信レジスタをN個ずつ等分に組分けしたM個の通
信レジスタモジュールより構成され、前記通信レジスタ
モジュールはそれぞれ固有の接続パスにより独立に前記
相互結合網に接続され、m番目(mは0を含まない正の
整数)の通信レジスタモジュールにあるp番目(pは0
を含まない正の整数)の通信レジスタのアドレスA(A
は0を含む正の整数)はp=γ*M+δ+1(γ、δは
0を含む正の整数、δ<M)としたときにm<δ+1の
場合にはA=M*p+m−(δ+1)、m≧δ+1の場
合にはA=M*(p−1)*m−(δ+1)により与え
られ、前記相互結合網は互いに相異なる前記通信レジス
タモジュールへの複数の同時アクセス要求は独立かつ同
時に接続する。
て図面を参照して詳細に説明する。
は、主記憶装置2と、演算処理装置1を複数個と、同期
/排他制御に使用される通信レジスタ5を複数個有する
通信レジスタ部3と、これらを相互に接続する相互結合
網9とから構成されている。通信レジスタ部3は、複数
の通信レジスタを等分に組分けした複数のレジスタモジ
ュール4から構成されている。また、各通信レジスタモ
ジュール4は、それぞれ固有の接続パス10により独立
に相互結合網9に接続されている。この相互結合網9
は、互いに相異なる通信レジスタモジュール4への複数
の同時アクセス要求を独立かつ同時に接続する。
ドレスを有する複数の通信レジスタよりなる通信レジス
タセットを使用する。そして、このタスクの通信レジス
タへの割り付け方によって、以下の各実施例が実現され
る。
ールの数は32台とし、通信レジスタモジュール1台は
256ワードでビット幅は32ビット、さらに、1セッ
トは32ワードで通信レジスタのアドレス順にセット番
号が付与されているものとする。また、以下の説明では
通信レジスタを同期に使用する場合について述べ、前述
の同期制御を例にして説明する。
ロックビットは各セットの0ワード目に、同期ポイント
に達した演算処理装置をカウントするカウンタは1ワー
ド目にそれぞれ設けられ、1つのタスクに対し1つのセ
ットで同期をとるための処理が行われるものとする。
例について説明する。
である並列処理装置では、通信レジスタに対して通信レ
ジスタモジュールの番号順にアドレスを付与している。
通信レジスタセットのワード数(すなわち、レジスタ
数)をW、1つの通信レジスタモジュールのワード数を
N(NはWの倍数でなければならない)とするとm番目
の通信レジスタモジュールのp番目の通信レジスタのア
ドレスAは以下の式で表される。ここで、M,W,m及
びpは全て0を含まない正の整数である。
ットの1セット分が同一の通信レジスタモジュールに割
り付けられることになる。従って、アクセス競合が発生
し得るタスクの通信レジスタセット同士を異なる通信レ
ジスタモジュールに割り当てるようにすれば、タスク間
のアクセス競合が解消される。
並列処理装置によれば、通信レジスタセットの1セット
分を同一の通信レジスタモジュールに割り付けることに
より、タスク間のアクセスの分散を容易にすることがで
きる。
例について説明する。
である並列処理装置では、通信レジスタに対してワード
順、通信レジスタモジュールの番号順にアドレスを付与
する。
通信レジスタセット内のワード数(レジスタ数)をW
(WはMの約数でなければならない)とするとm番目の
通信レジスタモジュールのp番目の通信レジスタのアド
レスは以下の式で表される。ここで、M,W,m及びp
は全て0を含まない正の整数である。
いロックビットが他のカウンタ等とは異なる通信レジス
タモジュール上に存在することになるため、ロックされ
ているかどうかをチェックするための通信レジスタアク
セスとロックが取れた演算処理装置の通信レジスタアク
セスが同時に行える。そこで、同一タスクのロックが取
れた演算処理装置の通信レジスタアクセスは、ロック待
ちの演算処理装置のスピンロックによる妨害を受けな
い。
並列処理装置によれば、レジスタセット内の各ワードを
各通信レジスタモジュールにまたがって分散して割り付
けることにより、ロックビットのアクセスを他のアクセ
スと競合しないようにすることができる。
例について説明する。
である並列処理装置では、通信レジスタに対しセット単
位でワード順、通信レジスタモジュールの番号順にアド
レスを付与する。
通信レジスタセット内のワード数(レジスタ数)をW
(1つの通信レジスタモジュールにある通信レジスタの
数をNとすればNはWの倍数でなければならない)とす
るとm番目の通信レジスタモジュールのp番目の通信レ
ジスタのアドレスAは以下の式で表される。ここで、
M,W,m及びpは全て0を含まない正の整数である。
む正の整数であり、かつ、β<Wが成り立つものとす
る。
が連続した番号の通信レジスタセットに割り付けられる
という制約条件がある場合に、各タスクの通信レジスタ
セットを異なる通信レジスタモジュールに分散させるこ
とができる。
並列処理装置によれば、連続した番号の通信レジスタセ
ットに各タスクが割り付けられる場合に、タスク間のア
クセス競合を解消することができる。
例について説明する。
である並列処理装置では、通信レジスタに対して基本的
にはワード順、通信レジスタモジュールの番号順にアド
レスを付与する。しかも、1つのセット内の最若番アド
レスは通信レジスタモジュール番号0に固定ではなく、
セット番号0内の最若番アドレスは通信レジスタモジュ
ール番号0、セット番号1内の最若番アドレスは通信レ
ジスタモジュール番号1というようにセット内の最若番
アドレスはセット番号と同じ番号の通信レジスタモジュ
ールに割り付けられる。
通信レジスタセット内のワード数(レジスタ数)をWと
するとm番目の通信レジスタモジュールのp番目の通信
レジスタのアドレスAは以下の式で表される。ここで、
M,W,m及びpは全て0を含まない正の整数である。
また、p=γ*M+δ+1とすると(γ、δは0を含む
正の整数、δ<M)、 m<δ+1の場合; A=M*p+m−(δ+1) m≧δ+1の場合; A=M*(p−1)+m−(δ+1) このようにアドレス付けすれば、アクセス頻度の高いロ
ックビットが他のカウンタ等とは異なる通信レジスタモ
ジュール上に存在することになるため、同一タスクでロ
ックが取れた演算処理装置の通信レジスタアクセスが、
ロック待ちの演算処理装置のスピンロックによる妨害を
受けなくなる。また、ロックビット等のアクセス頻度が
高いと思われるワードが各通信レジスタモジュールに分
散しているため、異なるタスク間の干渉を解消できる。
並列処理装置によれば、各タスクの通レジスタセット内
のロックビットが他のタスクの通信レジスタセット内の
ロックビットと互いに異なるように割り付けられるた
め、第2の実施例と比べてさらにタスク間の干渉を解消
することができる。
よると、複数の通信レジスタモジュールを設けることに
より、通信レジスタセット同士または通信レジスタ内の
ロックビットとカウンタを異なる通信レジスタモジュー
ルに設置することができる。従って、ロックを確保しよ
うとする複数の演算処理装置からのアクセスが、ロック
を確保した演算処理装置の行うカウンタへのアクセスを
妨害することがなくなる。また、同時に複数の通信レジ
スタモジュールに同時にアクセスできるため、通信レジ
スタモジュールに対するアクセスを分散させることがで
き、相互結合網上での競合を解消できるという効果があ
る。
ブロック図である。
示す図である。
示す図である。
示す図である。
示す図である。
Claims (6)
- 【請求項1】 複数の通信レジスタからなる通信レジス
タ部と主記憶装置と複数の演算処理装置とを有し、さら
に前記主記憶装置と前記演算処理装置と前記通信レジス
タ部とを相互に接続する相互結合網を有し前記複数の演
算処理装置で動作するタスクは連続するアドレスを有す
る複数の通信レジスタよりなる通信レジスタセットを使
用する並列処理装置において、 前記通信レジスタ部は前記通信レジスタを等分に組分け
した複数の通信レジスタモジュールより構成され、 同一の通信レジスタセットに属する通信レジスタは同一
の通信レジスタモジュールに属するように割り当てら
れ、 前記通信レジスタモジュールは前記通信レジスタセット
を複数個含む ことを特徴とする並列処理装置。 - 【請求項2】 複数の通信レジスタからなる通信レジス
タ部と主記憶装置と複数の演算処理装置とを有し、さら
に前記主記憶装置と前記演算処理装置と前記通信レジス
タ部とを相互に接続する相互結合網を有し前記複数の演
算処理装置で動作するタスクは連続するアドレスを有す
る複数の通信レジスタよりなる通信レジスタセットを使
用する並列処理装置において、 前記通信レジスタ部は前記通信レジスタを等分に組分け
した複数の通信レジスタモジュールより構成され、 同一の通信レジスタセットに属する通信レジスタは各通
信レジスタモジュールに分散して割り当てられ、 前記通信レジスタモジュールは互いに異なる前記通信レ
ジスタセットに属する前記通信レジスタを複数個含む こ
とを特徴とする並列処理装置。 - 【請求項3】 M*N個(M及びNは0を含まない正の
整数)の通信レジスタからなる通信レジスタ部と主記憶
装置と複数の演算処理装置とを有し、さらに前記主記憶
装置と前記演算処理装置と前記通信レジスタ部とを相互
に接続する相互結合網を有し前記複数の演算処理装置で
動作するタスクは連続するアドレスを有するW個(Wは
正の整数かつNの約数)の通信レジスタよりなる通信レ
ジスタセットを使用する並列処理装置において、 前記通信レジスタ部は前記複数個の通信レジスタをN個
ずつ等分に組分けしたM個の通信レジスタモジュールよ
り構成され、 前記通信レジスタモジュールはそれぞれ固有の接続パス
により独立に前記相互結合網に接続され、 m番目(mは0を含まない正の整数)の通信レジスタモ
ジュールにあるp番目(pは0を含まない正の整数)の
通信レジスタのアドレスA(Aは0を含む正の整数)は
A=N*(m−1)+p−1により与えられ、 前記相互結合網は互いに相異なる前記通信レジスタモジ
ュールへの複数の同時アクセス要求は独立かつ同時に接
続し、 前記通信レジスタモジュールは前記通信レジスタセット
を複数個含む ことを特徴とする並列処理装置。 - 【請求項4】 M*N個(M及びNは0を含まない正の
整数)の通信レジスタからなる通信レジスタ部と主記憶
装置と複数の演算処理装置とを有し、さらに前記主記憶
装置と前記演算処理装置と前記通信レジスタ部とを相互
に接続する相互結合網を有し前記複数の演算処理装置で
動作するタスクは連続するアドレスを有するW個(Wは
正の整数かつMの約数)の通信レジスタよりなる通信レ
ジスタセットを使用する並列処理装置において、 前記通信レジスタ部は前記複数個の通信レジスタをN個
ずつ等分に組分けしたM個の通信レジスタモジュールよ
り構成され、 前記通信レジスタモジュールはそれぞれ固有の接続パス
により独立に前記相互結合網に接続され、 m番目(mは0を含まない正の整数)の通信レジスタモ
ジュールにあるp番目(pは0を含まない正の整数)の
通信レジスタのアドレスA(Aは0を含む正の整数)は
A=M*(p−1)+m−1により与えられ、 前記相互結合網は互いに相異なる前記通信レジスタモジ
ュールへの複数の同時アクセス要求は独立かつ同時に接
続し、 前記通信レジスタモジュールは互いに異なる前記通信レ
ジスタセットに属する前記通信レジスタを複数個含む こ
とを特徴とする並列処理装置。 - 【請求項5】 M*N個(M及びNは0を含まない正の
整数)の通信レジスタからなる通信レジスタ部と主記憶
装置と複数の演算処理装置とを有し、さらに前記主記憶
装置と前記演算処理装置と前記通信レジスタ部とを相互
に接続する相互結合網を有し前記複数の演算処理装置で
動作するタスクは連続するアドレスを有するW個(Wは
0を含まない正の整数かつNの約数)の通信レジスタよ
りなる通信レジスタセットを使用する並列処理装置にお
いて、 前記通信レジスタ部は前記複数個の通信レジスタをN個
ずつ等分に組分けしたM個の通信レジスタモジュールよ
り構成され、 前記通信レジスタモジュールはそれぞれ固有の接続パス
により独立に前記相互結合網に接続され、 m番目(mは0を含まない正の整数)の通信レジスタモ
ジュールにあるp番目(pは0を含まない正の整数)の
通信レジスタのアドレスA(Aは0を含む正の整数)は
p=α*W+β+1(α、βは0を含む正の整数、β<
W)としたときにA=α*W*M+(m−1)*W+β
により与えられ、 前記相互結合網は互いに相異なる前記通信レジスタモジ
ュールへの複数の同時アクセス要求は独立かつ同時に接
続し、 前記通信レジスタモジュールは前記通信レジスタセット
を複数個含む ことを特徴とする並列処理装置。 - 【請求項6】 M*N個(M及びNは0を含まない正の
整数)の通信レジスタからなる通信レジスタ部と主記憶
装置と複数の演算処理装置とを有し、さらに前記主記憶
装置と前記演算処理装置と前記通信レジスタ部とを相互
に接続する相互結合網を有し前記複数の演算処理装置で
動作するタスクは連続するアドレスを有するW個(Wは
正の整数かつMの約数)の通信レジスタよりなる通信レ
ジスタセットを使用する並列処理装置において、 前記通信レジスタ部は前記複数個の通信レジスタをN個
ずつ等分に組分けしたM個の通信レジスタモジュールよ
り構成され、 前記通信レジスタモジュールはそれぞれ固有の接続パス
により独立に前記相互結合網に接続され、 m番目(mは0を含まない正の整数)の通信レジスタモ
ジュールにあるp番目(pは0を含まない正の整数)の
通信レジスタのアドレスA(Aは0を含む正の整数)は
p=γ*M+δ+1(γ、δは0を含む正の整数、δ<
M)としたときにm<δ+1の場合にはA=M*p+m
−(δ+1)、m≧δ+1の場合にはA=M*(p−
1)*m−(δ+1)により与えられ、 前記相互結合網は互いに相異なる前記通信レジスタモジ
ュールへの複数の同時アクセス要求は独立かつ同時に接
続し、 前記通信レジスタモジュールは互いに異なる前記通信レ
ジスタセットに属する前記通信レジスタを複数個含む こ
とを特徴とする並列処理装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7113321A JP2766217B2 (ja) | 1994-06-14 | 1995-05-11 | 並列処理装置 |
CA002151673A CA2151673C (en) | 1994-06-14 | 1995-06-13 | Parallel processing system with a plurality of communication register modules |
US08/489,721 US5805917A (en) | 1994-06-14 | 1995-06-13 | Parallel processing system with a plurality of communication register modules |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6-131733 | 1994-06-14 | ||
JP13173394 | 1994-06-14 | ||
JP7113321A JP2766217B2 (ja) | 1994-06-14 | 1995-05-11 | 並列処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0863440A JPH0863440A (ja) | 1996-03-08 |
JP2766217B2 true JP2766217B2 (ja) | 1998-06-18 |
Family
ID=26452319
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7113321A Expired - Fee Related JP2766217B2 (ja) | 1994-06-14 | 1995-05-11 | 並列処理装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5805917A (ja) |
JP (1) | JP2766217B2 (ja) |
CA (1) | CA2151673C (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6772268B1 (en) * | 2000-12-22 | 2004-08-03 | Nortel Networks Ltd | Centralized look up engine architecture and interface |
US7493417B2 (en) * | 2002-12-12 | 2009-02-17 | International Business Machines Corporation | Method and data processing system for microprocessor communication using a processor interconnect in a multi-processor system |
US7359932B2 (en) * | 2002-12-12 | 2008-04-15 | International Business Machines Corporation | Method and data processing system for microprocessor communication in a cluster-based multi-processor system |
US7360067B2 (en) * | 2002-12-12 | 2008-04-15 | International Business Machines Corporation | Method and data processing system for microprocessor communication in a cluster-based multi-processor wireless network |
US7356568B2 (en) * | 2002-12-12 | 2008-04-08 | International Business Machines Corporation | Method, processing unit and data processing system for microprocessor communication in a multi-processor system |
US7162573B2 (en) * | 2003-06-25 | 2007-01-09 | Intel Corporation | Communication registers for processing elements |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4574350A (en) * | 1982-05-19 | 1986-03-04 | At&T Bell Laboratories | Shared resource locking apparatus |
US4636942A (en) * | 1983-04-25 | 1987-01-13 | Cray Research, Inc. | Computer vector multiprocessing control |
US4901230A (en) * | 1983-04-25 | 1990-02-13 | Cray Research, Inc. | Computer vector multiprocessing control with multiple access memory and priority conflict resolution method |
JPS6151243A (ja) * | 1984-08-20 | 1986-03-13 | Toshiba Corp | レジスタ式演算処理装置 |
SE451219B (sv) * | 1986-03-05 | 1987-09-14 | Stiftelsen Inst Mikrovags | Dataanordning fremst avsedd for exekvering av program i form av soktred, s k or parallel execution |
US5165039A (en) * | 1986-03-28 | 1992-11-17 | Texas Instruments Incorporated | Register file for bit slice processor with simultaneous accessing of plural memory array cells |
US4926317A (en) * | 1987-07-24 | 1990-05-15 | Convex Computer Corporation | Hierarchical memory system with logical cache, physical cache, and address translation unit for generating a sequence of physical addresses |
US5168573A (en) * | 1987-08-31 | 1992-12-01 | Digital Equipment Corporation | Memory device for storing vector registers |
US4918600A (en) * | 1988-08-01 | 1990-04-17 | Board Of Regents, University Of Texas System | Dynamic address mapping for conflict-free vector access |
JP3068138B2 (ja) * | 1989-04-06 | 2000-07-24 | 甲府日本電気株式会社 | ベクトル演算処理装置 |
JPH0353328A (ja) * | 1989-07-20 | 1991-03-07 | Hitachi Ltd | レジスタ退避回復方法ならびに処理装置 |
US5197130A (en) * | 1989-12-29 | 1993-03-23 | Supercomputer Systems Limited Partnership | Cluster architecture for a highly parallel scalar/vector multiprocessor system |
JP2743608B2 (ja) * | 1991-03-27 | 1998-04-22 | 日本電気株式会社 | 共有レジスタ制御方式 |
JPH06110846A (ja) * | 1992-09-25 | 1994-04-22 | Fujitsu Ltd | 排他制御方式 |
JPH0784851A (ja) * | 1993-09-13 | 1995-03-31 | Toshiba Corp | 共有データ管理方法 |
JPH07114498A (ja) * | 1993-10-15 | 1995-05-02 | Toshiba Corp | マイクロプロセッサ |
US5450313A (en) * | 1994-03-24 | 1995-09-12 | Xerox Corporation | Generating local addresses and communication sets for data-parallel programs |
-
1995
- 1995-05-11 JP JP7113321A patent/JP2766217B2/ja not_active Expired - Fee Related
- 1995-06-13 US US08/489,721 patent/US5805917A/en not_active Expired - Fee Related
- 1995-06-13 CA CA002151673A patent/CA2151673C/en not_active Expired - Fee Related
Non-Patent Citations (2)
Title |
---|
シドニー・ファーンバック著、長島重夫訳「スーパーコンピュータ」パーソナルメディア 1988.4.1 P37−P74 |
長島重夫、田中義一共著「スーパーコンピュータ」オーム社 平成4年11月20日 P71−P72 |
Also Published As
Publication number | Publication date |
---|---|
CA2151673A1 (en) | 1995-12-15 |
US5805917A (en) | 1998-09-08 |
CA2151673C (en) | 2000-01-11 |
JPH0863440A (ja) | 1996-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5410727A (en) | Input/output system for a massively parallel, single instruction, multiple data (SIMD) computer providing for the simultaneous transfer of data between a host computer input/output system and all SIMD memory devices | |
Cheung | A simulation study of the CRAY X-MP memory system | |
US5832290A (en) | Apparatus, systems and method for improving memory bandwidth utilization in vector processing systems | |
US4918600A (en) | Dynamic address mapping for conflict-free vector access | |
US6381686B1 (en) | Parallel processor comprising multiple sub-banks to which access requests are bypassed from a request queue when corresponding page faults are generated | |
US6092136A (en) | Multi-processor central processing unit | |
US20070136560A1 (en) | Method and apparatus for a shift register based interconnection for a massively parallel processor array | |
JP2766217B2 (ja) | 並列処理装置 | |
EP0570164B1 (en) | Interleaved memory system | |
JPH033262B2 (ja) | ||
EP0589662B1 (en) | Digital signal processing system | |
JP3982634B2 (ja) | トーラス区画化を容易にするために並列コンピュータのプロセッサを相互接続する方法およびシステム | |
EP1481319B1 (en) | Method and apparatus for parallel access to multiple memory modules | |
US7284113B2 (en) | Synchronous periodical orthogonal data converter | |
US5261056A (en) | N-port wide bandwidth cross-link register | |
EP0211613A2 (en) | Scientific processor vector file organization | |
Kitai et al. | Distributed storage control unit for the Hitachi S-3800 multivector supercomputer | |
EP0136218A2 (en) | Multiple port pipelined processor | |
WO1996005551A1 (en) | Method and system for storing data in a memory device | |
Honda et al. | A warp-synchronous implementation for multiple-length multiplication on the GPU | |
Peiron et al. | Synchronized access to streams in simd vector multiprocessors | |
EP0359192B1 (en) | Vector processors and vector register control | |
KR940009703B1 (ko) | 다중 프로세서 시스템의 버스 중재 장치 | |
JPH0456352B2 (ja) | ||
WO1996005598A1 (en) | Method and system for storing data blocks in a memory device |
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: 19980303 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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: 20080403 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090403 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100403 Year of fee payment: 12 |
|
LAPS | Cancellation because of no payment of annual fees |