JP2000181878A - 共有メモリ型ベクトル処理システムとその制御方法及びベクトル処理の制御プログラムを格納する記憶媒体 - Google Patents
共有メモリ型ベクトル処理システムとその制御方法及びベクトル処理の制御プログラムを格納する記憶媒体Info
- Publication number
- JP2000181878A JP2000181878A JP10375410A JP37541098A JP2000181878A JP 2000181878 A JP2000181878 A JP 2000181878A JP 10375410 A JP10375410 A JP 10375410A JP 37541098 A JP37541098 A JP 37541098A JP 2000181878 A JP2000181878 A JP 2000181878A
- Authority
- JP
- Japan
- Prior art keywords
- vector processing
- cpu
- instruction
- vector
- cpus
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 554
- 238000000034 method Methods 0.000 title claims description 17
- 239000013256 coordination polymer Substances 0.000 claims description 17
- 238000000605 extraction Methods 0.000 claims description 8
- 238000012546 transfer Methods 0.000 claims description 7
- 230000002401 inhibitory effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 12
- 238000011161 development Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007616 round robin method Methods 0.000 description 1
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/8053—Vector processors
- G06F15/8092—Array of vector units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Complex Calculations (AREA)
- Advance Control (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
Abstract
ン数を用途に応じて柔軟に変更できるベクトル処理シス
テムを提供する。 【解決手段】 この共有メモリ型ベクトル処理システム
は、各CPU10a〜10n相互を、各CPUから生成
するベクトル処理命令を各CPUに転送するためのバス
30によって接続し、各CPUを、ベクトル処理命令を
他のCPUに対して発行するマスターCPUと、マスタ
ーCPU内のベクトル処理部と同期して多重ベクトルパ
イプラインとして動作するスレーブCPUとに分け、マ
スターCPUは、発行元のCPUを識別する発行元CP
U情報を付加した前記ベクトル処理命令を発行し、パス
を介して自CPUを含む全てのCPUに対して転送する
メモリアクセス制御部12を備え、マスターCPUとス
レーブCPUは、ベクトル処理命令に含まれる発行元C
PU情報と自CPUに設定されたマスターCPU情報と
を比較し、一致する場合にベクトル処理命令に基づく命
令発行を行ない、一致しない場合にベクトル処理命令の
無効化を行なうベクトル処理命令制御部13を備える。
Description
有する複数のCPUを備え、各CPUがスカラ処理部と
複数のベクトルパイプラインを構成するベクトル処理部
を有してなる共有メモリ型ベクトル処理システムに関す
る。
るCPUを用いた共有メモリ型並列処理システムの構成
を示す。このシステムでは、複数のCPU100a〜1
00nが1つの主記憶装置200を共有して接続されて
いる。
を図10に示す。各CPU100a〜100nは、図示
のように、スカラ処理部101、命令制御部102、ベ
クトル処理部104a〜104n及びメモリアクセスネ
ットワーク部105を備えて構成される。
理命令「EX−RQ」は、命令制御部102へと転送さ
れる。命令制御部102では、自CPU内部にのみ存在
するベクトル処理部104a〜104nのリソースを管
理することによりベクトル処理命令「V−RQ」を発行
する。
におけるスカラ処理部101とベクトルパイプラインと
の構成は、常に一定であり変更することができない。
昭63−127368号及び特開昭63−10263号
等に開示されている。これらの公報に開示されるベクト
ル処理装置においては、何れもスカラ処理部とベクトル
パイプラインとの構成が一定であり、スカラ処理部に付
随するベクトルパイプライン数を用途に応じて柔軟に変
更できる構成とはなっていない。
ル処理装置においては、以下のような問題点がある。
ンによってベクトル化率等が異なるのに対して、適切な
ベクトル処理リソースを割り当てられないことである。
イプライン数は常に一定であるため、想定しているより
も低いベクトル化率のアプリケーションを実行した場
合、ベクトルリソースの余剰が発生してしまう。また逆
に、より高いベクトル化率やより長いベクトル長のアプ
リケーションを実行しても、予め固定的に構成されたベ
クトルパイプライン構成によりベクトル処理性能の上限
が固定されているため、更なる処理性能向上を行なうこ
とができないからある。
てもスカラ処理部とベクトルパイプラインとを別のLS
Iとして開発する必要があることである。
カラ処理部とベクトルパイプラインの1本分程度が1チ
ップ化できるようになってきたが、従来の多重ベクトル
パイプライン構成では、このようなLSIを複数接続す
る際に各LSIに存在するスカラ処理部は全く利用でき
ずハードウェア量を無駄に使用することになるため、従
来通りスカラ処理部とベクトルパイプラインとを別のL
SIとして開発することになってしまう。ところが、こ
の方法ではLSIの開発工数が増大すること、LSIの
開発品種数が増加すること、1種のLSI当たりの生産
個数が減少することなどコスト増となる項目が多くな
る。
ベクトルパイプライン数を用途に応じて柔軟に変更でき
るベクトル処理システムを提供することにある。
サのスカラ処理部からの単一のベクトルパイプラインを
共有しているように動作するベクトル処理システムを提
供することにある。
項1の本発明は、主記憶メモリを共有する複数のCPU
を備え、各CPUがスカラ処理手段とベクトル処理手段
を有してなる共有メモリ型ベクトル処理システムにおい
て、前記CPUをマスターCPUと、複数のスレーブC
PUとに分けて設定し、前記マスタCPUの前記スカラ
処理手段に付随して、前記複数のスレーブCPUの前記
ベクトル処理手段を多重ベクトルパイプラインとして動
作させることを特徴とする。
有する複数のCPUを備え、各CPUがスカラ処理手段
とベクトル処理手段を有してなる共有メモリ型ベクトル
処理システムにおいて、複数の前記CPUの前記ベクト
ル処理手段を全てまとめて単一の多重ベクトルパイプラ
インと見なし、前記各CPUの各スカラ処理手段から前
記単一の多重ベクトルパイプラインを共有しているよう
に動作させることを特徴とする。
有する複数のCPUを備え、各CPUがスカラ処理手段
とベクトル処理手段を有してなる共有メモリ型ベクトル
処理システムにおいて、前記各CPU相互を、前記各C
PUから生成するベクトル処理命令を各CPUに転送す
るためのパスによって接続し、前記各CPUは、発行元
のCPUを識別する発行元CPU情報を付加したベクト
ル処理命令を発行し、前記パスを介して自CPUを含む
全てのCPUに対して転送する発行手段と、転送された
前記ベクトル処理命令に含まれる前記発行元CPU情報
と、自CPUのベクトルパイプラインに関する構成情報
とを比較し、転送された前記ベクトル処理命令に対する
処理内容を決定するベクトル処理命令制御手段とを備え
ることを特徴とする。
有する複数のCPUを備え、各CPUがスカラ処理手段
とベクトル処理手段を有してなる共有メモリ型ベクトル
処理システムにおいて、前記各CPU相互を、前記各C
PUから生成するベクトル処理命令を各CPUに転送す
るためのパスによって接続し、前記各CPUを、スカラ
処理を実行すると共に、ベクトル処理命令を他のCPU
に対して発行するマスターCPUと、前記マスターCP
Uから転送されてきたベクトル処理命令を受け取り、マ
スターCPU内のベクトル処理部と同期して多重ベクト
ルパイプラインとして動作するスレーブCPUとに分け
て設定し、前記マスターCPUは、発行元のCPUを識
別する発行元CPU情報を付加した前記ベクトル処理命
令を発行し、前記パスを介して自CPUを含む全てのC
PUに対して転送する発行手段を備え、前記マスターC
PUとスレーブCPUは、転送された前記ベクトル処理
命令に含まれる前記発行元CPU情報と自CPUに設定
されたマスターCPU情報とを比較し、一致する場合に
転送された前記ベクトル処理命令に基づく命令発行を前
記ベクトル処理手段に対して行ない、一致しない場合に
前記ベクトル処理命令の無効化を行なうベクトル処理命
令制御手段を備えることを特徴とする。
UとスレーブCPUの前記ベクトル処理命令制御手段
は、転送された前記ベクトル処理命令に含まれる前記発
行元CPU情報と、自CPUに設定されたマスターCP
U情報とを比較する比較手段と、転送された前記ベクト
ル処理命令を格納する命令スタックと、前記比較手段よ
る比較結果が一致の場合、前記ベクトル処理命令を命令
スタックに格納し、比較結果が不一致の場合、前記前記
ベクトル処理命令を無効化する無効化処理手段と、前記
ベクトル処理部のリソース状態に基づいて、前記命令ス
タックに格納された前記ベクトル処理命令に基づく命令
発行を前記ベクトル処理手段に対して行なう命令発行処
理手段とを備えることを特徴とする。
UとスレーブCPUの前記ベクトル処理命令制御手段
は、転送された前記ベクトル処理命令を前記ベクトル処
理命令自体と前記発行元CPU情報に分離して出力する
抽出手段と、分離された前記発行元CPU情報と、自C
PUに設定されたマスターCPU情報とを比較する比較
手段と、前記比較手段よる比較結果が一致の場合、前記
抽出手段からの前記ベクトル処理命令を命令スタックに
格納し、比較結果が不一致の場合、前記前記ベクトル処
理命令を無効化する無効化処理手段と、前記ベクトル処
理部のリソース状態に基づいて、前記命令スタックに格
納された前記ベクトル処理命令に基づく命令発行を前記
ベクトル処理手段に対して行なう命令発行処理手段とを
備えることを特徴とする。
UとスレーブCPUの前記ベクトル処理命令制御手段
は、転送された前記ベクトル処理命令を格納する命令ス
タックと、前記命令スタックに格納された前記ベクトル
処理命令に含まれる前記発行元CPU情報と、自CPU
に設定されたマスターCPU情報とを比較し、比較結果
が一致の場合、前記ベクトル処理命令に基づく命令発行
を前記ベクトル処理手段に対して行ない、比較結果が不
一致の場合、前記ベクトル処理命令に基づく命令発行を
抑止し前記命令スタックの該当エリアを解放する命令発
行処理手段とを備えることを特徴とする。
には、前記発行元CPU情報を含んだ状態で前記ベクト
ル処理命令を格納することを特徴とする。
UとスレーブCPUの前記ベクトル処理命令制御手段
は、自CPUがスレーブCPUである場合に、自CPU
の前記スカラ処理手段の動作を停止させる停止手段を備
えることを特徴とする。
は、自CPUに対するマスターCPUと機能するCPU
を示すマスターCPU情報と、自CPUのCPU情報を
格納する格納手段と、前記ベクトル処理命令が転送され
た際に、前記格納手段に格納されたマスターCPU情報
と自CPU情報とを比較し、不一致の場合に、自CPU
の前記スカラ処理手段の動作停止信号を出力する比較手
段とで構成されることを特徴とする。
共有する複数のCPUを備え、各CPUがスカラ処理手
段とベクトル処理手段を有してなる共有メモリ型ベクト
ル処理システムにおいて、前記各CPU相互を、前記各
CPUから生成するベクトル処理命令を各CPUに転送
するためのパスによって接続し、前記各CPUは、発行
元のCPUを識別する発行元CPU情報を付加したベク
トル処理命令を発行し、前記ベクトルリクエストバスを
介して自CPUを含む全てのCPUに対して転送する発
行手段と、転送された前記ベクトル処理命令を、前記発
行元CPU情報に基づいて各CPU毎に対応した複数の
命令スタックに格納し、前記複数の命令スタック毎の優
先順位と前記ベクトル処理手段のリソース情報に基づい
て、前記ベクトル処理命令に基づく命令発行を制御する
ベクトル処理命令制御手段とを備えることを特徴とす
る。
ベクトル処理命令制御手段は、各CPU毎に対応した複
数の命令スタックと、転送された前記ベクトル処理命令
に含まれる前記発行元CPU情報を検出し、前記ベクト
ル処理命令を対応する前記命令スタックに格納する命令
発行元検出手段と、複数の前記複数の命令スタック毎
に、何れの命令スタックのベクトル処理命令に基づく命
令発行を優先するか決定する調停手段と、前記調停手段
による決定内容と前記ベクトル処理手段のリソース情報
に基づいて、前記ベクトル処理命令に基づく命令発行を
前記ベクトル処理手段に対して行なう命令発行処理手段
とを備えることを特徴とする。
リを共有する複数のCPUを備え、各CPUがスカラ処
理手段とベクトル処理手段を有してなる共有メモリ型ベ
クトル処理システムの制御方法において、前記各CPU
において、発行元のCPUを識別する発行元CPU情報
を付加したベクトル処理命令を発行し、相互に接続され
たパスを介して自CPUを含む全てのCPUに対して転
送し、転送された前記ベクトル処理命令に含まれる前記
発行元CPU情報と、自CPUのベクトルパイプライン
に関する構成情報とを比較し、転送された前記ベクトル
処理命令に対する処理内容を決定することを特徴とす
る。
リを共有する複数のCPUを備え、各CPUがスカラ処
理手段とベクトル処理手段を有してなる共有メモリ型ベ
クトル処理システムの制御方法において、前記各CPU
を、スカラ処理を実行すると共に、ベクトル処理命令を
他のCPUに対して発行するマスターCPUと、前記マ
スターCPUから転送されてきたベクトル処理命令を受
け取り、マスターCPU内のベクトル処理部と同期して
多重ベクトルパイプラインとして動作するスレーブCP
Uとに分けて設定し、前記マスターCPUにおいて、発
行元のCPUを識別する発行元CPU情報を付加した前
記ベクトル処理命令を発行し、相互に接続されたパスを
介して自CPUを含む全てのCPUに対して転送し、前
記マスターCPUとスレーブCPUにおいて、転送され
た前記ベクトル処理命令に含まれる前記発行元CPU情
報と自CPUに設定されたマスターCPU情報とを比較
し、比較結果が一致する場合に転送された前記ベクトル
処理命令に基づく命令発行を前記ベクトル処理手段に対
して行ない、一致しない場合に前記ベクトル処理命令の
無効化を行なうことを特徴とする。
リを共有する複数のCPUを備え、各CPUがスカラ処
理手段とベクトル処理手段を有してなる共有メモリ型ベ
クトル処理システムの制御方法において、前記各CPU
相互を、前記各CPUから生成するベクトル処理命令を
各CPUに転送するためのパスによって接続し、前記各
CPUにおいて、発行元のCPUを識別する発行元CP
U情報を付加したベクトル処理命令を発行し、前記パス
を介して自CPUを含む全てのCPUに対して転送し、
転送された前記ベクトル処理命令を、前記発行元CPU
情報に基づいて各CPU毎に対応した複数の命令スタッ
クに格納し、前記複数の命令スタック毎の優先順位と前
記ベクトル処理手段のリソース情報に基づいて、前記ベ
クトル処理命令に基づく命令発行を制御することを特徴
とする。
て図面を参照して詳細に説明する。図1は、本発明の第
1の実施の形態に係るベクトル処理システム全体の構成
図である。
は、複数のCPU10a〜10nを備え、これらのCP
U10a〜10nが単一の主記憶装置20を共有する共
有メモリ型並列処理システムを構成している。各CPU
10a〜10nは、ベクトルリクエストバス30を介し
て互いに接続され、相互にベクトル処理に関するリクエ
ストやリプライの送受信を行なうことができる。
を図2に基づいて説明する。
理部11、メモリアクセス命令制御部12、ベクトル処
理命令制御部13、複数のベクトル処理部14a〜14
n、そしてメモリアクセスネットワーク部15から構成
されている。
部処理命令「EX−RQ」は、メモリアクセス制御部1
2を通して、メモリアクセスネットワーク部15経由で
主記憶装置20へと転送されるか、ベクトルリクエスト
バス30を経由して全てのCPU10a〜10nのベク
トル処理命令制御部13へと送られ、ベクトル処理部1
4a〜14nへと発行される。
13の詳細な構成を示すブロック図である。
ジスタ42、43と、それらのレジスタ42、43の内
容の比較を行なう比較器45と、ベクトルリクエストバ
ス30経由で転送されてきたベクトル処理命令の内容を
分離する命令発行元情報抽出部41により得られたベク
トル処理命令の発行元情報と一方のレジスタ42の内容
を比較するための比較器44、命令無効化処理部46、
命令スタック47、リソース管理/命令発行処理部48
を有している。
クトル処理命令と比較器44の出力は、無効化処理部4
6に入力された後に、命令スタック47に格納される。
命令スタック47に格納されたベクトル処理命令は、ベ
クトル処理部14a〜14nからのリソース情報等と共
に、リソース管理/命令発行処理部48に入力されて、
ベクトル処理部14a〜14nに対して命令発行が行な
われる。
施の形態によるベクトル処理システムの動作について説
明する。
の解読を行ないスカラ処理命令の実行処理を行なう。こ
こで、主記憶装置20へのアクセス命令やベクトル処理
命令などといった、スカラ処理部11では実行処理でき
ない命令が出現した場合、スカラ処理部11はこれらの
命令を外部処理命令「EX−RQ」としてメモリアクセ
ス命令制御部12へと転送する。
ラ処理部11から受け取った外部処理命令「EX−R
Q」を解読し、主記憶アクセス系の命令「M−RQ」で
あれば、そのままメモリアクセスネットワーク部15に
対して命令の発行を行なう。
は、これをベクトルリクエストバス30に送出すると共
に、自身のベクトル処理命令制御部13に対してもベク
トルリクエストバス30を経由して発行を行なう。
アクセス命令制御部12から送られてきた自CPUが発
行したベクトル処理命令と他のCPUからベクトルリク
エストバス30を経由して転送されてきたベクトル処理
命令とを受け取り、自CPU内のベクトル処理部14a
〜14nに対してそのリソース状態を管理しながら命令
を発行する。
モリアクセス命令制御部12からの主記憶アクセス命令
「M−RQ」を受け取り、主記憶装置20に対して命令
を発行すると共に、主記憶装置20からの読み出しデー
タを受け取り、命令種別に応じてデータをスカラ処理部
11もしくはベクトル処理部14a〜14nに対して戻
す。
して、ベクトル処理命令制御部13の動作について述べ
る。
たベクトル処理命令は、命令発行元情報抽出部41にて
命令を送出したCPUに関する情報とベクトル処理命令
本体とに分離される(ステップ401)。
Uに対してマスターとして外部より設定されたCPUの
番号を記憶しているレジスタ42と、自CPU番号を記
憶しているレジスタ43とが備えられている。これら2
つのレジスタ42、43に対しては、システムの起動前
に初期化動作として上記番号をそれぞれ設定しておくも
のとする。
システムの各CPU10a〜10nをマスターCPUと
スレーブCPUとに分けて設定する。マスターCPUは
スカラ処理を実行すると共に、ベクトル処理命令を他の
CPUに対して発行することができる。これに対してス
レーブCPUは、マスターCPUから転送されてきたベ
クトル処理命令を受け取り、マスターCPU内のベクト
ル処理部14a〜14nと同期して多重ベクトルパイプ
ラインとして動作することになる。この時、スレーブC
PUのスカラ処理部11は休止状態として、そのベクト
ル処理部14a〜14nとベクトル処理命令制御部1
3、及びメモリアクセスネットワーク部15のみが有効
に機能することになる。
2と自CPU番号を格納したレジスタ43の内容は、比
較器45で比較され(ステップ402)、不一致の場合
には、自CPUがスレーブCPUであると判断され、自
CPUのスカラ処理部11に対して動作を停止するよう
制御する(ステップ403)。
て転送されたベクトル処理命令から命令発行元情報抽出
部41において取り出された命令発行元CPU番号と、
マスターCPU番号を格納しているレジスタ42の内容
とが、もう1つの比較器44で比較される(ステップ4
04)。この際の比較結果と、命令発行元情報抽出部4
1にて分離されたベクトル処理命令は、無効化処理部4
6に入力される(ステップ405)。
ていた場合(ステップ406)、入力されたベクトル処
理命令はスレーブとして動作している自CPUのマスタ
ーCPUから発行されたベクトル処理命令ではないた
め、無効化処理部46にて無効化される(ステップ40
7)。具体的には、比較器44による比較結果に応じ
て、ベクトル処理命令に有効又は無効を示すフラグを付
し、無効化処理部46では、そのフラグによって有効な
ベクトル処理命令のみを命令スタック47に格納する。
無効なベクトル処理命令は命令スタック47に格納しな
い。
PUとして動作しており、転送されてきたベクトル処理
命令が自CPUの発行した命令であれば、比較器44の
結果は一致を示すので無効化されることはない。
クトル処理命令は、自CPU内のベクトル処理部14a
〜14nで処理すべき命令であることから、命令スタッ
ク47に受付順に格納される(ステップ408)。無効
化されたベクトル処理命令は、命令スタック47に格納
されずに破棄される。
自CPU内のベクトル処理部のリソース14a〜14n
を管理している。命令スタック47に格納された命令
は、このリソース管理/命令発行処理部48において優
先順位、ならびにベクトル処理部14a〜14nのリソ
ース状況に応じて、発行が可能な順に自CPUのベクト
ル処理部14a〜14nに対して命令発行が行なわれる
(ステップ409)。ここでは、命令スタック47への
格納順には従わずに命令の追い越し発行も可能である。
処理が終了した時点で、処理の終了がマスタCPUに通
知される。マスタCPUでは、全てのスレーブCPUか
らの終了通知を受け取ったことを確認した上で次のベク
トル処理命令の発行を行なうことになる。
CPUと、このCPU番号をマスターCPU番号として
記憶している複数のCPUは、一体となって動作する多
重ベクトルパイプラインのプロセッサと見なすことがで
きるようになる。
1だけが機能しており、スレーブCPUのスカラ処理部
11はベクトル処理命令制御部13からの制御信号「H
ALT」により機能が停止されている。
行されたベクトル処理命令は、ベクトルリクエストバス
30を通して自CPUを含めてスレーブCPUの各ベク
トル処理命令制御部13において有効と判断され、これ
ら複数のCPUにおけるベクトル処理部14a〜14n
において並列動作によって処理されることになる。
部が存在する場合、主記憶装置20を共有しているCP
U数を32とすると、通常は「1スカラ処理部+1ベク
トル処理部」のCPUが32個存在するシステムとして
固定化されてしまうが、1つのマスターCPUに1つの
スレーブCPUを対応させた場合、「1スカラ処理部+
2ベクトル処理部」のCPUが16個存在するシステム
のように動作させることが可能となる。
設定内容により、「1スカラ処理部+1ベクトル処理
部」のCPUと「1スカラ処理部+4ベクトル処理部」
のCPUを1つのシステムの中に混在させるような構成
も取ることができる。すなわち、マスターCPUとスレ
ーブCPUの設定内容により、種々の構成を構築できる
ようになる。
処理システムについて説明する。
処理システムのベクトル処理命令制御部13の構成を示
すブロック図である。ベクトル処理命令制御部13以外
の構成については、上述の第1の実施の形態と同様であ
る。
は、マスターCPU番号を記憶しているレジスタ42a
と自CPU番号を記憶しているレジスタ43aを有して
おり、この2つのレジスタ42a、43aの内容を比較
する比較器44aの出力に基づいて自CPUのスカラ処
理部11の機能を停止させることについては、図3の構
成の場合と同じである。また、このベクトル処理命令制
御部13には、レジスタ42aのマスターCPU番号と
ベクトル処理命令に含まれる発行元CPU情報とを比較
する機能と、比較結果に基づいて命令発行を制御する機
能を有するリソース管理/命令発行制御部48aが備え
られている。
図6のフローチャートを参照して説明する。この構成例
では、図6に示すように、ベクトルリクエストバス30
を通って転送されてきたベクトル処理命令は、何も処理
をせずそのまま命令スタック47aに順番に格納される
(ステップ601)。従って、命令スタック47aに
は、ベクトル処理命令と共に、発行元CPU情報を格納
しておくレコードが設けられている。
スタ42aと自CPU番号を格納したレジスタ43aの
内容は、比較器45aで比較され(ステップ602)、
不一致の場合には、自CPUがスレーブCPUであると
判断され、自CPUのスカラ処理部11に対して動作を
停止するよう制御する(ステップ603)。
aでは、ベクトル処理部への命令発行を行なう際に、ベ
クトル処理命令に付随している発行元CPU情報と、マ
スターCPU番号を記憶しているレジスタ42aの内容
を比較することにより(ステップ604)、番号が不一
致である場合には不適切なベクトル処理命令の発行を抑
止すると共に、命令スタック47a中の該当エリアを解
放する(ステップ605)。すなわち、命令スタック4
7aに格納する前に無効化処理を行なうのではなく、実
際に命令発行を行なう際に無効化処理を行なうように構
成している。
施の形態におけるリソース管理/命令発行制御部48と
同様に、命令スタック47aに格納された命令が、優先
順位、ならびにベクトル処理部14a〜14nのリソー
ス状況に応じて、発行が可能な順に自CPUのベクトル
処理部14a〜14nに対して命令発行が行なわれる
(ステップ606)。
クトル処理命令の命令発行元CPU番号を抽出する命令
発行元情報抽出部41、命令発行元CPU番号とマスタ
CPU番号を比較する比較器44及び比較結果によって
ベクトル処理命令の無効化を行なう無効化処理部46を
備えることで命令スタック47に無効なベクトル処理命
令を格納しない構成としたのに対して、この第2の実施
の形態では、送られた発行元CPU情報を含むベクトル
処理命令を全て命令スタック47aに格納し、リソース
管理命令発行処理部48aによる命令発行処理の段階
で、適切なベクトル処理命令のみを発行し、不適切なベ
クトル処理命令について命令スタック47aのエリアを
解放する構成としている。従って、第1の実施の形態と
第2の実施の形態とを比較した場合、ハードウェア量に
ついては第2に実施の形態の方が少なくて済み、命令ス
タックの記憶容量については第1の実施の形態の方が小
さくすることができる。
構成として複数の独立したスカラ処理部から共有される
多重ベクトルパイプラインという構成も可能である。す
なわち、複数のプロセッサ中に存在するベクトルパイプ
ラインを全てまとめて1つの多重ベクトルパイプライン
と見なし、独立する各プロセッサのスカラ処理部から単
一のベクトルパイプラインを共有しているように動作す
るシステム構成である。
クトル処理システムのベクトル処理命令制御部13の構
成を図7に示す。なお、ベクトル処理命令制御部13以
外の構成については、上述した第1の実施の形態と同一
であるので共通の符号を付して説明を省略する。
テムにおいて、ベクトル処理命令制御部13は、命令発
行元検出部61と、各CPU毎に設けられた命令スタッ
ク63a〜63nと、命令スタック63a〜63nに設
定された優先順位に基づいて発行順の調停を行なう調停
部62と、リソース管理/命令発行処理部64とで構成
される。
令制御部13の動作を図8のフローチャートを参照して
説明する。
されてくるベクトル処理命令は、命令発行元検出部61
を経由して各CPU毎に設けられた命令スタック63a
〜63nに格納される。格納されたベクトル処理命令
は、調停部62による調停結果と各ベクトル処理部14
a〜12nからのリソース情報「V−RP」と共に、リ
ソース管理/命令発行制御部64に入力された後に各ベ
クトル処理部14a〜14nに対して発行される。
通して転送されてきたベクトル処理命令は、命令発行元
検出部61で発行元のCPU番号が検査される(ステッ
プ801)。その後、ベクトル処理命令は、発行元CP
U毎に設けられた命令スタック63a〜63nに分かれ
て格納される(ステップ802)。
3nから命令を発行するかどうかを、優先順位によって
競合調停する調停部62により決定する(ステップ80
3)。調停部62は、例えばラウンドロビン方式によっ
て何れかの命令スタック63a〜63nから命令を発行
するかを決定する。この調停部62の出力と、各ベクト
ル処理部のリソース情報とを用いて、リソース管理/命
令発行制御部64で発行命令を決定する(ステップ80
4)。
理命令については、命令スタックへの格納順序を越えて
追い越し発行することはできないが、発行元CPUが異
なっていればリソースの状況によって追い越し発行を行
なってもデータ競合は起こらないため問題にはならな
い。従って、各命令スタック間での格納順序について
は、特に記憶しておく必要はない。また、発行元CPU
が同一のベクトル処理命令に関しても、アクセスアドレ
スを比較することで同一アドレスに対するアクセスを回
避するための相応のリソース管理手段を準備すれば、追
い越し発行が可能である。
トル処理命令は全てのCPUのベクトル処理命令制御部
に転送され発行処理が行なわれることになる。この時ベ
クトル処理命令の発行元CPU別に管理されるため、各
CPUに存在するベクトル処理部は全CPUで統合され
た単一のベクトル処理部として、全CPUのスカラ処理
部から共有されているように動作することになる。
ウェア的に実現することは勿論として、図2に示すよう
に、磁気ディスク、半導体メモリその他の記録媒体18
に記録された、上述した各機能を実現するための制御プ
ログラムによってソフトウェア的に実現することも可能
である。この制御プログラムは、記録媒体18からCP
Uに読み込まれ、CPUの動作を制御することにより、
上述したベクトル処理命令制御の機能を実現する。すな
わち、図4、図6及び図8に示される処理を実行する。
されるものではなく、その技術思想の範囲内において様
々に変形して実施することができる。例えば、図1にお
けるシステム全体構成図において、各CPU10a〜1
0n間でベクトル処理命令を転送するためのベクトルリ
クエストバス30は、単一バスとして記述されている。
しかしながら、この転送手段は単一バスに限定されるも
のではなく、多重バスやクロスバスイッチなどあらゆる
接続手段によって実現できることは明らかである。
理システムとその制御方法によれば、以下に述べるよう
な効果が得られる。
ブとなるプロセッサとの割り当て方法を変更することに
より、スカラ処理部に付随するベクトルパイプライン数
を用途に応じて柔軟に変更できる構成としたので、ベク
トル化率やベクトル長の異なる様々なアプリケーション
に対して最適な多重ベクトルパイプライン構成を有する
ベクトル処理システムを提供することができる。
処理命令を全てのCPUに転送するパスを設け、各CP
Uのベクトル処理命令制御手段で転送されてきたベクト
ル処理命令とその発行元CPU情報を読みとり、自CP
Uがスレーブ状態にある場合に記憶しているマスターC
PU番号と発行元CPU番号が一致した場合にだけ転送
されてきたベクトル処理命令を処理することができるた
めである。
Uの中からマスターCPUとスレーブCPUの組み合わ
せを変更することで、例えば、各CPUを全てマスター
CPUとして自CPUのベクトル処理命令を自CPUだ
けで処理する最もスカラスループット性能を重視した構
成から、1つのマスターCPUに対して残りの全てのC
PUを全てスレーブCPUとして動作される大規模でか
つベクトル長が極めて長い処理向きの構成まで、柔軟に
システムを変更できる。
システム形態として、よりスカラ処理性能を重視したア
プリケーション向けに、複数のスカラ処理手段から共有
される単一のベクトル処理手段を有した共有メモリ型並
列処理システムを提供することができる。
にCPU毎のベクトル処理命令スタックを準備し、各C
PU間で転送されてきたベクトル処理命令をその発行元
CPU毎に分類して命令スタックに格納して、各命令ス
タック内の命令の競合を調停しながら順次ベクトル処理
部に対してベクトル処理命令を発行することで、全CP
U中に存在するベクトル処理手段があたかも単一のベク
トル処理手段として全てのCPUから共有されているよ
うに動作することが出来るためである。
が極めて低いスカラスループット性能重視のアプリケー
ション分野に対しても、ベクトル処理リソースを有効利
用してより効率の良い処理が可能なシステムを提供する
ことができる。
段とを1チップに集積化したLSIを開発することが可
能になり、開発工数やコストを軽減することができる。
トルパイプラインの構成を外部からの設定により柔軟に
変更できるようになったために、これまでは困難であっ
たスカラ処理手段とベクトル処理手段を同一のLSIに
集積化することが可能になり、その結果LSIの開発品
種数が削減できることによる。
理システム全体の構成図である。
ステムの各CPUの詳細な構成を示すブロック図であ
る。
ステムのベクトル処理命令制御部の詳細を示すブロック
図である。
ステムのベクトル処理命令制御部の動作を説明するフロ
ーチャートである。
ムのベクトル処理命令制御部の構成を示すブロック図で
ある。
ステムのベクトル処理命令制御部の動作を説明するフロ
ーチャートである。
ムのベクトル処理命令制御部の構成を示すブロック図で
ある。
ステムのベクトル処理命令制御部の動作を説明するフロ
ーチャートである。
いた共有メモリ型並列処理システムの構成を示すブロッ
ク図である。
の構成を示すブロック図である。
Claims (28)
- 【請求項1】 主記憶メモリを共有する複数のCPUを
備え、各CPUがスカラ処理手段とベクトル処理手段を
有してなる共有メモリ型ベクトル処理システムにおい
て、 前記CPUをマスターCPUと、複数のスレーブCPU
とに分けて設定し、 前記マスタCPUの前記スカラ処理手段に付随して、前
記複数のスレーブCPUの前記ベクトル処理手段を多重
ベクトルパイプラインとして動作させることを特徴とす
る共有メモリ型ベクトル処理システム。 - 【請求項2】 主記憶メモリを共有する複数のCPUを
備え、各CPUがスカラ処理手段とベクトル処理手段を
有してなる共有メモリ型ベクトル処理システムにおい
て、 複数の前記CPUの前記ベクトル処理手段を全てまとめ
て単一の多重ベクトルパイプラインと見なし、前記各C
PUの各スカラ処理手段から前記単一の多重ベクトルパ
イプラインを共有しているように動作させることを特徴
とするベクトル処理システム。 - 【請求項3】 主記憶メモリを共有する複数のCPUを
備え、各CPUがスカラ処理手段とベクトル処理手段を
有してなる共有メモリ型ベクトル処理システムにおい
て、 前記各CPU相互を、前記各CPUから生成するベクト
ル処理命令を各CPUに転送するためのパスによって接
続し、 前記各CPUは、 発行元のCPUを識別する発行元CPU情報を付加した
ベクトル処理命令を発行し、前記パスを介して自CPU
を含む全てのCPUに対して転送する発行手段と、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報と、自CPUのベクトルパイプラインに関す
る構成情報とを比較し、転送された前記ベクトル処理命
令に対する処理内容を決定するベクトル処理命令制御手
段とを備えることを特徴とする共有メモリ型ベクトル処
理システム。 - 【請求項4】 主記憶メモリを共有する複数のCPUを
備え、各CPUがスカラ処理手段とベクトル処理手段を
有してなる共有メモリ型ベクトル処理システムにおい
て、 前記各CPU相互を、前記各CPUから生成するベクト
ル処理命令を各CPUに転送するためのパスによって接
続し、 前記各CPUを、スカラ処理を実行すると共に、ベクト
ル処理命令を他のCPUに対して発行するマスターCP
Uと、前記マスターCPUから転送されてきたベクトル
処理命令を受け取り、マスターCPU内のベクトル処理
部と同期して多重ベクトルパイプラインとして動作する
スレーブCPUとに分けて設定し、 前記マスターCPUは、 発行元のCPUを識別する発行元CPU情報を付加した
前記ベクトル処理命令を発行し、前記パスを介して自C
PUを含む全てのCPUに対して転送する発行手段を備
え、 前記マスターCPUとスレーブCPUは、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報と自CPUに設定されたマスターCPU情報
とを比較し、一致する場合に転送された前記ベクトル処
理命令に基づく命令発行を前記ベクトル処理手段に対し
て行ない、一致しない場合に前記ベクトル処理命令の無
効化を行なうベクトル処理命令制御手段を備えることを
特徴とする共有メモリ型ベクトル処理システム。 - 【請求項5】 前記マスターCPUとスレーブCPUの
前記ベクトル処理命令制御手段は、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報と、自CPUに設定されたマスターCPU情
報とを比較する比較手段と、 転送された前記ベクトル処理命令を格納する命令スタッ
クと、 前記比較手段よる比較結果が一致の場合、前記ベクトル
処理命令を命令スタックに格納し、比較結果が不一致の
場合、前記前記ベクトル処理命令を無効化する無効化処
理手段と、 前記ベクトル処理部のリソース状態に基づいて、前記命
令スタックに格納された前記ベクトル処理命令に基づく
命令発行を前記ベクトル処理手段に対して行なう命令発
行処理手段とを備えることを特徴とする請求項4に記載
の共有メモリ型ベクトル処理システム。 - 【請求項6】 前記マスターCPUとスレーブCPUの
前記ベクトル処理命令制御手段は、 転送された前記ベクトル処理命令を前記ベクトル処理命
令自体と前記発行元CPU情報に分離して出力する抽出
手段と、 分離された前記発行元CPU情報と、自CPUに設定さ
れたマスターCPU情報とを比較する比較手段と、 前記比較手段よる比較結果が一致の場合、前記抽出手段
からの前記ベクトル処理命令を命令スタックに格納し、
比較結果が不一致の場合、前記前記ベクトル処理命令を
無効化する無効化処理手段と、 前記ベクトル処理部のリソース状態に基づいて、前記命
令スタックに格納された前記ベクトル処理命令に基づく
命令発行を前記ベクトル処理手段に対して行なう命令発
行処理手段とを備えることを特徴とする請求項4に記載
の共有メモリ型ベクトル処理システム。 - 【請求項7】 前記マスターCPUとスレーブCPUの
前記ベクトル処理命令制御手段は、 転送された前記ベクトル処理命令を格納する命令スタッ
クと、 前記命令スタックに格納された前記ベクトル処理命令に
含まれる前記発行元CPU情報と、自CPUに設定され
たマスターCPU情報とを比較し、比較結果が一致の場
合、前記ベクトル処理命令に基づく命令発行を前記ベク
トル処理手段に対して行ない、比較結果が不一致の場
合、前記ベクトル処理命令に基づく命令発行を抑止し前
記命令スタックの該当エリアを解放する命令発行処理手
段とを備えることを特徴とする請求項4に記載の共有メ
モリ型ベクトル処理システム。 - 【請求項8】 前記命令スタックには、前記発行元CP
U情報を含んだ状態で前記ベクトル処理命令を格納する
ことを特徴とする請求項7に記載の共有メモリ型ベクト
ル処理システム。 - 【請求項9】 前記マスターCPUとスレーブCPUの
前記ベクトル処理命令制御手段は、 自CPUがスレーブCPUである場合に、自CPUの前
記スカラ処理手段の動作を停止させる停止手段を備える
ことを特徴とする請求項3乃至請求項8に記載の共有メ
モリ型ベクトル処理システム。 - 【請求項10】 前記停止手段は、 自CPUに対するマスターCPUと機能するCPUを示
すマスターCPU情報と、自CPUのCPU情報を格納
する格納手段と、 前記ベクトル処理命令が転送された際に、前記格納手段
に格納されたマスターCPU情報と自CPU情報とを比
較し、不一致の場合に、自CPUの前記スカラ処理手段
の動作停止信号を出力する比較手段とで構成されること
を特徴とする請求項9に記載の共有メモリ型ベクトル処
理システム。 - 【請求項11】 主記憶メモリを共有する複数のCPU
を備え、各CPUがスカラ処理手段とベクトル処理手段
を有してなる共有メモリ型ベクトル処理システムにおい
て、 前記各CPU相互を、前記各CPUから生成するベクト
ル処理命令を各CPUに転送するためのパスによって接
続し、 前記各CPUは、 発行元のCPUを識別する発行元CPU情報を付加した
ベクトル処理命令を発行し、前記パスを介して自CPU
を含む全てのCPUに対して転送する発行手段と、 転送された前記ベクトル処理命令を、前記発行元CPU
情報に基づいて各CPU毎に対応した複数の命令スタッ
クに格納し、前記複数の命令スタック毎の優先順位と前
記ベクトル処理手段のリソース情報に基づいて、前記ベ
クトル処理命令に基づく命令発行を制御するベクトル処
理命令制御手段とを備えることを特徴とする共有メモリ
型ベクトル処理システム。 - 【請求項12】 前記各CPUのベクトル処理命令制御
手段は、 各CPU毎に対応した複数の命令スタックと、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報を検出し、前記ベクトル処理命令を対応する
前記命令スタックに格納する命令発行元検出手段と、 複数の前記複数の命令スタック毎に、何れの命令スタッ
クのベクトル処理命令に基づく命令発行を優先するか決
定する調停手段と、 前記調停手段による決定内容と前記ベクトル処理手段の
リソース情報に基づいて、前記ベクトル処理命令に基づ
く命令発行を前記ベクトル処理手段に対して行なう命令
発行処理手段とを備えることを特徴とする請求項11に
記載の共有メモリ型ベクトル処理システム。 - 【請求項13】 主記憶メモリを共有する複数のCPU
を備え、各CPUがスカラ処理手段とベクトル処理手段
を有してなる共有メモリ型ベクトル処理システムにおい
て、 前記CPUをマスターCPUと、複数のスレーブCPU
とし、 前記マスタCPUの前記スカラ処理手段に付随して、前
記複数のスレーブCPUの前記ベクトル処理手段を多重
ベクトルパイプラインとして動作させることを特徴とす
る共有メモリ型ベクトル処理システムの制御方法。 - 【請求項14】 主記憶メモリを共有する複数のCPU
を備え、各CPUがスカラ処理手段とベクトル処理手段
を有してなる共有メモリ型ベクトル処理システムにおい
て、 複数の前記CPUの前記ベクトル処理手段を全てまとめ
て単一の多重ベクトルパイプラインと見なし、前記各C
PUの各スカラ処理手段から前記単一の多重ベクトルパ
イプラインを共有しているように動作させることを特徴
とする共有メモリ型ベクトル処理システムの制御方法。 - 【請求項15】 主記憶メモリを共有する複数のCPU
を備え、各CPUがスカラ処理手段とベクトル処理手段
を有してなる共有メモリ型ベクトル処理システムにおい
て、 前記各CPUにおいて、 発行元のCPUを識別する発行元CPU情報を付加した
ベクトル処理命令を発行し、相互に接続されたパスを介
して自CPUを含む全てのCPUに対して転送し、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報と、自CPUのベクトルパイプラインに関す
る構成情報とを比較し、転送された前記ベクトル処理命
令に対する処理内容を決定することを特徴とする共有メ
モリ型ベクトル処理システムの制御方法。 - 【請求項16】 主記憶メモリを共有する複数のCPU
を備え、各CPUがスカラ処理手段とベクトル処理手段
を有してなる共有メモリ型ベクトル処理システムにおい
て、 前記各CPUを、スカラ処理を実行すると共に、ベクト
ル処理命令を他のCPUに対して発行するマスターCP
Uと、前記マスターCPUから転送されてきたベクトル
処理命令を受け取り、マスターCPU内のベクトル処理
部と同期して多重ベクトルパイプラインとして動作する
スレーブCPUとに分けて設定し、 前記マスターCPUにおいて、 発行元のCPUを識別する発行元CPU情報を付加した
前記ベクトル処理命令を発行し、相互に接続されたパス
を介して自CPUを含む全てのCPUに対して転送し、 前記マスターCPUとスレーブCPUにおいて、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報と自CPUに設定されたマスターCPU情報
とを比較し、 比較結果が一致する場合に転送された前記ベクトル処理
命令に基づく命令発行を前記ベクトル処理手段に対して
行ない、一致しない場合に前記ベクトル処理命令の無効
化を行なうことを特徴とする共有メモリ型ベクトル処理
システムの制御方法。 - 【請求項17】 前記マスターCPUとスレーブCPU
において、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報と、自CPUに設定されたマスターCPU情
報とを比較し、 比較結果が一致の場合、前記ベクトル処理命令を命令ス
タックに格納し、比較結果が不一致の場合、前記前記ベ
クトル処理命令を無効化し、 前記ベクトル処理手段のリソース状態に基づいて、前記
命令スタックに格納された前記ベクトル処理命令に基づ
く命令発行を前記ベクトル処理手段に対して行なうこと
を特徴とする請求項16に記載の共有メモリ型ベクトル
処理システムの制御方法。 - 【請求項18】 前記マスターCPUとスレーブCPU
において、 命令スタックに格納された前記ベクトル処理命令に含ま
れる前記発行元CPU情報と、自CPUに設定されたマ
スターCPU情報とを比較し、 比較結果が一致の場合、前記ベクトル処理命令に基づく
命令発行を前記ベクトル処理手段に対して行ない、比較
結果が不一致の場合、前記ベクトル処理命令に基づく命
令発行を抑止し前記命令スタックの該当エリアを解放す
ることを特徴とする請求項17に記載の共有メモリ型ベ
クトル処理システムの制御方法。 - 【請求項19】 自CPUがスレーブCPUである場合
に、自CPUの前記スカラ処理手段の動作を停止させる
ことを特徴とする請求項15乃至請求項18に記載の共
有メモリ型ベクトル処理システムの制御方法。 - 【請求項20】 主記憶メモリを共有する複数のCPU
を備え、各CPUがスカラ処理手段とベクトル処理手段
を有してなる共有メモリ型ベクトル処理システムにおい
て、 前記各CPU相互を、前記各CPUから生成するベクト
ル処理命令を各CPUに転送するためのパスによって接
続し、 前記各CPUにおいて、 発行元のCPUを識別する発行元CPU情報を付加した
ベクトル処理命令を発行し、前記パスを介して自CPU
を含む全てのCPUに対して転送し、 転送された前記ベクトル処理命令を、前記発行元CPU
情報に基づいて各CPU毎に対応した複数の命令スタッ
クに格納し、前記複数の命令スタック毎の優先順位と前
記ベクトル処理手段のリソース情報に基づいて、前記ベ
クトル処理命令に基づく命令発行を制御することを特徴
とする共有メモリ型ベクトル処理システムの制御方法。 - 【請求項21】 前記各CPUにおいて、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報を検出し、前記ベクトル処理命令を対応する
命令スタックに格納し、 複数の前記複数の命令スタック毎に、何れの命令スタッ
クのベクトル処理命令に基づく命令発行を優先するか決
定し、 前記決定内容と前記ベクトル処理手段のリソース情報に
基づいて、前記ベクトル処理命令に基づく命令発行を前
記ベクトル処理手段に対して行なうことを特徴とする請
求項20に記載の共有メモリ型ベクトル処理システムの
制御方法。 - 【請求項22】 主記憶メモリを共有する複数のCPU
を備え、各CPUがスカラ処理手段とベクトル処理手段
を有してなる共有メモリ型ベクトル処理システムの制御
を行なう制御プログラムを格納する記憶媒体において、 前記制御プログラムは、 発行元のCPUを識別する発行元CPU情報を付加した
ベクトル処理命令を発行し、相互に接続されたパスを介
して自CPUを含む全てのCPUに対して転送し、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報と、自CPUのベクトルパイプラインに関す
る構成情報とを比較し、転送された前記ベクトル処理命
令に対する処理内容を決定することを特徴とする共有メ
モリ型ベクトル処理システムの制御プログラムを格納す
る記憶媒体。 - 【請求項23】 主記憶メモリを共有する複数のCPU
を備え、各CPUがスカラ処理手段とベクトル処理手段
を有してなる共有メモリ型ベクトル処理システムの制御
を行なう制御プログラムを格納する記憶媒体において、 前記制御プログラムは、 前記各CPUを、スカラ処理を実行すると共に、ベクト
ル処理命令を他のCPUに対して発行するマスターCP
Uと、前記マスターCPUから転送されてきたベクトル
処理命令を受け取り、マスターCPU内のベクトル処理
部と同期して多重ベクトルパイプラインとして動作する
スレーブCPUとに分けて設定し、 前記マスターCPUにおいて、 発行元のCPUを識別する発行元CPU情報を付加した
前記ベクトル処理命令を発行し、前記パスを介して自C
PUを含む全てのCPUに対して転送し、 前記マスターCPUとスレーブCPUにおいて、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報と自CPUに設定されたマスターCPU情報
とを比較し、 比較結果が一致する場合に転送された前記ベクトル処理
命令に基づく命令発行を前記ベクトル処理手段に対して
行ない、一致しない場合に前記ベクトル処理命令の無効
化を行なうことを特徴とする共有メモリ型ベクトル処理
システムの制御プログラムを格納する記憶媒体。 - 【請求項24】 前記制御プログラムは、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報と、自CPUに設定されたマスターCPU情
報とを比較し、 比較結果が一致の場合、前記ベクトル処理命令を命令ス
タックに格納し、比較結果が不一致の場合、前記前記ベ
クトル処理命令を無効化し、 前記ベクトル処理手段のリソース状態に基づいて、前記
命令スタックに格納された前記ベクトル処理命令に基づ
く命令発行を前記ベクトル処理手段に対して行なうこと
を特徴とする請求項23に記載の共有メモリ型ベクトル
処理システムの制御プログラムを格納する記憶媒体。 - 【請求項25】 前記制御プログラムは、 命令スタックに格納された前記ベクトル処理命令に含ま
れる前記発行元CPU情報と、自CPUに設定されたマ
スターCPU情報とを比較し、 比較結果が一致の場合、前記ベクトル処理命令に基づく
命令発行を前記ベクトル処理手段に対して行ない、比較
結果が不一致の場合、前記ベクトル処理命令に基づく命
令発行を抑止し前記命令スタックの該当エリアを解放す
ることを特徴とする請求項23に記載の共有メモリ型ベ
クトル処理システムの制御プログラムを格納する記憶媒
体。 - 【請求項26】 前記制御プログラムは、 自CPUがスレーブCPUである場合に、自CPUの前
記スカラ処理手段の動作を停止させることを特徴とする
請求項22乃至請求項25に記載の共有メモリ型ベクト
ル処理システムの制御プログラムを格納する記憶媒体。 - 【請求項27】 主記憶メモリを共有する複数のCPU
を備え、各CPUがスカラ処理手段とベクトル処理手段
を有してなる共有メモリ型ベクトル処理システムの制御
を行なう制御プログラムを格納する記憶媒体において、 前記制御プログラムは、 発行元のCPUを識別する発行元CPU情報を付加した
ベクトル処理命令を発行し、相互に接続されるパスを介
して自CPUを含む全てのCPUに対して転送し、 転送された前記ベクトル処理命令を、前記発行元CPU
情報に基づいて各CPU毎に対応した複数の命令スタッ
クに格納し、前記複数の命令スタック毎の優先順位と前
記ベクトル処理手段のリソース情報に基づいて、前記ベ
クトル処理命令に基づく命令発行を制御することを特徴
とする共有メモリ型ベクトル処理システムの制御プログ
ラムを格納する記憶媒体。 - 【請求項28】 前記制御プログラムは、 転送された前記ベクトル処理命令に含まれる前記発行元
CPU情報を検出し、前記ベクトル処理命令を対応する
命令スタックに格納し、 複数の前記複数の命令スタック毎に、何れの命令スタッ
クのベクトル処理命令に基づく命令発行を優先するか決
定し、 前記決定内容と前記ベクトル処理手段のリソース情報に
基づいて、前記ベクトル処理命令に基づく命令発行を前
記ベクトル処理手段に対して行なうことを特徴とする請
求項27に記載の共有メモリ型ベクトル処理システムの
制御プログラムを格納する記憶媒体。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP37541098A JP3344345B2 (ja) | 1998-12-15 | 1998-12-15 | 共有メモリ型ベクトル処理システムとその制御方法及びベクトル処理の制御プログラムを格納する記憶媒体 |
US09/459,565 US6782468B1 (en) | 1998-12-15 | 1999-12-13 | Shared memory type vector processing system, including a bus for transferring a vector processing instruction, and control method thereof |
CA002292230A CA2292230A1 (en) | 1998-12-15 | 1999-12-14 | Shared memory type vector processing system and control method thereof |
AU64508/99A AU765469B2 (en) | 1998-12-15 | 1999-12-14 | Shared memory type vector processing system and control method thereof |
BR9915456-0A BR9915456A (pt) | 1998-12-15 | 1999-12-15 | Sistema de processamento de vetor tipo de memória compartilhada e método para compartilhá-la |
EP99250439A EP1011052A3 (en) | 1998-12-15 | 1999-12-15 | Shared memory type vector processing system and control method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP37541098A JP3344345B2 (ja) | 1998-12-15 | 1998-12-15 | 共有メモリ型ベクトル処理システムとその制御方法及びベクトル処理の制御プログラムを格納する記憶媒体 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002205719A Division JP3760995B2 (ja) | 2002-07-15 | 2002-07-15 | 共有メモリ型ベクトル処理システムとその制御方法及びベクトル処理の制御プログラムを格納する記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000181878A true JP2000181878A (ja) | 2000-06-30 |
JP3344345B2 JP3344345B2 (ja) | 2002-11-11 |
Family
ID=18505478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP37541098A Expired - Fee Related JP3344345B2 (ja) | 1998-12-15 | 1998-12-15 | 共有メモリ型ベクトル処理システムとその制御方法及びベクトル処理の制御プログラムを格納する記憶媒体 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6782468B1 (ja) |
EP (1) | EP1011052A3 (ja) |
JP (1) | JP3344345B2 (ja) |
AU (1) | AU765469B2 (ja) |
BR (1) | BR9915456A (ja) |
CA (1) | CA2292230A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009527815A (ja) * | 2006-02-16 | 2009-07-30 | ブイエヌエス ポートフォリオ リミテッド ライアビリティ カンパニー | 高められた動作効率を有するコンピュータシステム |
JP2009527816A (ja) * | 2006-02-16 | 2009-07-30 | ブイエヌエス ポートフォリオ リミテッド ライアビリティ カンパニー | コンピュータへの入力を監視する方法および装置 |
US7913069B2 (en) | 2006-02-16 | 2011-03-22 | Vns Portfolio Llc | Processor and method for executing a program loop within an instruction word |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3564445B2 (ja) | 2001-09-20 | 2004-09-08 | 松下電器産業株式会社 | プロセッサ、コンパイル装置及びコンパイル方法 |
US7577816B2 (en) * | 2003-08-18 | 2009-08-18 | Cray Inc. | Remote translation mechanism for a multinode system |
US6877832B2 (en) * | 2003-03-11 | 2005-04-12 | Hewlett-Packard Development Company, L.P. | Instruction architecture using two instruction stacks |
US7421565B1 (en) | 2003-08-18 | 2008-09-02 | Cray Inc. | Method and apparatus for indirectly addressed vector load-add -store across multi-processors |
US7543133B1 (en) * | 2003-08-18 | 2009-06-02 | Cray Inc. | Latency tolerant distributed shared memory multiprocessor computer |
US7743223B2 (en) * | 2003-08-18 | 2010-06-22 | Cray Inc. | Decoupling of write address from its associated write data in a store to a shared memory in a multiprocessor system |
US7334110B1 (en) | 2003-08-18 | 2008-02-19 | Cray Inc. | Decoupled scalar/vector computer architecture system and method |
US7735088B1 (en) | 2003-08-18 | 2010-06-08 | Cray Inc. | Scheduling synchronization of programs running as streams on multiple processors |
US7437521B1 (en) | 2003-08-18 | 2008-10-14 | Cray Inc. | Multistream processing memory-and barrier-synchronization method and apparatus |
US8307194B1 (en) | 2003-08-18 | 2012-11-06 | Cray Inc. | Relaxed memory consistency model |
US7366873B1 (en) | 2003-08-18 | 2008-04-29 | Cray, Inc. | Indirectly addressed vector load-operate-store method and apparatus |
US7519771B1 (en) | 2003-08-18 | 2009-04-14 | Cray Inc. | System and method for processing memory instructions using a forced order queue |
US7937557B2 (en) * | 2004-03-16 | 2011-05-03 | Vns Portfolio Llc | System and method for intercommunication between computers in an array |
US7478769B1 (en) | 2005-03-09 | 2009-01-20 | Cray Inc. | Method and apparatus for cooling electronic components |
US7904695B2 (en) | 2006-02-16 | 2011-03-08 | Vns Portfolio Llc | Asynchronous power saving computer |
US20070074008A1 (en) * | 2005-09-28 | 2007-03-29 | Donofrio David D | Mixed mode floating-point pipeline with extended functions |
US7904615B2 (en) * | 2006-02-16 | 2011-03-08 | Vns Portfolio Llc | Asynchronous computer communication |
GB2484907B (en) * | 2010-10-21 | 2014-07-16 | Bluwireless Tech Ltd | Data processing systems |
GB2484905B (en) * | 2010-10-21 | 2014-07-16 | Bluwireless Tech Ltd | Data processing systems |
WO2012052774A2 (en) * | 2010-10-21 | 2012-04-26 | Bluwireless Technology Limited | Data processing units |
GB2484902A (en) * | 2010-10-21 | 2012-05-02 | Bluwireless Tech Ltd | Data processing system with a plurality of data processing units each with scalar processor, vector processor array, parity and FFT accelerator units |
GB2484906A (en) * | 2010-10-21 | 2012-05-02 | Bluwireless Tech Ltd | Data processing unit with scalar processor and vector processor array |
GB2484901A (en) * | 2010-10-21 | 2012-05-02 | Bluwireless Tech Ltd | Data processing unit with scalar processor, vector processor array, parity and FFT accelerator units |
GB2484904A (en) * | 2010-10-21 | 2012-05-02 | Bluwireless Tech Ltd | Data processing system with a plurality of data processing units and a task-based scheduling scheme |
GB2484899A (en) * | 2010-10-21 | 2012-05-02 | Bluwireless Tech Ltd | Data processing system with a plurality of data processing units and a task-based scheduling scheme |
WO2012052773A1 (en) * | 2010-10-21 | 2012-04-26 | Bluwireless Technology Limited | Data processing systems |
JP5971635B2 (ja) | 2011-01-25 | 2016-08-17 | エヌエックスピー カナダ インコーポレイテッド | ベクトルユニット共有の装置および方法 |
EP2757468A1 (en) * | 2013-01-22 | 2014-07-23 | Siemens Aktiengesellschaft | Apparatus and method for managing a software development and maintenance system |
US10095641B2 (en) | 2015-09-23 | 2018-10-09 | Hanan Potash | Processor with frames/bins structure in local high speed memory |
US10061511B2 (en) | 2015-09-23 | 2018-08-28 | Hanan Potash | Computing device with frames/bins structure, mentor layer and plural operand processing |
US10067878B2 (en) | 2015-09-23 | 2018-09-04 | Hanan Potash | Processor with logical mentor |
US10140122B2 (en) | 2015-09-23 | 2018-11-27 | Hanan Potash | Computer processor with operand/variable-mapped namespace |
TWI588658B (zh) * | 2015-10-20 | 2017-06-21 | 旺宏電子股份有限公司 | I/o匯流排共用記憶體系統 |
US11093286B2 (en) * | 2016-04-26 | 2021-08-17 | Hanan Potash | Computing device with resource manager and civilware tier |
DE112018002561B3 (de) | 2017-04-21 | 2022-01-05 | Zenimax Media Inc. | Systeme und Verfahren zur Spielereingabe-Bewegungskompensation in einem Client-Server-Videospiel |
CN110889081A (zh) * | 2019-11-25 | 2020-03-17 | 国网河南省电力公司驻马店供电公司 | 一种新能源并网***谐波谐振快速获取方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59106075A (ja) | 1982-12-10 | 1984-06-19 | Hitachi Ltd | デ−タ処理システム |
JPS6310263A (ja) | 1986-07-02 | 1988-01-16 | Hitachi Ltd | ベクトル処理装置 |
US5010477A (en) * | 1986-10-17 | 1991-04-23 | Hitachi, Ltd. | Method and apparatus for transferring vector data between parallel processing system with registers & logic for inter-processor data communication independents of processing operations |
JP2900359B2 (ja) * | 1986-10-30 | 1999-06-02 | 株式会社日立製作所 | マルチプロセッサシステム |
JPH06103494B2 (ja) | 1986-11-18 | 1994-12-14 | 株式会社日立製作所 | ベクトル処理装置の制御方式 |
JP2646113B2 (ja) | 1988-07-23 | 1997-08-25 | 富士通株式会社 | マシンチェック処理方法および装置 |
JP2658397B2 (ja) * | 1989-06-13 | 1997-09-30 | 日本電気株式会社 | マルチプロセッサシステム |
JPH0346078A (ja) | 1989-07-13 | 1991-02-27 | Fujitsu Ltd | ベクトル処理システム |
JPH0484256A (ja) | 1990-07-26 | 1992-03-17 | Fujitsu Ltd | 使用権切換え制御方式 |
US5828894A (en) * | 1990-11-13 | 1998-10-27 | International Business Machines Corporation | Array processor having grouping of SIMD pickets |
US5734921A (en) * | 1990-11-13 | 1998-03-31 | International Business Machines Corporation | Advanced parallel array processor computer package |
US5361367A (en) * | 1991-06-10 | 1994-11-01 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Highly parallel reconfigurable computer architecture for robotic computation having plural processor cells each having right and left ensembles of plural processors |
CA2073516A1 (en) * | 1991-11-27 | 1993-05-28 | Peter Michael Kogge | Dynamic multi-mode parallel processor array architecture computer system |
JP3502216B2 (ja) * | 1995-07-13 | 2004-03-02 | 富士通株式会社 | 情報処理装置 |
US5737328A (en) * | 1995-10-04 | 1998-04-07 | Aironet Wireless Communications, Inc. | Network communication system with information rerouting capabilities |
US5822606A (en) * | 1996-01-11 | 1998-10-13 | Morton; Steven G. | DSP having a plurality of like processors controlled in parallel by an instruction word, and a control processor also controlled by the instruction word |
-
1998
- 1998-12-15 JP JP37541098A patent/JP3344345B2/ja not_active Expired - Fee Related
-
1999
- 1999-12-13 US US09/459,565 patent/US6782468B1/en not_active Expired - Fee Related
- 1999-12-14 CA CA002292230A patent/CA2292230A1/en not_active Abandoned
- 1999-12-14 AU AU64508/99A patent/AU765469B2/en not_active Ceased
- 1999-12-15 BR BR9915456-0A patent/BR9915456A/pt not_active IP Right Cessation
- 1999-12-15 EP EP99250439A patent/EP1011052A3/en not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009527815A (ja) * | 2006-02-16 | 2009-07-30 | ブイエヌエス ポートフォリオ リミテッド ライアビリティ カンパニー | 高められた動作効率を有するコンピュータシステム |
JP2009527816A (ja) * | 2006-02-16 | 2009-07-30 | ブイエヌエス ポートフォリオ リミテッド ライアビリティ カンパニー | コンピュータへの入力を監視する方法および装置 |
US7913069B2 (en) | 2006-02-16 | 2011-03-22 | Vns Portfolio Llc | Processor and method for executing a program loop within an instruction word |
Also Published As
Publication number | Publication date |
---|---|
AU765469B2 (en) | 2003-09-18 |
JP3344345B2 (ja) | 2002-11-11 |
CA2292230A1 (en) | 2000-06-15 |
EP1011052A3 (en) | 2007-01-03 |
US6782468B1 (en) | 2004-08-24 |
EP1011052A2 (en) | 2000-06-21 |
BR9915456A (pt) | 2001-08-07 |
AU6450899A (en) | 2000-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3344345B2 (ja) | 共有メモリ型ベクトル処理システムとその制御方法及びベクトル処理の制御プログラムを格納する記憶媒体 | |
US6029204A (en) | Precise synchronization mechanism for SMP system buses using tagged snoop operations to avoid retries | |
JPS6319904B2 (ja) | ||
JP2010515161A (ja) | スレッドをキューに供給する方法及び装置 | |
JPH11175454A (ja) | 自動直接メモリ・アクセス機能を備えたコンピュータ・システム | |
JPH09121230A (ja) | コンピュータ・システムにおけるパケット交換および回線交換のハイブリッド・フロー制御の方法および装置 | |
JPH11175455A (ja) | コンピュータ・システムにおける通信方法及び装置 | |
US6892266B2 (en) | Multicore DSP device having coupled subsystem memory buses for global DMA access | |
JPH0679305B2 (ja) | 保留バスを用いて割り込みに応じる装置及び方法 | |
WO2003012674A2 (en) | Method and apparatus for transmitting packets within a symmetric multiprocessor system | |
KR100347473B1 (ko) | 버스시스템 | |
KR20040017822A (ko) | 데이터 전송 방법, 시스템 및 컴퓨터 판독가능 매체 | |
JP4166615B2 (ja) | データ処理装置におけるマルチアクセス命令を処理するデータ処理装置及び方法並びにその方法によるコンピュータ・プログラム製品 | |
JP2002163228A (ja) | 多重コアdsp装置のための外部バス裁定技術 | |
US8117626B2 (en) | Asynchronous remote procedure calling method and computer product in shared-memory multiprocessor | |
WO2007039933A1 (ja) | 演算処理装置 | |
KR20020067752A (ko) | 코프로세서 방식의 원칩 비동기 마이크로 프로세서 간의인터페이스 회로 | |
JP7318203B2 (ja) | 演算処理装置及び演算処理装置の制御方法 | |
JP3760995B2 (ja) | 共有メモリ型ベクトル処理システムとその制御方法及びベクトル処理の制御プログラムを格納する記憶媒体 | |
JP2001067298A (ja) | ハブ及びポート・アーキテクチャーを有する転送制御装置における低速ポートについての障害を防止するための書込み要求キューの使用 | |
JP2002198987A (ja) | ハブおよびポート付き転送コントローラのアクティブ・ポート | |
JP2002342295A (ja) | マルチプロセッサシステム | |
JP2830780B2 (ja) | マルチプロセッサシステム | |
JPH08272754A (ja) | マルチプロセッサシステム | |
JP2856709B2 (ja) | バス間結合システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070830 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080830 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080830 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090830 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090830 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100830 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |