JP2002007371A - L1キャッシュフォールスシェア緩和制御方式 - Google Patents

L1キャッシュフォールスシェア緩和制御方式

Info

Publication number
JP2002007371A
JP2002007371A JP2000194895A JP2000194895A JP2002007371A JP 2002007371 A JP2002007371 A JP 2002007371A JP 2000194895 A JP2000194895 A JP 2000194895A JP 2000194895 A JP2000194895 A JP 2000194895A JP 2002007371 A JP2002007371 A JP 2002007371A
Authority
JP
Japan
Prior art keywords
cache
request
processor
instruction
invalidation request
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
Application number
JP2000194895A
Other languages
English (en)
Inventor
Tsunemichi Toyama
経道 當山
Masaya Nakahata
昌也 中畑
Yasuhiro Teramoto
康弘 寺本
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 JP2000194895A priority Critical patent/JP2002007371A/ja
Publication of JP2002007371A publication Critical patent/JP2002007371A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】従来、コヒーレンス制御に時間がかかる。 【解決手段】複数のプロセッサと複数の主記憶をスイッ
チ型主記憶制御装置で接続したマルチプロセッサ方式の
情報処理装置で、キャッシュのコヒーレンス制御をキャ
ッシュのタグのコピーを保持することにより行う制御方
式をとりながら、フォールスシェアリングによる性能低
下を緩和しつつ、プロセッサ間のバリア同期を高速に行
う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、複数の主記憶と
これらを共有する複数のプロセッサをスイッチ型の主記
憶制御装置により接続した構成のマルチプロセッサ方式
の情報処理装置において、プロセッサが持つキャッシュ
と各主記憶とのデータの一貫性を維持しながらも、これ
により生じるキャッシュのフォールスシェアリングを緩
和する制御装置に関する。
【0002】
【従来の技術】近年、異なるアドレス空間が割り当てら
れた主記憶とこれらを共有する複数のプロセッサを備
え、各主記憶と各プロセッサをスイッチ型主記憶制御装
置によって接続した構成のマルチプロセッサ方式の情報
処理装置が考えられている。
【0003】図3は上記特徴を備えたマルチプロセッサ
の構成を示す。キャッシュ11−0〜11−nを有する各プロ
セッサ10−0〜10−nと異なるアドレス空間が割り当てら
れている各主記憶13−0〜13−mは、スイッチ型主記憶制
御装置12により接続される。前記情報処理装置における
スイッチ型主記憶制御装置12は、各プロセッサ10−0〜1
0−nが同時に各主記憶13−0〜13−m上のデータにアクセ
ス可能な構成となっている。これにより前記情報処理装
置は、大規模な行列を扱う数値計算で主記憶全体に同じ
ような頻度でデータアクセスを行う問題を高速に処理す
ることが可能である。
【0004】前記の情報処理装置においては、各プロセ
ッサ10−0〜10−nが相互に各主記憶13−0〜13−mの内容
を自プロセッサ内のキャッシュ11−0〜11−n上に保持す
るため、各プロセッサ内のキャッシュ11−0〜11−nと各
主記憶13−0〜13−mの内容が同一である事を保証するキ
ャッシュの一致保証の実現が必要となる。キャッシュの
一致保証のために、自プロセッサは、他プロセッサが行
う各主記憶13−0〜13−mへの更新動作を監視する必要が
あるが、前記情報処理装置のように各プロセッサ10−0
〜10−nが各主記憶13−0〜13−m上のデータ更新動作を
同時に行うのを監視する事は容易でない。
【0005】このキャッシュの一致保証を行う方法とし
て、キャッシュのタグのコピーをスイッチ型主記憶制御
装置内に保持する構成の情報処理装置が考えられてい
る。プロセッサ10−0〜10−nは、各主記憶13−0〜13−m
上のどのアドレスに関するデータをキャッシングしてい
るかがわかるようにプロセッサ10−0〜10−n内にディレ
クトリとしてタグ14−0〜14−nを持っている。またスイ
ッチ型主記憶制御装置12は、キャッシュの一致保証機構
15を保持しており、該キャッシュの一致保証機構15は、
各プロセッサのタグ14−0〜14−nに対応してそれと同一
の内容であるタグのコピー16−0〜16−nを保持してい
る。キャッシュの一致保証機構15は、プロセッサ10−I
(I=0〜n)が主記憶13−J(J=0〜m)上のデータを読み込み
に行った場合、プロセッサ10−Iのタグのコピー16−Iに
登録をおこなう。またプロセッサ10−I(I=0〜n)が主記
憶13−J(J=0〜m)に対してデータの書き込みを行った場
合には、キャッシュの一致保証機構15はプロセッサ10−
I以外の全てプロセッサ10−K(K≠I)に対応したタグのコ
ピー16−Kを検索し、ヒットしたプロセッサがあればそ
のプロセッサに対してキャッシュ内の該タグに対応する
データの無効化を要求する。以上の方法で複数のプロセ
ッサと複数の主記憶がスイッチ型主記憶制御装置によっ
て接続される情報処理装置において、各プロセッサが同
時に各主記憶にアクセス可能でありながら、前記キャッ
シュの一致保証機構によって容易にキャッシュの一致保
証が実現できる。
【0006】ところで、複数のプロセッサが連動して処
理を行う場合、プロセッサ間の同期操作が必要である。
従来、図4に示すように同期指示プロセッサの命令列と
被同期プロセッサの命令列により行われた。すなわち、
同期指示元プロセッサは、命令1のST(ストア命令)に
より演算前処理あるいは演算処理結果を主記憶装置に出
力し、命令2のSYNC(シンク命令)で命令1のスト
アが他のプロセッサから見て完全に終了したことを保証
した後、被同期プロセッサに対して主記憶装置の共有領
域を通して命令3のST命令で同期指示を行う。一方、
被同期プロセッサは、命令4のLD(ロード命令)で主
記憶装置の共有領域を読み込み、同期指示元プロセッサ
からの同期完了指示が行われるまで、命令5のBC(条
件付分岐命令)により、上記命令4のロード命令を繰り
返し共有領域の監視を続けることにより待ち合わせを行
う。
【0007】この同期方法では、同期完了指示が行われ
るまで、共有領域の監視のためのロード命令とBC命令
以後のプログラム中のすべての後続命令群が実行されな
いことになる。しかし、本来、被同期プロセッサにおい
て、同期完了指示を受けるまで待機する必要がある命令
は、例えば、同期指示元プロセッサが演算前処理あるい
は演算処理結果をストア命令により主記憶装置の内容を
更新する場合に、この更新前に、誤って先行して主記憶
装置から被同期プロセッサのキャッシュへ更新前データ
を読み込む可能性のあるロード命令のみであり、ロード
命令以外の命令は必要のない待機を強いられる。この結
果、同期操作における実効性能が低下するという問題が
あった。
【0008】この問題を解決するために、命令実行制御
方法にSETBRRとWAITBRRの2つの命令を追
加する方法が考えられている。該SETBRR命令は、
同期ポイントに到達したときに各プロセッサ毎に実行す
る命令であり、該WAITBRR命令は、後続のロード
命令のみを選択的に待機しながら全プロセッサがSET
BRR以前(すなわち同期ポイント以前)に発行した命
令に関するコヒーレンス制御が完了したことを待つこと
を特徴としている。図5にその操作方法を示す。仮にプ
ロセッサ0を同期指示プロセッサ、プロセッサ1〜nを被
同期プロセッサであるとする。同期指示プロセッサは、
命令1のST(ストア命令)により演算前処理あるいは
演算処理結果を主記憶装置に書き込みを行う。全プロセ
ッサは、同期ポイントに到達したことを示す命令2−0〜
2−nのSETBRR命令を実行する。更に命令3−0〜3
−nのWAITBRR命令を実行することで後続のLD
命令のみを選択的に待機させながら命令2−0〜2−nのS
ETBRR以前に発行された命令のコヒーレンス制御が
完了するのを待つ。(例えばプロセッサ1〜nの何れかが
プロセッサ0の発行したST命令(命令1)が書き込む主
記憶の領域をキャッシュに読み込んでいる場合は、その
ラインの無効化が完了するのを待つ。)この方法によれ
ば、複数のプロセッサが同期操作を行うとき、ロード命
令の実行を待機させ、待機する必要のない演算命令や分
岐命令などを実行できるため、同期操作を高速に行うこ
とができる。
【0009】
【発明が解決しようとする課題】図3の構成による情報
処理装置において二つのプロセッサが頻繁に読み書きを
行う主記憶上のラインを共有した場合にフォールスシェ
アリングの問題が生じる。これは、例えば次のようなケ
ースで発生する。プロセッサ10−Iとプロセッサ10−Jが
主記憶10−K上のラインLを共有しているとする。プロセ
ッサ10−Iが主記憶10−K上のラインLに書き込みを行う
と、キャッシュの一致保証機構15はプロセッサ10−Jに
キャッシュの無効化を要求する。プロセッサ10−Jが主
記憶13−KのラインLに書き込みを行う場合、プロセッサ
10−Jのキャッシュ11−JにおけるラインLのデータは無
効化されているため、まず主記憶13−K上のラインLがプ
ロセッサ10−Jのキャッシュに転送され、プロセッサ10
−Jが書き込みを行う事によりプロセッサ10−Iのキャッ
シュ内のラインLに関するデータは無効化される。この
ようにラインLはプロセッサ10−Iのキャッシュ11−Iと
プロセッサ10−Jのキャッシュ11−Jを互いに無効化され
ながら行ったりきたりする事になる。特にプロセッサ10
−Iの使うローカル変数がラインLの前半にあり、プロセ
ッサ10−Jの使うローカル変数がラインLの後半に割り当
てられているような場合、変数の更新が行われるたびに
無意味なデータの更新が行われる事になり、コヒーレン
ス制御にかかる時間が増大してしまう。
【0010】本発明の目的は、複数のプロセッサと複数
の主記憶をスイッチ型主記憶制御装置で接続したマルチ
プロセッサ方式の情報処理装置で、キャッシュのコヒー
レンス制御をキャッシュのタグのコピーを保持すること
により行う制御方式をとりながら、フォールスシェアリ
ングによる性能低下を緩和しつつ、プロセッサ間のバリ
ア同期を高速に行う制御方式を提供することにある。
【0011】
【課題を解決するための手段】前記目的を達成するため
に、本発明は複数のプロセッサと複数の主記憶がスイッ
チ型主記憶制御装置によって接続されたマルチプロセッ
サ方式の情報処理装置で、スイッチ型主記憶制御装置内
のコヒーレンス制御装置には各プロセッサのキャッシュ
に関するタグのコピーを持ち、プロセッサからの主記憶
への更新が行われるたびに他プロセッサのタグのコピー
を検索しもしヒットしているなら該キャッシュラインを
無効化要求することで、そのキャッシュラインの無効化
を行うことを特徴とするキャッシュ一致化保証方式にお
いて、各プロセッサ内もしくは各プロセッサに接続され
るスイッチ型主記憶制御装置上に、コヒーレンス制御装
置からのキャッシュデータの無効化要求リクエストを一
時的に滞留する無効化要求リクエスト受けバッファを設
け、該バッファがフルの状態になったときキャッシュの
無効化リクエストをバッファから送出することを特徴と
している。
【0012】また、全プロセッサがバリア同期を行った
場合には、無効化要求リクエストを該無効化要求リクエ
スト受けバッファで滞留させるため、バリア同期の完了
までの時間が増大することになる。こうした状況を防ぐ
ため、該バッファはバリア同期命令が各プロセッサから
発行された場合には、該バリア同期命令を検出しバッフ
ァがフルになるのを待たずに無効化要求リクエストをバ
ッファから通過させることを特徴とするものである。
【0013】また、該無効化要求リクエスト受けバッフ
ァには、キャッシュ内の同一ラインに対して複数の無効
化要求リクエストが連続して出される場合があり、特に
フォールスシェアリングを起こしている場合にはこのよ
うなケースが頻繁におこりうる。しかし実際にキャッシ
ュの無効化が必要なのは連続してくる複数の無効化要求
リクエストのうちの1回だけであり、他の無効化要求リ
クエストによるキャッシュの無効化は不必要な処理であ
る。該無効化要求受けバッファは、連続してくる不必要
な無効化要求リクエストをバッファ上で間引く事を特徴
とするものである。
【0014】
【発明の実施の形態】以下、本発明のー実施例を図面を
用いて具体的に説明する。
【0015】<実施例>図1は、本発明の実施例を構成
する情報処理システムの構成図である。本実施例の情報
処理装置は、複数のプロセッサ10−0〜10−nと、複数の
主記憶装置13−0〜13−mと、スイッチ型主記憶制御装置
12から構成されている。
【0016】プロセッサ10−0〜10−nは、本情報処理の
中心となる装置である。プロセッサ10−0〜10−nは、プ
ログラムで与えられる処理を分担し、各々連動しながら
演算命令やMSアクセス命令などの命令を実行する。複
数の主記憶装置13−0〜13−mは、プログラム及びプログ
ラムで使用するデータを記憶する装置であり、各複数の
主記憶装置にはそれぞれ異なるアドレス空間が割り当て
られている。プロセッサ10−0〜10−nの主記憶装置13−
0〜13−mに対するアクセスは、インターフェース信号11
0−0〜110−nによりスイッチ型主記憶制御装置12にリク
エストが発行される。スイッチ型主記憶制御装置12は、
プロセッサ10−0〜10−nのリクエストについてプライオ
リティをつけ、主記憶13−0〜13−mに対してインターフ
ェース信号111−0〜111−mによってリクエストを発行す
る。スイッチ型主記憶制御装置12は、各プロセッサ10−
0〜10−nからのリクエストを平行して処理可能である。
【0017】次にプロセッサ10−0の内部構成に関して
説明する。プロセッサ10−0は、命令実行部18、命令実
行制御部19、キャッシュ制御部17、キャッシュ記憶部1
1、キャッシュタグ14、及び本発明の無効化要求リクエ
スト受けバッファ20から構成される。キャッシュ記憶部
11は主記憶装置13−0〜13−mの内容の一部を記憶するプ
ロセッサ内に設けられた高速の記憶装置である。プロセ
ッサが命令を実行するときは、スイッチ型主記憶制御部
12を経由し主記憶13−0〜13−mにアクセスし、キャッシ
ュ記憶部11にデータを読み込む。命令実行制御部はイン
ターフェース信号115、キャッシュ制御部17、インター
フェース信号112を介して、キャッシュ記憶部11から命
令を読み込み、次いで命令を解析し、命令実行部19が実
行可能になるとインターフェス信号116を介して命令実
行部18に命令を発行する。またキャッシュのタグ14は、
キャッシュ記憶部11が主記憶装置13−0〜13−mのどのア
ドレスを保持しているかが分かるように、アドレスの一
部を保持するタグ14−Aと該アドレスのキャッシュデー
タが有効であるか無効であるかを示すバリッド(V)14
−Bからなる。
【0018】プロセッサ10−0〜10−nと主記憶装置13−
0〜13−mとを結ぶスイッチ型主記憶制御部内には、キャ
ッシュの一致保証機構15が設けられている。キャッシュ
の一致保証機構15は、各プロセッサ毎に対応したキャッ
シュのタグのコピー16−0〜16−nを持っている。キャッ
シュのタグのコピー16−0〜16−nは、タグ119−0〜119
−nとタグのコピーの情報が有効であるかどうかを示す
バリッド(V)120−0〜120−nとで構成されている。
【0019】上記構成の情報処理装置においてキャッシ
ュ一致保証は例えば次のように行われる。プロセッサ10
−0が主記憶13−1のアドレスAをLD(ロード)する場
合、まず命令実行部18によって実行されたLD命令はイ
ンタフェース信号110−0を介してスイッチ型主記憶制御
装置12へと伝えられる。スイッチ型主記憶制御部12はL
D命令のアドレスにしたがって、インターフェース信号
111−1を介して主記憶13−1に対して指定したアドレス
Aにあるデータを読み込むリクエストを伝える。これと
同時にスイッチ型主記憶制御部12はキャッシュの一致保
証機構15にもLDのリクエストを伝える。LDのリクエ
ストを受けたキャッシュの一致保証機構12は、リクエス
ト発行元のプロセッサに対応するキャッシュのタグのコ
ピー16−0に、LDのアドレスAの一部であるタグ119−
0を書き込み、バリッド(V)119−0を1(有効)にす
る。一方LDのリクエストを受け取った主記憶13−1
は、LD命令によって指定されたデータをインタフェー
ス信号111−1、スイッチ型主記憶制御部12、インターフ
ェース信号110−0を通してプロセッサ10−0へ戻し、キ
ャッシュ記憶部11へ書き込む。このときキャッシュ制御
部はキャッシュタグ14にアドレスAの一部であるタグ14
−Aを書き込み、バリッド(V)14−Bを1(有効)にす
る。
【0020】次にプロセッサ10−1が、プロセッサ10−0
がキャッシュ内にデータを読み込んでいる領域である主
記憶13−1のアドレスAに対してST(ストア)を行う
とする。このST命令は命令実行部18によって実行さ
れ、そのリクエストはインタフェース信号110−1を介し
てスイッチ型主記憶制御装置12に伝えられる。スイッチ
型主記憶制御装置12は、リクエストのアドレスにより主
記憶13−1に対しアドレスAにデータを書き込むリクエ
ストをインターフェース信号111−1を介して伝える。ス
イッチ型主記憶制御装置12は、これと同時にキャッシュ
の一致保証機構15にもST命令のリクエストを伝える。
このリクエストによりキャッシュの一致保証機構15はS
T命令の発行元であるプロセッサ1以外のキャッシュタ
グのコピー16−0、16,2〜nの中で、アドレスAの一部で
あるタグの値が一致しており、かつバリッド120−0,120
−2〜nが1であるものが有るかを検索する。今の場合そ
れはプロセッサ10−0のキャッシュタグのコピー16−0内
に見つかる(ヒットする)はずである。ヒットした場合、
対応するプロセッサ10−0の対応するキャッシュタグの
バリッド14−Bを落しに行くリクエストをスイッチ型主
記憶制御部12、及びインターフェース信号110−0を介し
てプロセッサ10−0に伝える。このリクエストを受け取
ったプロセッサ10−0はキャッシュ制御部17及び、イン
ターフェース信号113を介してバリッド14−Bを0(無
効)にする。これにより、プロセッサ10−0のアドレス
Aに関するキャッシュ記憶部11のデータ内容は無効とな
る。
【0021】以上の方法でキャッシュのコヒーレンス制
御が行われる。
【0022】プロセッサ間が同期をとって処理を進める
バリア同期の動作について説明する。図5に示すように
全プロセッサが、同期ポイントに到達した時点で命令2
−0のSETBRR命令を一斉に発行する。命令実行制
御部19はこれをデコードし、このSETBRRリクエス
トをインターフェース信号110−0〜110−nを通してスイ
ッチ型主記憶制御部12に伝える。次に全プロセッサが、
命令3−0のWAITBRR命令を一斉に発行する。命令
実行制御部19はこれをデコードし、WAITBRRリク
エストをインターフェース信号110−0〜110−nを通して
スイッチ型主記憶制御装置12に伝えるとともに、WAI
TBRR以降に発行されたLD命令を、スイッチ型主記
憶制御部に送出していたSETBRRリクエストのリプ
ライが戻ってくるまで待機させ、それ以外の命令を実行
する。一方SETBRRリクエストを受け取ったスイッ
チ型主記憶制御部12はSETBRRリクエスト以前の全
リクエストを処理した後、SETBRRリクエストをキ
ャッシュの一致保証機構15に送出する。キャッシュの一
致保証機構はSETBRRリクエスト以前に来ていたL
D、STリクエストに関するキャッシュのタグのコピー
16−0〜16−nへの登録、ヒットチェック及び無効化リク
エストの送出が完了するのを待って、全SETBRRリ
クエストのリプライをスイッチ型主記憶制御部に送出す
る。スイッチ型主記憶制御部はSETBRRリクエスト
のリプライをプロセッサ10−0〜10−nに戻す。以上の操
作により、バリア同期が行われる。
【0023】図2は、本発明である図1の無効化要求リ
クエスト受けバッファ制御部20の内部構造を示す。図2
において無効化要求リクエスト受けバッファ制御部20
は、無効化要求リクエスト受け取り制御部22、無効化要
求リクエスト受けバッファ21、無効化要求リクエスト送
出制御部23、無効化要求リクエスト保持レジスタ24、比
較器25、バッファ監視制御部26、OR回路27から構成さ
れる。図1におけるスイッチ型主記憶制御装置12から送
出された無効化要求リクエストは、インターフェース信
号110−0を介してプロセッサ10−0に到着した後、図2
の無効化要求リクエスト発行線28を通じて無効化要求リ
クエスト受け取り制御部22に入る。無効化要求リクエス
ト保持レジスタ24は、無効化要求リクエスト発行線28を
介して到達する一つ前に発行された無効化要求リクエス
トを保持するレジスタである。比較器25は、現在発行さ
れている無効化要求リクエストを1つの入力としてお
り、他方の入力は無効化要求保持レジスタに保持されて
いる1つ前に発行された無効化リクエストである。比較
器25は該2つの連続したリクエストに含まれるタグ情報
を比較し、もし一致するならば1を、不一致であれば0
をインターフェース信号213上に出力する。無効化要求
リクエスト受け取り制御部22は、インターフェース信号
213上の値が1であれば、無効化要求発行線18を介して
伝えられる無効化要求リクエストをインターフェース信
号19にそのまま通過させる。もしインターフェース信号
213上の値が0であれば、インターフェース信号線19に
は何も出力しない。これにより、連続して同一タグに対
して発行される無効化要求リクエストが来た場合には、
最初に来た無効化要求リクエストのみ通過させ、後続の
同一タグに対する不必要な無効化要求リクエストを間引
く事ができる。無効要求リクエスト受け取り制御部22を
抜けた無効化要求リクエストは、インターフェース信号
19を介して無効化要求リクエスト受けバッファ21を通過
し、インターフェース信号210を介して無効化要求リク
エスト送出制御部23へと伝えられる。バッファ監視制御
部26はインタフェース信号214を介して無効化要求リク
エスト受けバッファ21の詰まり具合を監視しており、無
効化要求リクエストが一定数溜まった場合、インターフ
ェース信号215に1を出力する。無効化要求リクエスト
受けバッファ21内の無効化要求リクエストが一定数に満
たない場合は、インターフェース信号215に0を出力す
る。OR回路27は、一方の入力を無効化要求リクエスト
受けバッファが一定数溜まったときに1となるインター
フェース信号215とし、SETBRR命令通知線216の論
理和をインタフェース信号217に出力する。このSET
BRR通知線216は、図1の命令事項制御部19からイン
ターフェース信号117とつながっており、SETBRR
命令が発行されたとき1となり、WAITBRR命令が
完了したとき0の値をとる。無効化要求リクエスト送出
制御部23は、インタフェース信号617上の値が1のとき
に、無効化要求リクエスト受けバッファ21からインター
フェス信号210を介してくる無効化要求リクエストを無
効化要求リクエスト送出線211へ出力し、インターフェ
ース信号217上の値が1のときは、無効化要求リクエス
トの無効化要求送出線211へ出力を止める。この一連の
制御により、無効化要求リクエスト受けバッファ21に無
効化要求リクエストが一定数溜まるまで、無効化要求リ
クエストの送出を滞留させる事により、キャッシュのフ
ォールスシェアリングによる無意味なキャッシュの無効
化を減らすことができる。またバリア同期命令が発行さ
れバリア同期を行っている最中には、無効化要求リクエ
ストを無効化要求リクエスト受けバッファ21で滞留させ
ずに送出するので、無効化要求リクエスト受けバッファ
21に無効化要求リクエストが滞留する事によってバリア
同期の完了が遅くなる事はない。
【0024】
【発明の効果】以上に説明したように、本発明によれ
ば、複数のプロセッサと複数の主記憶をスイッチ型主記
憶制御装置で接続した構成のマルチプロセッサ方式の情
報処理装置において、キャッシュのタグのコピーをスイ
ッチ型主記憶制御装置内のコヒーレンス制御機構に持つ
ことにより、キャッシュの一致保証を行う方式をとりな
がら、キャッシュの無効化要求リクエスト受けバッファ
をプロセッサ内もしくはスイッチ型主記憶制御装置内に
設け、これに一時的に無効化要求リクエストを滞留させ
るので、キャッシュのフォールスシェアリング現象を起
こしにくくできる。一方、全プロセッサがバリア同期を
行う際には、無効化要求リクエストを滞留させる事によ
り同期完了が遅れる問題が考えられるが、前記無効化要
求リクエスト受けバッファはバリア同期を行う際には、
無効化要求リクエストの滞留を解除するので、その問題
は起こり得ない。更に連続して同一のキャッシュライン
に対する無効化要求リクエストが来た場合には、無効化
要求リクエスト受けバッファに入る前に、最初の1つを
除いて他のリクエストを間引くため、不要なキャッシュ
の無効化による性能の低下を防ぐことができる。
【図面の簡単な説明】
【図1】本発明の実施例1を構成する情報処理装置のシ
ステム構成図である。
【図2】無効化要求リクエスト受けバッファ制御部の構
成図である。
【図3】従来のスイッチ型主記憶制御装置による情報処
理装置の構成図である。
【図4】従来のSYNC命令による同期操作の命令列例
を示す図である。
【図5】従来のSETBRR命令及びWAITBRR命
令による同期操作の命令列例を示す図である。
【符号の説明】
10−0〜10−n…プロセッサ、11,11−0〜11−n…キャッ
シュ記憶部、12…スイッチ型主記憶制御部、13−0〜13
−m…主記憶、14,14−0〜14−n…キャッシュタグ、14−
A…タグ、14−B…バリッド、15…キャッシュの一致保証
機構、16−0〜16−n…キャッシュタグのコピー、17…キ
ャッシュ制御部、18…命令実行部、19…命令実行制御
部、110−0〜110−n…プロセッサと主記憶制御部のイン
ターフェース、111−0〜111−n…主記憶制御部と主記憶
とのインターフェース、112…キャッシュ記憶部とキャ
ッシュ制御部のインターフェース、113…キャッシュタ
グとキャッシュ制御部のインターフェース、114…キャ
ッシュ制御部と命令実行部のインターフェース、115…
キャッシュ制御部と命令実行制御部のインターフェー
ス、116…命令実行部と命令実行制御部のインターフェ
ース、117…命令実行制御部と無効化要求リクエスト受
けバッファ制御部とのインターフェス、118…無効化要
求リクエスト受けバッファ制御部とキャッシュタグとの
インターフェース、119−0〜119−n…タグのコピー、12
0−0〜120−n…タグのコピーのバリッド、20…無効化要
求リクエスト受けバッファ制御部、21…無効化要求リク
エスト受けバッファ、22…無効化要求リクエスト受け取
り制御部、23…無効化要求リクエスト送出制御部、24…
無効化要求リクエスト保持レジスタ、25…比較器、26…
バッファ監視制御部、27…OR回路、28…無効化要求リ
クエスト発行信号、29…無効化要求リクエスト受け取り
制御部と無効化要求リクエスト受けバッファのインター
フェース、210…無効化要求リクエスト受けバッファと
バッファ監視制御部とのインターフェース、211…無効
化要求リクエスト送出線、212…無効化要求リクエスト
保持レジスタと比較器のインターフェス、213…比較器
と無効化要求リクエスト受け取り制御部のインターフェ
ース、214…無効化要求リクエスト受けバッファとバッ
ファ監視制御部とのインターフェース、215…バッファ
監視部とOR回路とのインターフェース、216…SET
BRR命令通知線、217…OR回路と無効化要求リクエ
スト送出制御部とのインターフェース。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 寺本 康弘 神奈川県秦野市堀山下1番地 株式会社日 立製作所エンタープライズサーバー事業部 内 Fターム(参考) 5B005 KK13 MM01 MM25 NN33 PP21 5B045 BB15 BB28 BB29 BB47 DD13

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 複数のプロセッサと複数の主記憶がスイ
    ッチ型主記憶制御装置によって接続されたマルチプロセ
    ッサ方式の情報処理装置で、スイッチ型主記憶制御装置
    内のコヒーレンス制御装置には各プロセッサのキャッシ
    ュに関するタグのコピーを持ち、プロセッサから主記憶
    への更新が行われる毎に他プロセッサのタグのコピーを
    検索し、もしヒットしているなら該キャッシュラインへ
    無効化要求リクエストを送出することで、そのキャッシ
    ュラインの無効化を行うことを特徴とするキャッシュ一
    致化保証方式において、各プロセッサ内もしくは各プロ
    セッサに接続されるスイッチ型主記憶制御装置上に、コ
    ヒーレンス制御装置からのキャッシュラインの無効化要
    求リクエストを一時的に滞留することを目的とした無効
    化要求リクエスト受けバッファを各プロセッサ毎に設
    け、該バッファ内のリクエスト数が一定値になるまでキ
    ャッシュの無効化要求リクエストをバッファから送出す
    ることを遅らせることによりキャッシュのフォールスシ
    ェアリングを緩和する事を特徴とするキャッシュ一致化
    方式。
  2. 【請求項2】 上記キャッシュの無効化要求リクエスト
    受けバッファは、各プロセッサがバリア同期命令を発行
    した場合には、バッファ内のリクエスト数が一定値にな
    るのを待たずに無効化要求リクエストを送出することに
    よりバリア同期を高速に行いながらキャッシュのフォー
    ルスシェアリングを緩和することを特徴としたキャッシ
    ュの一致化方式。
  3. 【請求項3】 上記無効化要求リクエスト受けバッファ
    内に、キャッシュの同一ラインに対する無効化要求リク
    エストが連続して到達した場合には、間引くことを特徴
    とするキャッシュの一致化方式。
