JPH01251249A - キャッシュメモリ制御装置 - Google Patents
キャッシュメモリ制御装置Info
- Publication number
- JPH01251249A JPH01251249A JP63079503A JP7950388A JPH01251249A JP H01251249 A JPH01251249 A JP H01251249A JP 63079503 A JP63079503 A JP 63079503A JP 7950388 A JP7950388 A JP 7950388A JP H01251249 A JPH01251249 A JP H01251249A
- Authority
- JP
- Japan
- Prior art keywords
- data
- central processing
- cache memory
- cache
- read
- 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.)
- Pending
Links
Landscapes
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〈産業上の利用分野〉
この発明は、主記憶装置を共有するマルチプロセッサシ
ステムにおけるキャッシュメモリの制御方式に関するも
のである。
ステムにおけるキャッシュメモリの制御方式に関するも
のである。
〈従来の技術〉
第4図は9例えば、 @COMPUTERDE8IGN
’″、 GlenG、Langdon、 Jr、著(C
OMPUTRACHPRES8 INC,1982)に
示されたキャッジ−メモリを示すブロック図テある。
’″、 GlenG、Langdon、 Jr、著(C
OMPUTRACHPRES8 INC,1982)に
示されたキャッジ−メモリを示すブロック図テある。
(IIは主記憶装置、(2jは中央処理装置、(3)が
キャッシュメモリ、(4)は読み出しデータバス、(5
)は主記憶読み出しパス、(6)は書き込みデータバス
である。
キャッシュメモリ、(4)は読み出しデータバス、(5
)は主記憶読み出しパス、(6)は書き込みデータバス
である。
このように構成された装置につき1次にその動作につい
て説明する。
て説明する。
キャッシュメモIJ(31fl、中央処理装置(2)が
主記憶装置(17からデータをアクセスする時にそのデ
ータをキャッシュメモリ(3)内にも格納しておく。−
般に、−度使用されたデータは、近い将来に再び使用さ
れる可能性が高いといわれておυ、以後のデータのアク
セス時に、このキャッシュメモ1月3)からデータがア
クセスできる場合が多くなる。また、このキャッシュメ
モ1月3)は2通常主記憶装置(1)よシかなシ高速に
アクセスできるものなので。
主記憶装置(17からデータをアクセスする時にそのデ
ータをキャッシュメモリ(3)内にも格納しておく。−
般に、−度使用されたデータは、近い将来に再び使用さ
れる可能性が高いといわれておυ、以後のデータのアク
セス時に、このキャッシュメモ1月3)からデータがア
クセスできる場合が多くなる。また、このキャッシュメ
モ1月3)は2通常主記憶装置(1)よシかなシ高速に
アクセスできるものなので。
したがって、アクセスしたいデータがキャッシュメモリ
(3)内にある場合には、かなり高速にデータのアクセ
スができる。データがキャッシュメモリ(3)内にない
場合には、主記憶装置illヘデータをアクセスする必
要があるので、遅くなってしまう。
(3)内にある場合には、かなり高速にデータのアクセ
スができる。データがキャッシュメモリ(3)内にない
場合には、主記憶装置illヘデータをアクセスする必
要があるので、遅くなってしまう。
中央処理装置(2)がデータをアクセスする時には。
まず、必要なデータに対するリクエストを出し。
このリクエストされたアドレスのデータがキャッシュメ
モ1月3)内に存在しているか否かをテストする。もし
あれば、そのキャッシュメモ1月3)内のデータを読み
出しデータバス(4)から、そのままとりだす。もしキ
ャッジ−メモリ内に必要なデータがない場合には、主記
憶読み出しパス(5)によってデータを一度主記憶装置
(υからキャッシュメモ1月3)内へ読み出してきて、
その後にキ、ヤツ・シュメモリ(3)を読み出す。ある
いは、主記憶読み出しパス(5)からキャッシュメモリ
(3)へ読み出すと同時に中央処理装置+2]へも読み
出す。書き込み動作の時にも同様のテストを行いデータ
書き込み線(6)よシキャッシュメモI7+31. 6
るいは主記憶装置(1)へ書き込まれる。
モ1月3)内に存在しているか否かをテストする。もし
あれば、そのキャッシュメモ1月3)内のデータを読み
出しデータバス(4)から、そのままとりだす。もしキ
ャッジ−メモリ内に必要なデータがない場合には、主記
憶読み出しパス(5)によってデータを一度主記憶装置
(υからキャッシュメモ1月3)内へ読み出してきて、
その後にキ、ヤツ・シュメモリ(3)を読み出す。ある
いは、主記憶読み出しパス(5)からキャッシュメモリ
(3)へ読み出すと同時に中央処理装置+2]へも読み
出す。書き込み動作の時にも同様のテストを行いデータ
書き込み線(6)よシキャッシュメモI7+31. 6
るいは主記憶装置(1)へ書き込まれる。
従って、主記憶装置+11と比較して、かなシ小さい容
量のキャッシュメモリ(3)には、最も使用頻度の高い
データをおいておくのが望ましい。通常キャッシュメモ
1月3)内のデータは、最も新しく使用されたデータが
、長くキャッシュメモ1月3)内におけるように、キャ
ッシュメモリ(3)内のデータの置き換えは、最も古く
に使用されたデータを主記憶装置(1)へ返すように行
われる。
量のキャッシュメモリ(3)には、最も使用頻度の高い
データをおいておくのが望ましい。通常キャッシュメモ
1月3)内のデータは、最も新しく使用されたデータが
、長くキャッシュメモ1月3)内におけるように、キャ
ッシュメモリ(3)内のデータの置き換えは、最も古く
に使用されたデータを主記憶装置(1)へ返すように行
われる。
また、第5図に示すように、このようなキャッシュメモ
リ(3)をそれぞれが持つ中央処理装置(2)を複数台
結合し主記憶装置(1)を共有するマルチプロセッサシ
ステムにおいては、別の中央処理装置が主記憶装置(1
)データの同一のブロックをアクセスすることが起こシ
うる。この場合には、そのブロックをアクセスしたい中
央処理装置+21が、それぞれ主記憶装置(1)の同一
アドレスのブロックにリクエストを出す。リクエストさ
れたアドレスのブロックの内容は、どこかで書き込みが
行われない限シにおいては、全く同じものである。従っ
て、複数台の中央処理装!(2)が、同一アドレスの同
一データに対してリクエストを出し、複数台の中央処理
装置(2)のキャッシュメモリ(3)に全く同一のデー
タが存在することが起こる。
リ(3)をそれぞれが持つ中央処理装置(2)を複数台
結合し主記憶装置(1)を共有するマルチプロセッサシ
ステムにおいては、別の中央処理装置が主記憶装置(1
)データの同一のブロックをアクセスすることが起こシ
うる。この場合には、そのブロックをアクセスしたい中
央処理装置+21が、それぞれ主記憶装置(1)の同一
アドレスのブロックにリクエストを出す。リクエストさ
れたアドレスのブロックの内容は、どこかで書き込みが
行われない限シにおいては、全く同じものである。従っ
て、複数台の中央処理装!(2)が、同一アドレスの同
一データに対してリクエストを出し、複数台の中央処理
装置(2)のキャッシュメモリ(3)に全く同一のデー
タが存在することが起こる。
もしいずれかの中央処理装!(2)がそのキャッシュメ
モリ(3)の内容を書き換えた時には、全ての中央処理
装置(2)中のキャッジ−メモリ(3)の更新前のデー
タのコピーは、もはや正しくないので誤って使用しない
ように無効なものとする必要がある。
モリ(3)の内容を書き換えた時には、全ての中央処理
装置(2)中のキャッジ−メモリ(3)の更新前のデー
タのコピーは、もはや正しくないので誤って使用しない
ように無効なものとする必要がある。
これをキャッシュメモリ(3)の無効化という。このキ
ャッシュメモ1月3)の無効化は2通常中央処理装置(
2)の書き込みの度毎に発生するものである。
ャッシュメモ1月3)の無効化は2通常中央処理装置(
2)の書き込みの度毎に発生するものである。
近年のマルチプロセッサシステムにおいては。
従来から行われている複数のジョブを複数の中央処理装
置(2)に割シ当ててシステムとしてのスループットを
向上させることを目的とした並列処理とは異なって、複
数台の中央処理装置(2)が1つのジョブを実行するこ
とによって、そのジョブのレスポンスを向上させること
を目的とした並列処理が行われる場合がある。この場合
には、1つのジョブを複数の中央処理装置(2)に分割
するという性質上、主記憶装置(1)の同じブロックの
データが複数の中央処理装置(2)に分割されることが
アシ、この同じブロックのデータを別個の複数の中央処
理装置(2)がアクセスすることが頻繁に起こりうる。
置(2)に割シ当ててシステムとしてのスループットを
向上させることを目的とした並列処理とは異なって、複
数台の中央処理装置(2)が1つのジョブを実行するこ
とによって、そのジョブのレスポンスを向上させること
を目的とした並列処理が行われる場合がある。この場合
には、1つのジョブを複数の中央処理装置(2)に分割
するという性質上、主記憶装置(1)の同じブロックの
データが複数の中央処理装置(2)に分割されることが
アシ、この同じブロックのデータを別個の複数の中央処
理装置(2)がアクセスすることが頻繁に起こりうる。
例えば、第2図に示すように、おるプログラム中のルー
プを複数台の中央処理装置(2)で並列に処理させよう
とする場合には、いわゆる空間的並列性を生かし、その
ループの繰り返し毎に分割して処理させることが良く行
われる。第2図の例では。
プを複数台の中央処理装置(2)で並列に処理させよう
とする場合には、いわゆる空間的並列性を生かし、その
ループの繰り返し毎に分割して処理させることが良く行
われる。第2図の例では。
DOALLという文が並列処理を行うことを表し。
中央処理装置(2)が4台おることを仮定し、このルー
プ内の4つの式がそれぞれ1台の中央処理装置に割シ当
てられることを示している。つまシ、ループの繰シ返し
を4つに分けて。
プ内の4つの式がそれぞれ1台の中央処理装置に割シ当
てられることを示している。つまシ、ループの繰シ返し
を4つに分けて。
CPU0が第1番目の式の処理である繰シ返しの第1回
、5回、9回目 ・・・・・−・・・・・・・・・・・
・・・・・・・・・・・・・・・・−・・・・・ をC
PU1が第2番目の式の処理である繰シ返しの第2回、
6回、 10回目、・・・・・・−・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・ をCP
U2が第3番目の式の処理である繰り返しの第3回、7
回、 111回目、・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・ をCPU
3が第4番目の式の処理である繰シ返しの第4回、8回
、 122回目、・・・・・・・・・−・・・・・・
・・・・・・・・・・・・・・・・・・・ をというよ
うに受は持つものとすると、これは、9間的に集中して
いるデータ、例えば、配列人の要素をあえて複数の中央
処理装置(2)に分割してしまうことになシ、複数台の
中央処理装置(2)のキャッシュメモ1月3)に配列人
の要素の同一のデータのブロックが存在することになる
。
、5回、9回目 ・・・・・−・・・・・・・・・・・
・・・・・・・・・・・・・・・・−・・・・・ をC
PU1が第2番目の式の処理である繰シ返しの第2回、
6回、 10回目、・・・・・・−・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・ をCP
U2が第3番目の式の処理である繰り返しの第3回、7
回、 111回目、・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・ をCPU
3が第4番目の式の処理である繰シ返しの第4回、8回
、 122回目、・・・・・・・・・−・・・・・・
・・・・・・・・・・・・・・・・・・・ をというよ
うに受は持つものとすると、これは、9間的に集中して
いるデータ、例えば、配列人の要素をあえて複数の中央
処理装置(2)に分割してしまうことになシ、複数台の
中央処理装置(2)のキャッシュメモ1月3)に配列人
の要素の同一のデータのブロックが存在することになる
。
したがって、主記憶装置(1)の1つのブロックが中央
処理装置(2)の数だけ、この場合にi4回リクエスト
を受ける。特にこの例では、主記憶アクセスを受ける配
列人のブロックは、参照されるのみで、Wき換えられる
ことがないため全く同一のデータを、処理の始めから終
わシまで保持している。
処理装置(2)の数だけ、この場合にi4回リクエスト
を受ける。特にこの例では、主記憶アクセスを受ける配
列人のブロックは、参照されるのみで、Wき換えられる
ことがないため全く同一のデータを、処理の始めから終
わシまで保持している。
しかるに、全ての中央処理装置(2)が、このブロック
をアクセスするために主記憶装置(1)の全く同一のデ
ータを持つ同一アドレスを何度も読み出すことになる。
をアクセスするために主記憶装置(1)の全く同一のデ
ータを持つ同一アドレスを何度も読み出すことになる。
〈発明が解決しようとする課題〉
従来のキャッシュメモリは8以上のように構成されてい
るので、並列処理の行われるマルチプロセッサシステム
においては、各中央処理装置の同一データブロックへの
読み出し1回毎に主記憶装置の同一のデータブロックに
アクセスする必要がらり、その度毎に主記憶装置間から
各中央処理装置のキャッシュメモリへ全く同一のデータ
のブロックが転送されることになシ、効率が悪くなると
いう課題があった。
るので、並列処理の行われるマルチプロセッサシステム
においては、各中央処理装置の同一データブロックへの
読み出し1回毎に主記憶装置の同一のデータブロックに
アクセスする必要がらり、その度毎に主記憶装置間から
各中央処理装置のキャッシュメモリへ全く同一のデータ
のブロックが転送されることになシ、効率が悪くなると
いう課題があった。
この発明は、上記のような課題を解消するためになされ
たもので、ある条件の下において複数台の中央処理装置
が出す同一のデータブロックへのキャッシュメモリへの
読み出し要求を共通なものとして一度に行えるような、
マルチプロセッサシステムを得ることを目的とする。
たもので、ある条件の下において複数台の中央処理装置
が出す同一のデータブロックへのキャッシュメモリへの
読み出し要求を共通なものとして一度に行えるような、
マルチプロセッサシステムを得ることを目的とする。
〈課題を解決するための手段〉
この発明は、上記のような課題を解消するためになされ
たもので、ある条件の下において−りの中央処理装置の
あるデータブロックへのキャッシュメモリへの読み出し
要求によって読み出された主記憶装置のデータのブロッ
クを他の中央処理装置へも放送しキャッシュメモリ内へ
書き込めるように、キャッシュメモリ間のデータ転送用
手段と並列処理認識手段とを備えたものである。
たもので、ある条件の下において−りの中央処理装置の
あるデータブロックへのキャッシュメモリへの読み出し
要求によって読み出された主記憶装置のデータのブロッ
クを他の中央処理装置へも放送しキャッシュメモリ内へ
書き込めるように、キャッシュメモリ間のデータ転送用
手段と並列処理認識手段とを備えたものである。
〈作 用〉
この発明におけるキャッシュメモリ間のデータ転送用手
段は、キャッシュメモリ内のデータを別の中央処理装置
へ放送するためのものでめり、並列処理認識手段は、複
数台の中央処理装置によって並列処理が行われているこ
とを示す。
段は、キャッシュメモリ内のデータを別の中央処理装置
へ放送するためのものでめり、並列処理認識手段は、複
数台の中央処理装置によって並列処理が行われているこ
とを示す。
〈発明の実施例〉
以下、この発明の一実施例を図について説明する。゛第
1図において、(1)は主記憶装置、(2)は中央処理
装置、(3)は各中央処理装置毎に付けられたキャッシ
ュメモ!J、(91は各中央処理装置(21が主記憶装
置をアクセスするためのグローバルメモリパス。
1図において、(1)は主記憶装置、(2)は中央処理
装置、(3)は各中央処理装置毎に付けられたキャッシ
ュメモ!J、(91は各中央処理装置(21が主記憶装
置をアクセスするためのグローバルメモリパス。
α〔は各中央処理装置(2)のキャッシュメモリを結ぶ
データ放送用パス、α11はその中央処理装置(2)が
並列処理動作中であることを示す並列処理モードフラグ
である。
データ放送用パス、α11はその中央処理装置(2)が
並列処理動作中であることを示す並列処理モードフラグ
である。
M1図では、4台の中央処理装置(2)を持つマルチプ
ロセッサシステムを示している。このマルチプロセッサ
システムにおいて並列処理を行わせる時、最も単純で良
く行われる方法にプログラムのループの部分を分割する
手法がある。コンパイラなどによって自動的に並列化す
ることを前提とすると並列化の困難さから分割はこの様
な単純なものとなることが多い。例えば、第2図に示す
ように繰り返し数の多いループを4つに分割して。
ロセッサシステムを示している。このマルチプロセッサ
システムにおいて並列処理を行わせる時、最も単純で良
く行われる方法にプログラムのループの部分を分割する
手法がある。コンパイラなどによって自動的に並列化す
ることを前提とすると並列化の困難さから分割はこの様
な単純なものとなることが多い。例えば、第2図に示す
ように繰り返し数の多いループを4つに分割して。
DOALL文で示されるように変形する。D OAL
Lという文は並列処理を行うことを表し、このループ内
の4つの式がそれぞれ1台の中央処理装& (21に割
り当てられることを示している。つまシ、ループの繰り
返しを4つに分けて。
Lという文は並列処理を行うことを表し、このループ内
の4つの式がそれぞれ1台の中央処理装& (21に割
り当てられることを示している。つまシ、ループの繰り
返しを4つに分けて。
CPU0が第1番目の式の処理である繰シ返しの第1回
、5回、9回目、・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・ をC
PU1が第2番目の式の処理である繰シ返しの第2回、
6回、 10回目、・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・ をCP
U2が第3番目の式の処理である繰シ返しの第3回、7
回、 11回目、・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・ をCPU
3が第4番目の式の処理である繰シ返しの第4回、8回
、 12回目、・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・ をというよ
うに受は持つものとしている。
、5回、9回目、・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・ をC
PU1が第2番目の式の処理である繰シ返しの第2回、
6回、 10回目、・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・ をCP
U2が第3番目の式の処理である繰シ返しの第3回、7
回、 11回目、・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・ をCPU
3が第4番目の式の処理である繰シ返しの第4回、8回
、 12回目、・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・ をというよ
うに受は持つものとしている。
第3図に、この時の各中央処理装置(2)内のキャッシ
ュメモリ(3)内のデータを示している。主記憶装置(
1)内において配列人の人(1)〜人(8)が同一のブ
ロックにあるとすると、このブロックは、4つの中央処
理装置の全てに読み出される。この場合にVi、CPU
0が配列のA(1)を、CPU1がその隣接する要素で
ある配列のA(2)を、CPU2が更にその隣接要素の
配列のA(3)を、そしてCPU3がそのA(3)の隣
接要素の配列のA(4)を主記憶装置tl+の同一のブ
ロックから読み出すことになる。この動作の流れは、こ
の後も継続されA(5)〜人(8)、λ(9)〜Au。
ュメモリ(3)内のデータを示している。主記憶装置(
1)内において配列人の人(1)〜人(8)が同一のブ
ロックにあるとすると、このブロックは、4つの中央処
理装置の全てに読み出される。この場合にVi、CPU
0が配列のA(1)を、CPU1がその隣接する要素で
ある配列のA(2)を、CPU2が更にその隣接要素の
配列のA(3)を、そしてCPU3がそのA(3)の隣
接要素の配列のA(4)を主記憶装置tl+の同一のブ
ロックから読み出すことになる。この動作の流れは、こ
の後も継続されA(5)〜人(8)、λ(9)〜Au。
・・・・・・についても同様であり、同一のブロックが
4つの中央処理装置(2)内に共有される。このときに
は、CPU0がA(1)にリクエストを出した時に、λ
tllヲ含trブロックを、CPU0のキャッシュメモ
リの中へ書き込むだけではなく、他の並列処理モードが
オンとなっているCPUI、CPU2.CPU3へもキ
ャッシュメモリ間のデータ放送用パスαOを経由して放
送し、それらのキャッシュメモリへも書き込んでおく。
4つの中央処理装置(2)内に共有される。このときに
は、CPU0がA(1)にリクエストを出した時に、λ
tllヲ含trブロックを、CPU0のキャッシュメモ
リの中へ書き込むだけではなく、他の並列処理モードが
オンとなっているCPUI、CPU2.CPU3へもキ
ャッシュメモリ間のデータ放送用パスαOを経由して放
送し、それらのキャッシュメモリへも書き込んでおく。
したがってCPUIがA(2)を必要とする時、CPU
2が人(3)を必要とする時、CPU3がA(4)を必
要とする時には、既にキャッシュメモリ内にそれぞれの
人の要素が存在しているのでCPU1−CPU3の主記
憶へのメモリアクセスが不要となる。
2が人(3)を必要とする時、CPU3がA(4)を必
要とする時には、既にキャッシュメモリ内にそれぞれの
人の要素が存在しているのでCPU1−CPU3の主記
憶へのメモリアクセスが不要となる。
また、上記実施例では、マルチプロセッサシステムが、
並列処理のモードで動作している時について説明したが
1通常のモードの実行時においてもある程度の効果が望
まれる。先の実施例では。
並列処理のモードで動作している時について説明したが
1通常のモードの実行時においてもある程度の効果が望
まれる。先の実施例では。
並列処理動作時に限定して、ある中央処理袋!(2)の
データの主記憶装置(1)からキャッシュメモリへの7
工ツチ時に、そのデータを全中央処理装置へ放送して、
並列処理モードフラグαDがオンの中央処理装置(2)
のキャッシュメモ1月3)へ書き込むものとしていた。
データの主記憶装置(1)からキャッシュメモリへの7
工ツチ時に、そのデータを全中央処理装置へ放送して、
並列処理モードフラグαDがオンの中央処理装置(2)
のキャッシュメモ1月3)へ書き込むものとしていた。
これは2通常並列処理動作時には。
前述のようにループを分割する場合が多く同一ブロック
のデータを複数の中央処理袋!(2)が、共有して使用
する可能性が非常に高いことに着目したものである。と
ころが、実際のジョブの中には。
のデータを複数の中央処理袋!(2)が、共有して使用
する可能性が非常に高いことに着目したものである。と
ころが、実際のジョブの中には。
ユーザがプログラム中で明示的に複数台の中央処理装置
(2)を使用することを宣言して処理を行わせる場合が
ある。この場合においても、複数の中央処理装置(2)
でデータを共有することがあるので。
(2)を使用することを宣言して処理を行わせる場合が
ある。この場合においても、複数の中央処理装置(2)
でデータを共有することがあるので。
ユーザが複数の中央処理袋!(2)間でデータの同一ブ
ロックをアクセスすることを認識した上で、ソフトウェ
ア的に使用する中央処理装置(2)を指定することによ
って、ある中央処理装置(2)の主記憶装置からのデー
タの7エツチのときにフェッチされたデータを全中央処
理装置へ放送して指定された中央処理装置に限って、こ
のデータを取シ込みキャッシュメモリに書き込むものと
しても目的の効果が得られる。
ロックをアクセスすることを認識した上で、ソフトウェ
ア的に使用する中央処理装置(2)を指定することによ
って、ある中央処理装置(2)の主記憶装置からのデー
タの7エツチのときにフェッチされたデータを全中央処
理装置へ放送して指定された中央処理装置に限って、こ
のデータを取シ込みキャッシュメモリに書き込むものと
しても目的の効果が得られる。
〈発明の効果〉
以上のように、この発明によればマルチプロセッサシス
テムにおけるキャッシュメモリへのデータの書き込みを
並列処理モードの時には、一つの中央処理装置よシリク
エストされた主記憶装置から読み出されたデータのブロ
ックを、全ての中央処理装置に放送して、並列処理モー
ドフラグがオンの中央処理装置のキャッジ−メモリに書
き込むようにしたので、主記憶装置からキャッシュメモ
リへのデータのロードの回数を減らすことができるので
、性能の向上に効果がおる。
テムにおけるキャッシュメモリへのデータの書き込みを
並列処理モードの時には、一つの中央処理装置よシリク
エストされた主記憶装置から読み出されたデータのブロ
ックを、全ての中央処理装置に放送して、並列処理モー
ドフラグがオンの中央処理装置のキャッジ−メモリに書
き込むようにしたので、主記憶装置からキャッシュメモ
リへのデータのロードの回数を減らすことができるので
、性能の向上に効果がおる。
第1図は、この発明の一実施例によるキャッシュメモリ
制御方式を取ったマルチプロセッサシステムを示す図、
第2因は9本システムにおいて並列処理される典型的な
プログラムの例、第3図t−j。 第2図で示したプログラムを本システム上で動作させた
時に各中央処理装置においてキャッシュメモリ上にデー
タがどのように分割されるかを示す図、第4図は、従来
の計算機におけるキャッシュメモリの構成と動作を示す
図、第5図は、従来のマルチプロセッサシステムの構成
図である。 図において、(1)は主記憶装置、(2)は中央処理装
置、(3)はキャッシュメモリ、(9)はグローバルメ
モリバス、0■はデータ放送用バス、α力は並列処理モ
ード7ングである。 なお2図中、同一符号は同一、又は相当部分を示す。
制御方式を取ったマルチプロセッサシステムを示す図、
第2因は9本システムにおいて並列処理される典型的な
プログラムの例、第3図t−j。 第2図で示したプログラムを本システム上で動作させた
時に各中央処理装置においてキャッシュメモリ上にデー
タがどのように分割されるかを示す図、第4図は、従来
の計算機におけるキャッシュメモリの構成と動作を示す
図、第5図は、従来のマルチプロセッサシステムの構成
図である。 図において、(1)は主記憶装置、(2)は中央処理装
置、(3)はキャッシュメモリ、(9)はグローバルメ
モリバス、0■はデータ放送用バス、α力は並列処理モ
ード7ングである。 なお2図中、同一符号は同一、又は相当部分を示す。
Claims (1)
- 主記憶装置と主記憶装置を共有する複数台の中央処理装
置よりなるマルチプロセッサシステムにおいて、複数台
の中央処理装置によって並列に処理が行われているとき
にその中央処理装置が並列処理を行っている中央処理装
置群の一つであることを認識する手段と、複数台の中央
処理装置のキャッシュメモリ間で互いにデータを転送で
きる手段とを備え、中央処理装置からの主記憶読み出し
リクエスト時にリクエストされた主記憶装置からの読み
出しデータを全ての中央処理装置に対して放送し、それ
ぞれのキャッシュメモリへの書き込みを行えることを特
徴としたキャッシュメモリ制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63079503A JPH01251249A (ja) | 1988-03-31 | 1988-03-31 | キャッシュメモリ制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63079503A JPH01251249A (ja) | 1988-03-31 | 1988-03-31 | キャッシュメモリ制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH01251249A true JPH01251249A (ja) | 1989-10-06 |
Family
ID=13691737
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63079503A Pending JPH01251249A (ja) | 1988-03-31 | 1988-03-31 | キャッシュメモリ制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH01251249A (ja) |
-
1988
- 1988-03-31 JP JP63079503A patent/JPH01251249A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8020169B2 (en) | Context switching system having context cache and a register file for the save and restore context operation | |
| US6493773B1 (en) | Data validity measure for efficient implementation of first-in-first-out memories for multi-processor systems | |
| US5870625A (en) | Non-blocking memory write/read mechanism by combining two pending commands write and read in buffer and executing the combined command in advance of other pending command | |
| US5301278A (en) | Flexible dynamic memory controller | |
| US5640528A (en) | Method and apparatus for translating addresses using mask and replacement value registers | |
| US5251310A (en) | Method and apparatus for exchanging blocks of information between a cache memory and a main memory | |
| US7590774B2 (en) | Method and system for efficient context swapping | |
| JPH04306748A (ja) | 情報処理装置 | |
| US5161219A (en) | Computer system with input/output cache | |
| US6615296B2 (en) | Efficient implementation of first-in-first-out memories for multi-processor systems | |
| JP3814521B2 (ja) | データ処理方法および装置 | |
| US7073034B2 (en) | System and method for encoding processing element commands in an active memory device | |
| JPH01251249A (ja) | キャッシュメモリ制御装置 | |
| JPH01251250A (ja) | 共有キャッシュメモリ | |
| JPH028946A (ja) | キャッシュメモリ制御方式 | |
| WO1994016391A1 (en) | Bus to bus interface with address translation | |
| JPS60195661A (ja) | デ−タ処理システム | |
| US5790892A (en) | Information handling system for modifying coherency response set to allow intervention of a read command so that the intervention is not allowed by the system memory | |
| JP2517859B2 (ja) | 並列プロセス管理方法 | |
| AU631713B2 (en) | Memory management in a multi-processor system | |
| JP2825589B2 (ja) | バス制御方式 | |
| JPH03233780A (ja) | バスアクセス方式 | |
| JPH0535507A (ja) | 中央処理装置 | |
| JPH087663B2 (ja) | コンピユータ・システムおよびその記憶装置アクセス方法 | |
| JPH051502B2 (ja) |