JP4572169B2 - マルチプロセッサシステム及びその動作方法 - Google Patents
マルチプロセッサシステム及びその動作方法 Download PDFInfo
- Publication number
- JP4572169B2 JP4572169B2 JP2006017533A JP2006017533A JP4572169B2 JP 4572169 B2 JP4572169 B2 JP 4572169B2 JP 2006017533 A JP2006017533 A JP 2006017533A JP 2006017533 A JP2006017533 A JP 2006017533A JP 4572169 B2 JP4572169 B2 JP 4572169B2
- Authority
- JP
- Japan
- Prior art keywords
- cell
- request
- write
- directory
- reply
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0817—Cache consistency protocols using directory methods
- G06F12/0828—Cache consistency protocols using directory methods with concurrent directory accessing, i.e. handling multiple concurrent coherency transactions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
図4を参照して、本実施の形態に係るマルチプロセッサシステムの動作を説明する。図4において、リクエストセルCRは、リードリクエストを発行する発行元であるCPUを搭載している。ホームセルCHは、そのアクセス対象であるデータが格納されたメインメモリを有している。オーナーセルCOは、そのアクセス対象であるデータの最新版(最新データ)をキャッシングしているキャッシュを有している。ここでは、リクエストセルCR、ホームセルCH、及びオーナーセルCOがそれぞれ異なる場合を考える。
2−1.全体構成
本実施の形態に係る処理を実現するための具体的な構成例を以下に説明する。本実施の形態に係るマルチプロセッサシステムは分散共有メモリ型のマルチプロセッサシステムであり、その全体的な構成は図1に示された構成と同様である。すなわち、本実施の形態に係る分散共有メモリ型マルチプロセッサシステム1は、複数のセル(ノード)C1〜Cn(nはセル数を示す整数)と、それら複数のセルC1〜Cn間を互いに結合するクロスバースイッチ9を備えている。複数のセルC1〜Cnは、共有バスやデータリンク等のネットワークにより互いに結合されていてもよい。
E(Exclusive):当該キャッシュ中のデータは、複数のキャッシュのうち当該キャッシュ内にのみ存在し、且つ、メインメモリ内のデータと同一である。つまり、最新データは、自キャッシュとメインメモリに存在する。
S(Shared):当該キャッシュ中のデータは、自キャッシュ及び他のCPUのキャッシュに存在し、且つ、メインメモリ内のデータと同一である。つまり、最新データは、複数のキャッシュとメインメモリに存在する。
I(Invalid)、U(Uncached):当該キャッシュ中のデータは、無効である。つまり、最新データは、自キャッシュに存在せずメインメモリに存在する。
図6は、本実施の形態に係るセルCjのキャッシュコヒーレンシ回路3−jの構成を示すブロック図である。セルCjにおいて、キャッシュコヒーレンシ回路3−jは、複数のCPU2−j−1〜2−j−m、ディレクトリ4−j、及びメインメモリ5−jに接続されている。また、キャッシュコヒーレンシ回路3−jは、クロスバースイッチ9を介して他のセルと通信可能に接続されている。図6に示されるように、キャッシュコヒーレンシ回路3−jは、CPUリクエスト制御部10、クロスバーリクエスト制御部20、メインパイプ部30、ディレクトリアクセス制御部40、メインメモリアクセス制御部50、及びリプライデータ制御部60を有している。それらユニットは、互いにデータやリクエストをやりとりできるように構成されている。
図7は、本実施の形態に係るメインパイプ部30の構成を示すブロック図である。図7に示されるように、メインパイプ部30は、スヌープ管理テーブル31、ライトバック検出回路32、キャンセル判定回路33、ディスカード判定回路34、及び調停制御回路35を有している。
既出の図6、図7、図9、及び以下に示される図面を参照しながら、本実施の形態に係るマルチプロセッサシステム1の動作例を説明する。本動作例において、リクエストセルCR、ホームセルCH、及びオーナーセルCOは互いに異なっているとする。例えば、リクエストセルCRはセルC1、ホームセルCHはセルC2、オーナーセルCOはセルC3である。つまり、リクエストセルC1のCPU2(例えばCPU2−1−1)による読み出し対象のアドレスは、ホームセルC2に搭載されたメインメモリ5−2中のアドレスであり、そのアドレスに対応した最新データは、オーナーセルC3に搭載されたCPU2(例えばCPU2−3−1)中のキャッシュ7に格納されている。
まず、リクエストセルC1のCPU2−1−1が、ホームセルC2のメインメモリ5−2中のアドレスA0に対して「リードリクエスト」を発行する。このリードリクエストには、リード対象アドレスA0及び発行元(CPU2−1−1)が含まれている。CPU2−1−1がリードリクエストを発行すると、リクエストセルC1のCPU2−1−1〜CPU2−1−mのそれぞれにおいてスヌープ処理が実行される。具体的には、CPU2−1−1〜CPU2−1−mのそれぞれのキャッシュ7が、自身がリード対象アドレスA0のデータを格納しているかどうか調べる。
ホームセルC2のキャッシュコヒーレンシ回路3−2のクロスバーリクエスト制御部20は、リクエストセルC1からクロスバースイッチ9を通してリードリクエストを受け取る。そして、クロスバーリクエスト制御部20は、受け取ったリードリクエストをメインパイプ部30に転送する。メインパイプ部30の調停制御回路35は、そのリードリクエストとCPUリクエスト制御部10からのリクエストとの調停を行う。
ホームセルC2のディレクトリアクセス制御部40は、受け取ったリードリクエストに応答して、まずディレクトリ4−2の索引を行う。図11に示されるように、ディレクトリ4−2において、リード対象アドレスA0に対するステータスは“P”、オーナーセル情報は“セルC3”である。この場合、ディレクトリアクセス制御部40は、クロスバースイッチ9を通してオーナーセルC3に「スヌープリクエスト」を発行する。このスヌープリクエストには、リードリクエストの情報がコピーされ、リード対象アドレスA0及び当該リードリクエストの発行元(リクエストセルC1のCPU2−1−1)が含まれる。
一方、ホームセルC2のメインメモリアクセス制御部50は、受け取ったリードリクエストに応答して、メインメモリ5−2中のリード対象アドレスA0からデータを読み出す。そして、メインメモリアクセス制御部50は、読み出されたデータに、ディレクトリアクセス制御部40から受け取ったステータス情報“P”とオーナーセル情報“C3”を付与することによって、リプライデータDRを生成する。メモリアクセス制御部50は、そのリプライデータDRを、クロスバースイッチ9を介してリクエストセルC1に送信する。
リクエストセルC1のリプライデータ制御部60は、クロスバースイッチ9からリプライデータDRを受け取る。そのリプライデータDRには、ステータスが“P”であることと、オーナーセルがセルC3であることが示されている。この場合、リプライデータ制御部60は、オーナーセルC3からのリプライデータを待ち合わせる。
オーナーセルC3のCPUリクエスト制御部10は、ホームセルC2が発行したスヌープリクエストを受け取る。そして、CPUリクエスト制御部10は、自セルC3のCPU2−3−1〜2−3−mにスヌープリクエストを発行する。CPU2−3−1〜2−3−mのそれぞれのキャッシュ7は、スヌープ処理を実行する。その結果、キャッシュステータスが“M”であるCPU2−3−1は、「リプライライトバック」をCPUリクエスト制御部10に発行する。リプライライトバックには、スヌープリクエストの情報がコピーされ、リード対象アドレスA0及びリードリクエストの発行元(リクエストセルC1)が含まれる。更に、リプライライトバックには、キャッシュ7から読み出されたデータ(ライトバックデータ)が含まれる。リード対象アドレスA0は、そのライトバックデータが書き戻されるライトバック対象アドレスA0でもある。また、リプライライトバックの発行に応答して、CPU2−3−1のキャッシュ7のキャッシュステータスは、“M”から“I”に変更される。
リクエストセルC1のリプライデータ制御部60は、オーナーセルC3からクロスバースイッチ9を通してリプライデータDR’を直接受け取る。この時、リプライデータ制御部60は、上記ステップS15で受け取ったリプライデータDRを破棄する。そして、リプライデータ制御部60は、オーナーセルC3から受け取ったリプライデータDR’を、リードリクエストの発行元であるCPU2−1−1に送信する。CPU2−1−1は、リプライデータDR’を受け取ると、そのリプライデータDR’を自身のキャッシュ7に登録する。この時、CPU2−1−1のキャッシュ7のキャッシュステータスは、“I”から“E”に変更される。以上に説明されたように、リードリクエストの発行からリプライデータDR’の受け取りまでが3HOPで実現される。
ステップS17の後、CPU2−1−1は、キャッシュ7に格納されたデータを新たなデータで書き換える、すなわち、キャッシュ7に格納されたデータを更新する。この時、そのキャッシュ7のステータスは、“E”から“M”に一旦変更される。更に、CPU2−1−1は、キャッシュ7のデータ更新に応答して、「リクエストライトバック」をCPUリクエスト制御部10に発行する。リクエストライトバックの発行に応答して、CPU2−1−1のキャッシュ7のキャッシュステータスは、“M”から“I”に変更される。このリクエストライトバックには、キャッシュ7に格納された最新データ(ライトバックデータ)、ライトバック対象アドレスA0、発行元情報(リクエストセルC1のCPU2−1−1)、及びディレクトリ更新情報が含まれている。キャッシュステータスが“I”に変更されている場合、ディレクトリ更新情報は「U更新」に設定される。
ホームセルC2のキャッシュコヒーレンシ回路3−2のクロスバーリクエスト制御部20は、リクエストセルC1からリクエストライトバックを受け取る。そして、クロスバーリクエスト制御部20は、受け取ったリクエストライトバックをメインパイプ部30に転送する。メインパイプ部30の調停制御回路35は、そのリクエストライトバックとCPUリクエスト制御部10からのリクエストとの調停を行う。
ホームセルC2のメインメモリアクセス制御部50は、受け取ったリクエストライトバックに応答して、メインメモリ5−2中のライトバック対象アドレスA0に、ライトバックデータを書き戻す。
ホームセルC2は、ステップS19による「リクエストライトバック」よりも後に、上記ステップS16−1による「リプライライトバック」を受け取るとする。ホームセルC2のキャッシュコヒーレンシ回路3−2のクロスバーリクエスト制御部20は、オーナーセルC3からリプライライトバックを受け取る。そして、クロスバーリクエスト制御部20は、受け取ったリプライライトバックをメインパイプ部30に転送する。メインパイプ部30の調停制御回路35は、そのリプライライトバックとCPUリクエスト制御部10からのリクエストとの調停を行う。
また、ディスカード判定回路34は、ライトバック検出情報314を参照した際、当該アドレス一致エントリのディレクトリ更新情報が「U」にセットされていることを検知する(図11参照)。この場合、ディスカード判定回路34は、ディレクトリアクセス制御部40に「更新リクエスト(U更新)」を発行する。ディレクトリアクセス制御部40は、受け取った更新リクエストに応答して、ディレクトリ4−2の更新を行う。図9に示された規定によるとリプライライトバックの場合は「NC」であるが、今回の場合、「更新リクエスト(U更新)」が優先される。よって、ディレクトリアクセス制御部40は、更新リクエストに応じて、ディレクトリ4−2のステータスを“P”から“U”に変更し、オーナーセル情報を消去する。図11に示されるように、セルC1のキャッシュステータス(“I”)、セルC2のディレクトリ4−2のステータス(“U”)、及びセルC3のキャッシュステータス(“I”)の間に不整合が無いことが分かる。すなわち、セル間のコヒーレンシが保たれている。
以上に説明されたように、本発明によれば、リクエストセルCRとホームセルCHとオーナーセルCOがそれぞれ異なる状態においても、コヒーレンシの保障とレイテンシの短縮が実現される。
2 CPU
3 キャッシュコヒーレンシ回路
4 ディレクトリ
5 メインメモリ
7 キャッシュ
9 クロスバースイッチ
C セル
CR リクエストセル
CH ホームセル
CO オーナーセル
10 CPUリクエスト制御部
20 クロスバーリクエスト制御部
30 メインパイプ部
31 スヌープ管理テーブル
311 Vビット
312 アドレス情報
313 セル情報
314 ライトバック検出情報
32 ライトバック検出回路
321 アドレス情報比較器
322 セル情報比較器
323 AND
33 キャンセル判定回路
34 ディスカード判定回路
35 調停制御回路
40 ディレクトリアクセス制御部
50 メインメモリアクセス制御部
60 リプライデータ制御部
Claims (12)
- 同一の機能を有する複数のセルと、
前記複数のセル間を接続するネットワークと
を具備し、
前記複数のセルの各々は、プロセッサ、キャッシュメモリ、及びメインメモリを備え、
前記複数のセルは、
リクエストセルとしての第1セルと、
ホームセルとしての第2セルと、
オーナーセルとしての第3セルと
を含み、
前記第2セルの前記メインメモリに記憶された対象データの最新版は、前記第3セルの前記キャッシュメモリに格納され、
前記第1セルは、前記対象データに対するリードリクエストを前記第2セルに発行し、
前記第2セルは、前記リードリクエストに応答して、スヌープリクエストを前記第3セルに発行し、
前記第3セルは、前記スヌープリクエストに応答して、前記対象データを前記第1セルに直接送信し、リプライライトバックを前記第2セルに送信し、
前記第1セルは、前記第2セル中の前記対象データと同じアドレスに対してリクエストライトバックを発行し、
前記第2セルは、前記第3セルからの前記リプライライトバックを前記第1セルからの前記リクエストライトバックよりも後に受信した場合、前記リプライライトバックを破棄する
マルチプロセッサシステム。 - 請求項1に記載のマルチプロセッサシステムであって、
前記各々のセルは、更にディレクトリを備え、
前記第1セルが発行する前記リクエストライトバックは、前記第1セルに含まれる前記キャッシュメモリのステータスと前記第2セルの前記ディレクトリのステータスとを整合させるためのディレクトリ更新情報を含み、
前記第2セルは、前記リプライライトバックを前記リクエストライトバックよりも後に受信した場合、前記リプライライトバックを破棄すると共に、前記ディレクトリ更新情報に基づいて前記ディレクトリのステータスを更新する
マルチプロセッサシステム。 - 請求項2に記載のマルチプロセッサシステムであって
前記各々のセルは、更にスヌープ管理テーブルを備え、
前記リードリクエストは、当該リクエストの発行元を示すリクエストセル情報と、リード対象アドレスを示すアドレス情報とを含み、
前記第2セルは、前記リードリクエストに応答して、前記リクエストセル情報と前記アドレス情報を前記スヌープ管理テーブルに登録する
マルチプロセッサシステム。 - 請求項3に記載のマルチプロセッサシステムであって、
前記各々のセルは、更にライトバック検出回路を備え、
前記スヌープ管理テーブルは、前記登録されたリクエストセル情報及びアドレス情報に対応付けられた検出フラグを有し、
前記第2セルの前記ライトバック検出回路は、前記登録されたアドレス情報が示す前記リード対象アドレスと同じアドレスに対する前記リクエストライトバックを検出し、前記リクエストライトバックが検出された場合、前記検出フラグを有効にする
マルチプロセッサシステム。 - 請求項4に記載のマルチプロセッサシステムであって、
前記リクエストライトバックは、当該リクエストの発行元を示すリクエストライトバックセル情報と、ライトバック対象アドレスを示すライトバックアドレス情報とを含み、
前記第2セルの前記ライトバック検出回路は、前記リクエストライトバックセル情報及び前記ライトバックアドレス情報のそれぞれを、前記スヌープ管理テーブルに登録されたリクエストセル情報及びアドレス情報と比較することによって、前記リード対象アドレスと同じアドレスに対する前記リクエストライトバックを検出する
マルチプロセッサシステム。 - 請求項4又は5に記載のマルチプロセッサシステムであって、
前記各々のセルは、更にディスカード判定回路を有し、
前記第2セルの前記ディスカード判定回路は、前記第3セルからの前記リプライライトバックに応答して前記検出フラグを参照し、前記検出フラグが有効化されている場合、前記リプライライトバックを破棄する
マルチプロセッサシステム。 - 請求項6に記載のマルチプロセッサシステムであって、
前記第2セルの前記ライトバック検出回路は、前記検出フラグを有効にすると共に、前記リクエストライトバックが示す前記ディレクトリ更新情報を、前記有効化された検出フラグと対応づけて前記スヌープ管理テーブルに格納し、
前記第2セルの前記ディスカード判定回路は、前記第3セルからの前記リプライライトバックに応答して前記検出フラグと前記ディレクトリ更新情報を参照し、前記リプライライトバックを破棄すると共に、前記ディレクトリ更新情報に基づいて前記ディレクトリのステータスを更新させる
マルチプロセッサシステム。 - 請求項3乃至7のいずれかに記載のマルチプロセッサシステムであって、
前記第2セルは、前記リプライライトバックに応答して、前記スヌープ管理テーブル中の前記登録されたリクエストセル情報とアドレス情報に対応するエントリを初期化する
マルチプロセッサシステム。 - 請求項2乃至8のいずれかに記載のマルチプロセッサシステムであって、
前記ディレクトリには、自セルの前記メインメモリの全アドレスのデータに関して、最新のデータを有するセルを示す情報が含まれ、
前記リードリクエストは、当該リクエストの発行元を示すリクエストセル情報と、リード対象アドレスを示すアドレス情報とを含み、
前記第2セルは、前記リードリクエストに応答して前記ディレクトリを参照し、前記リード対象アドレスのデータの最新版が前記第3セルに格納されていることを認識し、前記スヌープリクエストを前記第3セルに発行する
マルチプロセッサシステム。 - 請求項9に記載のマルチプロセッサシステムであって、
前記発行されたスヌープリクエストは、前記リードリクエストに含まれる情報を含み、
前記第3セルは、前記スヌープリクエストに含まれる前記リクエストセル情報に基づいて、前記対象データの送信先が前記第1セルであることを認識し、前記キャッシュメモリから読みだされた前記対象データを前記第1セルに直接送信する
マルチプロセッサシステム。 - マルチプロセッサシステムの動作方法であって、
前記マルチプロセッサシステムは、同一の機能を有する複数のセルを具備し、
前記複数のセルの各々は、プロセッサ、キャッシュメモリ、及びメインメモリを備え、
前記複数のセルは、
リクエストセルとしての第1セルと、
ホームセルとしての第2セルと、
オーナーセルとしての第3セルと
を含み、
前記第2セルの前記メインメモリに記憶された対象データの最新版は、前記第3セルの前記キャッシュメモリに格納され、
前記動作方法は、
(A)前記第1セルが、前記対象データに対するリードリクエストを前記第2セルに発行するステップと、
(B)前記第2セルが、前記リードリクエストに応答して、スヌープリクエストを前記第3セルに発行するステップと、
(C)前記第3セルが、前記スヌープリクエストに応答して、前記対象データを前記第1セルに直接送信するステップと、
(D)前記第3セルが、前記スヌープリクエストに応答して、リプライライトバックを前記第2セルに発行するステップと、
(E)前記第1セルが、前記第2セル中の前記対象データと同じアドレスに対してリクエストライトバックを発行するステップと、
(F)前記第2セルが、前記第3セルからの前記リプライライトバックを前記第1セルからの前記リクエストライトバックよりも後に受信した場合、前記リプライライトバックを破棄するステップと
を有する
マルチプロセッサシステムの動作方法。 - 請求項11に記載のマルチプロセッサシステムの動作方法であって、
前記各々のセルは、更にディレクトリを備え、
前記(E)ステップにおいて、前記リクエストライトバックは、前記第1セルに含まれる前記キャッシュメモリのステータスと前記第2セルの前記ディレクトリのステータスとを整合させるためのディレクトリ更新情報を含み、
前記(F)ステップにおいて、前記第2セルは、前記リプライライトバックを破棄すると共に、前記ディレクトリ更新情報に基づいて前記ディレクトリのステータスを更新する
マルチプロセッサシステムの動作方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006017533A JP4572169B2 (ja) | 2006-01-26 | 2006-01-26 | マルチプロセッサシステム及びその動作方法 |
| US11/657,045 US7904665B2 (en) | 2006-01-26 | 2007-01-24 | Multiprocessor system and its operational method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006017533A JP4572169B2 (ja) | 2006-01-26 | 2006-01-26 | マルチプロセッサシステム及びその動作方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2007199999A JP2007199999A (ja) | 2007-08-09 |
| JP4572169B2 true JP4572169B2 (ja) | 2010-10-27 |
Family
ID=38286944
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006017533A Expired - Fee Related JP4572169B2 (ja) | 2006-01-26 | 2006-01-26 | マルチプロセッサシステム及びその動作方法 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US7904665B2 (ja) |
| JP (1) | JP4572169B2 (ja) |
Families Citing this family (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008536236A (ja) * | 2005-04-13 | 2008-09-04 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | コンピュータシステムにおけるデータ値の整合性(コヒーレンス:coherence) |
| JP4474570B2 (ja) * | 2008-01-28 | 2010-06-09 | エヌイーシーコンピュータテクノ株式会社 | キャッシュコヒーレンシ制御方法 |
| US8223650B2 (en) * | 2008-04-02 | 2012-07-17 | Intel Corporation | Express virtual channels in a packet switched on-chip interconnection network |
| US8244986B2 (en) * | 2009-12-30 | 2012-08-14 | Empire Technology Development, Llc | Data storage and access in multi-core processor architectures |
| JP5614452B2 (ja) * | 2010-09-13 | 2014-10-29 | 富士通株式会社 | 情報処理装置および情報処理装置の制御方法 |
| GB2484088B (en) * | 2010-09-28 | 2019-08-07 | Advanced Risc Mach Ltd | Coherency control with writeback ordering |
| US10315119B2 (en) * | 2011-05-17 | 2019-06-11 | Activision Publishing, Inc. | Video game with concurrent processing of game-related physical objects |
| JP5573829B2 (ja) * | 2011-12-20 | 2014-08-20 | 富士通株式会社 | 情報処理装置およびメモリアクセス方法 |
| JP5906881B2 (ja) | 2012-03-27 | 2016-04-20 | 富士通株式会社 | 情報処理装置及び情報処理装置の制御方法 |
| US8812936B2 (en) * | 2012-07-06 | 2014-08-19 | Sandisk Technologies Inc. | Using slow response memory device on a fast response interface |
| JP2014048848A (ja) * | 2012-08-30 | 2014-03-17 | Fujitsu Ltd | 演算処理装置、情報処理装置およびデータ転送方法 |
| JP5958192B2 (ja) * | 2012-08-30 | 2016-07-27 | 富士通株式会社 | 演算処理装置、情報処理装置、及び演算処理装置の制御方法 |
| CN106681938B (zh) * | 2012-10-22 | 2020-08-18 | 英特尔公司 | 用于控制多时隙链路层微片中的消息收发的装置和系统 |
| JP2014160502A (ja) * | 2014-04-28 | 2014-09-04 | Fujitsu Ltd | 情報処理装置およびメモリアクセス方法 |
| CN106462501B (zh) | 2014-05-08 | 2019-07-09 | 美光科技公司 | 基于混合存储器立方体系统互连目录的高速缓冲存储器一致性方法 |
| US9781225B1 (en) * | 2014-12-09 | 2017-10-03 | Parallel Machines Ltd. | Systems and methods for cache streams |
| JP6520733B2 (ja) * | 2016-01-26 | 2019-05-29 | 富士通株式会社 | 情報処理装置および制御方法 |
| JP6540535B2 (ja) * | 2016-02-17 | 2019-07-10 | 富士通株式会社 | 制御装置、情報処理装置及び情報処理装置の制御方法 |
| JP6578992B2 (ja) * | 2016-03-02 | 2019-09-25 | 富士通株式会社 | 制御回路、情報処理装置、および情報処理装置の制御方法 |
| GB2566647B (en) * | 2016-09-01 | 2021-10-27 | Advanced Risc Mach Ltd | Cache retention data management |
| US10579526B2 (en) * | 2017-02-08 | 2020-03-03 | Arm Limited | Responding to snoop requests |
| US11159636B2 (en) * | 2017-02-08 | 2021-10-26 | Arm Limited | Forwarding responses to snoop requests |
Family Cites Families (30)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5367654A (en) * | 1988-04-13 | 1994-11-22 | Hitachi Ltd. | Method and apparatus for controlling storage in computer system utilizing forecasted access requests and priority decision circuitry |
| JPH06110844A (ja) | 1992-08-11 | 1994-04-22 | Toshiba Corp | 分散共有メモリ型マルチプロセッサシステム |
| US5522058A (en) * | 1992-08-11 | 1996-05-28 | Kabushiki Kaisha Toshiba | Distributed shared-memory multiprocessor system with reduced traffic on shared bus |
| US5659709A (en) * | 1994-10-03 | 1997-08-19 | Ast Research, Inc. | Write-back and snoop write-back buffer to prevent deadlock and to enhance performance in an in-order protocol multiprocessing bus |
| JP3872118B2 (ja) * | 1995-03-20 | 2007-01-24 | 富士通株式会社 | キャッシュコヒーレンス装置 |
| US5581729A (en) * | 1995-03-31 | 1996-12-03 | Sun Microsystems, Inc. | Parallelized coherent read and writeback transaction processing system for use in a packet switched cache coherent multiprocessor system |
| US5634068A (en) * | 1995-03-31 | 1997-05-27 | Sun Microsystems, Inc. | Packet switched cache coherent multiprocessor system |
| US5860110A (en) * | 1995-08-22 | 1999-01-12 | Canon Kabushiki Kaisha | Conference maintenance method for cache memories in multi-processor system triggered by a predetermined synchronization point and a predetermined condition |
| JPH09223118A (ja) * | 1996-02-14 | 1997-08-26 | Oki Electric Ind Co Ltd | スヌープキャッシュメモリ制御システム |
| US5893160A (en) * | 1996-04-08 | 1999-04-06 | Sun Microsystems, Inc. | Deterministic distributed multi-cache coherence method and system |
| US5897657A (en) * | 1996-07-01 | 1999-04-27 | Sun Microsystems, Inc. | Multiprocessing system employing a coherency protocol including a reply count |
| US5881303A (en) * | 1996-07-01 | 1999-03-09 | Sun Microsystems, Inc. | Multiprocessing system configured to perform prefetch coherency activity with separate reissue queue for each processing subnode |
| US5887138A (en) * | 1996-07-01 | 1999-03-23 | Sun Microsystems, Inc. | Multiprocessing computer system employing local and global address spaces and COMA and NUMA access modes |
| JP2916421B2 (ja) * | 1996-09-09 | 1999-07-05 | 株式会社東芝 | キャッシュフラッシュ装置およびデータ処理方法 |
| JP3751741B2 (ja) | 1998-02-02 | 2006-03-01 | 日本電気株式会社 | マルチプロセッサシステム |
| US6560681B1 (en) | 1998-05-08 | 2003-05-06 | Fujitsu Limited | Split sparse directory for a distributed shared memory multiprocessor system |
| JP3404289B2 (ja) * | 1998-05-22 | 2003-05-06 | 富士通株式会社 | ディスク制御装置及びその制御方法 |
| JP3676934B2 (ja) * | 1998-12-15 | 2005-07-27 | 株式会社日立製作所 | プロセッサおよびマルチプロセッサシステム |
| US6631401B1 (en) * | 1998-12-21 | 2003-10-07 | Advanced Micro Devices, Inc. | Flexible probe/probe response routing for maintaining coherency |
| JP4718012B2 (ja) * | 1998-12-21 | 2011-07-06 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | メモリキャンセルメッセージを用いたシステムメモリ帯域幅の節約およびキャッシュコヒーレンシ維持 |
| JP3769411B2 (ja) | 1999-03-09 | 2006-04-26 | 日本電気株式会社 | マルチプロセッサシステム |
| JP2000330965A (ja) * | 1999-03-17 | 2000-11-30 | Hitachi Ltd | マルチプロセッサシステム及びそのメモリアクセストランザクションの転送方法 |
| KR100329969B1 (ko) * | 1999-12-23 | 2002-03-27 | 오길록 | 캐시 동일성 유지 메모리 시스템에서 캐시 충돌 방지 장치및 그 방법 |
| US6681293B1 (en) * | 2000-08-25 | 2004-01-20 | Silicon Graphics, Inc. | Method and cache-coherence system allowing purging of mid-level cache entries without purging lower-level cache entries |
| US6751705B1 (en) * | 2000-08-25 | 2004-06-15 | Silicon Graphics, Inc. | Cache line converter |
| JP2002259207A (ja) * | 2001-03-02 | 2002-09-13 | Fujitsu Ltd | 情報処理装置及び信号処理装置並びにインタフェース装置 |
| US6901485B2 (en) * | 2001-06-21 | 2005-05-31 | International Business Machines Corporation | Memory directory management in a multi-node computer system |
| JP2003216597A (ja) | 2002-01-23 | 2003-07-31 | Hitachi Ltd | マルチプロセッサシステム |
| US7822929B2 (en) * | 2004-04-27 | 2010-10-26 | Intel Corporation | Two-hop cache coherency protocol |
| JP4848771B2 (ja) * | 2006-01-04 | 2011-12-28 | 株式会社日立製作所 | キャッシュ一貫性制御方法およびチップセットおよびマルチプロセッサシステム |
-
2006
- 2006-01-26 JP JP2006017533A patent/JP4572169B2/ja not_active Expired - Fee Related
-
2007
- 2007-01-24 US US11/657,045 patent/US7904665B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| US20070174557A1 (en) | 2007-07-26 |
| JP2007199999A (ja) | 2007-08-09 |
| US7904665B2 (en) | 2011-03-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4572169B2 (ja) | マルチプロセッサシステム及びその動作方法 | |
| US7779292B2 (en) | Efficient storage of metadata in a system memory | |
| US7783841B2 (en) | Efficient coherency communication utilizing an IG coherency state | |
| CN100428195C (zh) | 数据处理系统和方法 | |
| US7747826B2 (en) | Data processing system and method for efficient communication utilizing an in coherency state | |
| US7480772B2 (en) | Data processing system and method for efficient communication utilizing an Tn and Ten coherency states | |
| US8140770B2 (en) | Data processing system and method for predictively selecting a scope of broadcast of an operation | |
| US20080215824A1 (en) | Cache memory, processing unit, data processing system and method for filtering snooped operations | |
| JPH07253928A (ja) | 2重化キャッシュ・スヌープ機構 | |
| US20090198960A1 (en) | Data processing system, processor and method that support partial cache line reads | |
| US7774555B2 (en) | Data processing system and method for efficient coherency communication utilizing coherency domain indicators | |
| US7469322B2 (en) | Data processing system and method for handling castout collisions | |
| US7376793B2 (en) | Cache coherence protocol with speculative writestream | |
| US8214600B2 (en) | Data processing system and method for efficient coherency communication utilizing coherency domains | |
| US7669013B2 (en) | Directory for multi-node coherent bus | |
| US7725660B2 (en) | Directory for multi-node coherent bus | |
| US8255635B2 (en) | Claiming coherency ownership of a partial cache line of data | |
| US20060179249A1 (en) | Data processing system and method for predictively selecting a scope of broadcast of an operation utilizing a location of a memory | |
| US7584331B2 (en) | Data processing system and method for selectively updating an invalid coherency state in response to snooping a castout | |
| JP5063059B2 (ja) | 方法、データ処理システム、メモリ・コントローラ(i/o書込みオペレーションのパイプライン化および多重オペレーション範囲を可能にするデータ処理システムおよび方法) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100512 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100527 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100721 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100805 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100816 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130820 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4572169 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| LAPS | Cancellation because of no payment of annual fees |