JP2000194895A 2000-06-23 2000-06-23 L1キャッシュフォールスシェア緩和制御方式 Pending JP2002007371A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000194895A JP2002007371A (ja) 2000-06-23 2000-06-23 L1キャッシュフォールスシェア緩和制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000194895A JP2002007371A (ja) 2000-06-23 2000-06-23 L1キャッシュフォールスシェア緩和制御方式

Publications (1)

Publication Number Publication Date
JP2002007371A true JP2002007371A (ja) 2002-01-11

Family

ID=18693651

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000194895A Pending JP2002007371A (ja) 2000-06-23 2000-06-23 L1キャッシュフォールスシェア緩和制御方式

Country Status (1)

Country Link
JP (1) JP2002007371A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008504603A (ja) * 2004-06-30 2008-02-14 インテル コーポレイション 競合しないロック命令の投機実行のための方法及び装置
JP2008046902A (ja) * 2006-08-17 2008-02-28 Fujitsu Ltd 情報処理システム、情報処理基板、及びキャッシュタグ及びスヌープタグの更新方法
JP2009122787A (ja) * 2007-11-13 2009-06-04 Nec Computertechno Ltd マルチプロセッサシステム
US7945754B2 (en) 2006-02-24 2011-05-17 Fujitsu Limited Multiprocessor system, processor, and cache control method
WO2011158320A1 (ja) * 2010-06-14 2011-12-22 富士通株式会社 マルチコアプロセッサシステム、キャッシュコヒーレンシ制御方法、およびキャッシュコヒーレンシ制御プログラム
US8468307B2 (en) 2008-08-13 2013-06-18 Nec Corporation Information processing apparatus and order guarantee method

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008504603A (ja) * 2004-06-30 2008-02-14 インテル コーポレイション 競合しないロック命令の投機実行のための方法及び装置
JP2011175669A (ja) * 2004-06-30 2011-09-08 Intel Corp 競合しないロック命令の投機実行のための方法及び装置
US7945754B2 (en) 2006-02-24 2011-05-17 Fujitsu Limited Multiprocessor system, processor, and cache control method
JP2008046902A (ja) * 2006-08-17 2008-02-28 Fujitsu Ltd 情報処理システム、情報処理基板、及びキャッシュタグ及びスヌープタグの更新方法
JP2009122787A (ja) * 2007-11-13 2009-06-04 Nec Computertechno Ltd マルチプロセッサシステム
US8468307B2 (en) 2008-08-13 2013-06-18 Nec Corporation Information processing apparatus and order guarantee method
WO2011158320A1 (ja) * 2010-06-14 2011-12-22 富士通株式会社 マルチコアプロセッサシステム、キャッシュコヒーレンシ制御方法、およびキャッシュコヒーレンシ制御プログラム
JP5360299B2 (ja) * 2010-06-14 2013-12-04 富士通株式会社 マルチコアプロセッサシステム、キャッシュコヒーレンシ制御方法、およびキャッシュコヒーレンシ制御プログラム
US8996820B2 (en) 2010-06-14 2015-03-31 Fujitsu Limited Multi-core processor system, cache coherency control method, and computer product
US9390012B2 (en) 2010-06-14 2016-07-12 Fujitsu Limited Multi-core processor system, cache coherency control method, and computer product

