JP2009070013A - マルチプロセッサ及びメモリリプレース方法 - Google Patents
マルチプロセッサ及びメモリリプレース方法 Download PDFInfo
- Publication number
- JP2009070013A JP2009070013A JP2007236085A JP2007236085A JP2009070013A JP 2009070013 A JP2009070013 A JP 2009070013A JP 2007236085 A JP2007236085 A JP 2007236085A JP 2007236085 A JP2007236085 A JP 2007236085A JP 2009070013 A JP2009070013 A JP 2009070013A
- Authority
- JP
- Japan
- Prior art keywords
- cell
- memory
- copy
- snoop
- processor
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/082—Associative directories
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)
Abstract
【解決手段】キャッシュメモリを有するプロセッサ101〜104と、メモリ111〜114とを有するセルを複数備えるマルチプロセッサシステムであって、各セル100は、他セル内のキャッシュメモリに記録されている自セル内のメモリ111〜114のデータに関するステータス情報を保持するスパースディレクトリ121と、異なるメモリ間でデータコピーを行う場合、コピー元メモリからコピー先メモリへデータをコピーし、コピー元セル内のスパースディレクトリ121が保持するステータス情報に基づいて、コピー先セルのスパースディレクトリを更新するセルコントローラ120とを備える。
【選択図】図1
Description
本実施形態では、コピー元のスパースディレクトリにコピー元のメモリのキャッシュ状況を反映させ、メモリ間のデータコピー後にコピー元のスパースディレクトリの情報をコピー先のスパースディレクトリへ反映させる一態様を説明する。
システムFW(Firmware)122は、セルコントローラ120内に設けられ、HW(hardware)の基本的な制御を行うソフトのことである。例えば、今回のメモリ間のデータコピーも、システムFWで制御可能なものの1つということができる。。
セレクタ413は、リクエスト格納バッファ403とスヌープレスポンス格納バッファ404との出力を選択する。セレクタ413は、状態フラグ401の値を入力し、状態フラグ401が[10]を示すとき、すなわち、コピー先セルのときに、スヌープレスポンス格納バッファ404の出力を優先して選択する構成にしてもよい。
上記実施形態では、セルに複数のプロセッサを有する場合を説明したが、セル内に一つのプロセッサとメモリの組み合わせを備える場合であっても本発明を適用することができる。このような場合、図5のステップS601では、セル内のプロセッサがシステムFWの指示を受けてメモリ111へのリードを要求したが、システムFWは、セル外のプロセッサにリード要求の指示を行ってもよい。また、コピー元セル内のプロセッサのキャッシュメモリに保持されるコピー元メモリに関する情報はないため、コピー元セル内のスパースディレクトリへステータス情報を収集する処理は不要となる。
第1の効果は、プロセッサ間キャッシュコヒーレンシの保証をするために、従来はメモリのデータコピー完了後にメモリのキャッシュライン数分を全てリードする必要があった。しかし、本発明では、メモリのキャッシュラインの一部のキャッシュラインを管理するスパースディレクトリの全エントリをリードすればよい。エントリ数がメモリのライン数より格段に少ないために、キャッシュコヒーレンシを保証するためにかかる時間を短縮することができる。
101、102、103、104 プロセッサ
111、112、113、114 メモリ
120 セルコントローラ
121 スパースディレクトリ
122 システムFW
131、132、133、134 キャッシュ
300 パケット
301 フラグ
302 リクエストの種類
303 アドレス
304 キャッシュステータス
305 送信先プロセッサ番号
306 返信先プロセッサ番号
307 データ
401 状態フラグ
402 第1調停回路
403 リクエスト格納バッファ
404 スヌープレスポンス格納バッファ
405 アドレス生成回路
406 ライトデータ生成回路
407 ライトコマンド生成回路
408 リードポインタ
409、413 セレクタ
410 リクエスト/スヌープ生成回路
411 合成回路
412 第2調停回路
Claims (9)
- キャッシュメモリを有する1以上のプロセッサと、1以上のメモリとを有するセルを複数備えるマルチプロセッサシステムであって、
前記各セルは、
他セル内のキャッシュメモリに記録されている自セル内のメモリのデータに関するステータス情報を保持するスパースディレクトリと、
コピー元セルとコピー先セルが異なるメモリ間でデータコピーを行う場合、コピー元メモリからコピー先メモリへデータをコピーし、前記コピー元セル内のスパースディレクトリが保持するステータス情報に基づいて、前記コピー先セルのスパースディレクトリを更新するセルコントローラと、を備えるマルチプロセッサシステム。 - 前記セルコントローラは、前記コピー元セルのスパースディレクトリが保持するステータス情報に基づいて、前記コピー先セルのセルコントローラを返信先とするスヌープを発行することを特徴とする請求項1記載のマルチプロセッサシステム。
- 前記メモリは接続されたプロセッサを介してアクセスされ、
前記セルは、複数のプロセッサを有し、前記データコピーを行う場合、前記接続されたプロセッサが前記セルコントローラを介して自セル内の他のプロセッサへアクセスするようにプロセッサ間を接続し、
前記セルコントローラは、前記コピー元メモリへのアクセスによって、前記自セル内の他のプロセッサがキャッシュメモリに保持する前記コピー元メモリのデータに関するステータス情報を、前記コピー元のスパースディレクトリが保持するステータス情報へ追加することを特徴とする請求項2記載のマルチプロセッサシステム。 - 前記セルコントローラは、前記コピー元セルである場合、前記コピー元メモリに関するステータス情報に基づいて、前記コピー元メモリのデータを前記キャッシュメモリに保持するプロセッサを特定し、前記コピー先セルのセルコントローラを返信先とするスヌープを生成し、生成したスヌープを前記特定したプロセッサへ送信することを特徴とする請求項1乃至3のいずれか一項に記載のマルチプロセッサシステム。
- 前記セルコントローラは、前記コピー先セルである場合、前記特定したプロセッサから送信されたスヌープレスポンスを受信し、受信したスヌープレスポンスに基づいて、スパースディレクトリのステータス情報を更新することを特徴とする請求項4記載のマルチプロセッサシステム。
- 前記セルコントローラは、前記コピー先セルである場合、前記スパースディレクトリのステータス情報を更新中に、前記コピー先メモリへアクセスするリクエストを受け付け、受け付けたリクエストがアクセスするメモリラインが前記スパースディレクトリのステータス情報に含まれていないと判断した場合、全プロセッサにスヌープを送信し、返信されるスヌープレスポンスに基づいて前記スパースディレクトリを更新することを特徴とする請求項5記載のマルチプロセッサシステム。
- 前記セルコントローラは、前記メモリ間のデータコピー終了後、前記コピー元メモリへのアクセス先をコピー先メモリへ変更し、前記スパースディレクトリのステータス情報を更新することを特徴とする請求項4乃至6記載のいずれか一項に記載のマルチプロセッサシステム。
- 前記セルコントローラは、
前記セルが、通常状態、コピー元セル、及びコピー先セルのいずれであるかを示す状態フラグと、
セル内へのアクセスのリクエストを格納するリクエスト格納バッファと、
前記コピー元セルのセルコントローラが発行したスヌープの返信を更新用スヌープレスポンスとして格納するスヌープレスポンス格納バッファと、
前記リクエスト、及び前記更新用スヌープレスポンスを受信し、状態フラグに基づいて、前記リクエスト格納バッファと前記更新用スヌープレスポンスとのいずれかへ格納する調停回路と、
前記状態フラグがコピー先セルであり、かつ、前記リクエストが前記スパースディレクトリにステータス情報を保持していないメモリラインへのアクセスである場合、スヌープを生成し、全プロセッサへ発行する生成部と、を備え、
前記スパースディレクトリは、前記更新用スヌープレスポンス、及び、前記生成部によって発行されたスヌープについて返信されるスヌープレスポンスに基づいて更新されることを特徴とする請求項2乃至7のいずれか一項に記載のマルチプロセッサシステム。 - キャッシュメモリを有する1以上のプロセッサと、1以上のメモリとを有するセルを複数備えるマルチプロセッサシステムのメモリリプレース方法であって、
他セル内のキャッシュメモリに保持された自セル内のメモリのデータに関するステータス情報を保持し、
セルが異なるメモリ間でコピー元メモリからコピー先メモリへデータをコピーし、
コピー終了後、前記コピー元メモリへのアクセス先をコピー先メモリへ変更し、
前記コピー元セル内のスパースディレクトリが保持するステータス情報に基づいて、前記コピー先セルのスパースディレクトリが保持するステータス情報を更新するメモリリプレース方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007236085A JP4868246B2 (ja) | 2007-09-12 | 2007-09-12 | マルチプロセッサ及びメモリリプレース方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007236085A JP4868246B2 (ja) | 2007-09-12 | 2007-09-12 | マルチプロセッサ及びメモリリプレース方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009070013A true JP2009070013A (ja) | 2009-04-02 |
JP4868246B2 JP4868246B2 (ja) | 2012-02-01 |
Family
ID=40606220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007236085A Expired - Fee Related JP4868246B2 (ja) | 2007-09-12 | 2007-09-12 | マルチプロセッサ及びメモリリプレース方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4868246B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012035605A1 (ja) | 2010-09-13 | 2012-03-22 | 富士通株式会社 | 情報処理装置および情報処理装置の制御方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11154115A (ja) * | 1997-08-25 | 1999-06-08 | Hewlett Packard Co <Hp> | 分散メモリ・マルチプロセッサ・システム |
JP2001525095A (ja) * | 1998-03-12 | 2001-12-04 | 富士通株式会社 | パイプライン化されたスヌーピィプロトコルを有する相互結合マルチプロセッサノードのためのキャッシュコヒーレンスユニット |
JP2004054931A (ja) * | 2002-07-23 | 2004-02-19 | Hewlett-Packard Development Co Lp | 分散メモリマルチプロセッサシステムにおけるメモリ移行のためのシステムおよび方法 |
JP2006293550A (ja) * | 2005-04-07 | 2006-10-26 | Fujitsu Ltd | キャッシュコヒーレンス管理装置およびキャッシュコヒーレンス管理方法 |
-
2007
- 2007-09-12 JP JP2007236085A patent/JP4868246B2/ja not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11154115A (ja) * | 1997-08-25 | 1999-06-08 | Hewlett Packard Co <Hp> | 分散メモリ・マルチプロセッサ・システム |
JP2001525095A (ja) * | 1998-03-12 | 2001-12-04 | 富士通株式会社 | パイプライン化されたスヌーピィプロトコルを有する相互結合マルチプロセッサノードのためのキャッシュコヒーレンスユニット |
JP2004054931A (ja) * | 2002-07-23 | 2004-02-19 | Hewlett-Packard Development Co Lp | 分散メモリマルチプロセッサシステムにおけるメモリ移行のためのシステムおよび方法 |
JP2006293550A (ja) * | 2005-04-07 | 2006-10-26 | Fujitsu Ltd | キャッシュコヒーレンス管理装置およびキャッシュコヒーレンス管理方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012035605A1 (ja) | 2010-09-13 | 2012-03-22 | 富士通株式会社 | 情報処理装置および情報処理装置の制御方法 |
Also Published As
Publication number | Publication date |
---|---|
JP4868246B2 (ja) | 2012-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7120755B2 (en) | Transfer of cache lines on-chip between processing cores in a multi-core system | |
JP5153172B2 (ja) | アクセラレータ用低コストのキャッシュ一貫性を維持する方法及びシステム | |
JP4237142B2 (ja) | 統合ディレクトリとプロセッサキャッシュを備えたコンピュータシステム | |
US7395376B2 (en) | Method, apparatus, and computer program product for a cache coherency protocol state that predicts locations of shared memory blocks | |
JP5575870B2 (ja) | 部分読出と非スヌープアクセスとの間のメモリ順序付け要件の充足 | |
CN108153683B (zh) | 用于在存储器中的地址范围之间传输数据的装置和方法 | |
US8291175B2 (en) | Processor-bus attached flash main-memory module | |
CN1996930B (zh) | 用于通信接口的队列头高速缓存 | |
JP3661764B2 (ja) | 不均等メモリ・アクセス・コンピュータ・システムにおいてエヴィクション・プロトコルを提供するための方法およびシステム | |
JP2006501548A (ja) | リモートキャッシュプレゼンス情報を記録するプロセッサキャッシュを備えたコンピュータシステム | |
US6260117B1 (en) | Method for increasing efficiency in a multi-processor system and multi-processor system with increased efficiency | |
JP5550089B2 (ja) | マルチプロセッサシステム、ノードコントローラ、障害回復方式 | |
CN103999057B (zh) | 具有开关的相变存储器(pcms)的元数据管理和支持 | |
JP4673585B2 (ja) | メモリシステム制御装置およびメモリシステム制御方法 | |
KR970002652A (ko) | 캐시 메모리의 내용을 플러시하는 장치 및 방법 | |
JP5212478B2 (ja) | 制御装置、データ転送装置、情報処理装置、演算処理装置および情報処理装置の制御方法 | |
US20020013886A1 (en) | Multiprocessor system | |
JP4507563B2 (ja) | マルチプロセッサシステム | |
JP2004199677A (ja) | キャッシュを動作させるためのシステム及び方法 | |
JP2000172562A (ja) | 情報処理装置 | |
JP4868246B2 (ja) | マルチプロセッサ及びメモリリプレース方法 | |
JPH09179779A (ja) | コンピュータシステムおよびデータ転送方法 | |
US8015372B2 (en) | Apparatus and method for memory migration in a distributed memory multiprocessor system | |
JP2005250830A (ja) | プロセッサおよび主記憶共有マルチプロセッサ | |
JP4030951B2 (ja) | データ二重化装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20111018 |
|
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: 20111102 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141125 Year of fee payment: 3 |
|
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 |