Similar Documents

Publication Publication Date Title
EP0422656B1 (en) Information processing system
US6820086B1 (en) Forming linked lists using content addressable memory
JP3927556B2 (ja) マルチプロセッサ・データ処理システム、変換索引バッファ無効化インストラクション(tlbi)のハンドリングを行うための方法、およびプロセッサ
US6292705B1 (en) Method and apparatus for address transfers, system serialization, and centralized cache and transaction control, in a symetric multiprocessor system
US6877077B2 (en) Memory controller and method using read and write queues and an ordering queue for dispatching read and write memory requests out of order to reduce memory latency
US8285969B2 (en) Reducing broadcasts in multiprocessors
JP3802061B2 (ja) アドレス変換速度アップのための並列アクセスマイクロ−tlb
US6434641B1 (en) System for reducing the number of requests presented to a main memory in a memory storage system employing a directory-based caching scheme
KR920008427B1 (ko) 마이크로프로세서
US8032716B2 (en) System, method and computer program product for providing a new quiesce state
US8799584B2 (en) Method and apparatus for implementing multi-processor memory coherency
JPH04227552A (ja) ストアスルーキャッシュ管理システム
JPH10105462A (ja) 分割フェーズ制御を用いる明示的コヒーレンス
JPH0561770A (ja) データ処理システムのコヒーレンス手段
US5018063A (en) Method for reducing cross-interrogate delays in a multiprocessor system
US6253291B1 (en) Method and apparatus for relaxing the FIFO ordering constraint for memory accesses in a multi-processor asynchronous cache system
JPH06318177A (ja) キャッシュ・ミス・ペナルティを減少させる方法、装置及びコンピュータ・システム
KR20180063820A (ko) 메모리에서 어드레스 범위간의 데이터 전송 장치 및 방법
JPH0950400A (ja) マルチプロセッサシステム
JP2547949B2 (ja) データ・コヒーレンシを維持する方法及びシステム
US10983914B2 (en) Information processing apparatus, arithmetic processing device, and method for controlling information processing apparatus
US5761724A (en) Write-invalidate cache system for a split transaction bus based shared memory multiprocessor
JPH0567976B2 (ja)
JP2002007371A (ja) L1キャッシュフォールスシェア緩和制御方式
JPH09311820A (ja) マルチプロセッサシステム