JP2007183915A - マルチプロセッサ・システムのためのディレクトリ・ベースのデータ転送プロトコル(データ一貫性を維持する方法およびシステム) - Google Patents

マルチプロセッサ・システムのためのディレクトリ・ベースのデータ転送プロトコル(データ一貫性を維持する方法およびシステム) Download PDF

Info

Publication number
JP2007183915A
JP2007183915A JP2006273451A JP2006273451A JP2007183915A JP 2007183915 A JP2007183915 A JP 2007183915A JP 2006273451 A JP2006273451 A JP 2006273451A JP 2006273451 A JP2006273451 A JP 2006273451A JP 2007183915 A JP2007183915 A JP 2007183915A
Authority
JP
Japan
Prior art keywords
processor
data line
directory
data
address
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
Application number
JP2006273451A
Other languages
English (en)
Other versions
JP4959279B2 (ja
Inventor
Chris Dombrowski
クリス・ドムブロスキー
Ngan N Pham
ナガン・エヌ・ファン
Marcus L Kornegay
マーカス・エル・コーネゲイ
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2007183915A publication Critical patent/JP2007183915A/ja
Application granted granted Critical
Publication of JP4959279B2 publication Critical patent/JP4959279B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0817Cache consistency protocols using directory methods

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

【課題】マルチプロセッサ・システム内部のデータ一貫性を維持するシステムを提供すること。
【解決手段】第1のプロセッサは、データ・ラインが第1のプロセッサのキャッシュ内に見つからないかどうかを判定し、そのデータ・ラインを求める要求を第2のプロセッサに転送するように構成される。第2のプロセッサは、第2のプロセッサから第1のプロセッサにデータ・ラインを転送し、データ・ラインが第1のプロセッサに転送されたことを反映するために第2のプロセッサのディレクトリを更新し、さらにデータ・ラインが第1のプロセッサに転送されたことを反映するためにディレクトリ更新メッセージを少なくとも1つの追加のプロセッサに転送するように構成される。ディレクトリ内のエントリは、メモリ・アドレス、最新のデータ所有者、およびライン状態を含む。
【選択図】図1

Description

本開示は一般にマルチプロセッサ・コンピュータ・システムに関し、より詳細には、マルチプロセッサ・コンピュータ・システム内部のデータ一貫性を維持するための方法およびシステムに関する。
データがマルチプロセッサ・コンピュータ・システム全体に分散されるときには、データ一貫性(data coherency)の問題が存在する。データ一貫性は、マルチプロセッサ・システムの複数のノード/プロセッサが、ほぼ同じ瞬間にまたはオーバラップ期間に特定のデータへのアクセスまたはそれの修正、あるいはその両方を試みた場合に問題になる。データ一貫性を保証するために多様な方法が使用されてきたが、これらの方法は、データ一貫性を保証するために、マルチプロセッサ・システム内の要求元プロセッサから他のプロセッサに宛てて、および他のプロセッサ間で多数の要求が使用されることによってその特徴が示される。例えば、特定のプロセッサのキャッシュにデータ・ライン(データ行)が見つからない場合、そのプロセッサは、マルチプロセッサ・システム内の他のプロセッサの各々に要求を送信して、他のプロセッサのキャッシュの1つにそのデータ・ラインが見つかるかどうかを判定することができる。これらのトランザクション/コマンド・トラフィックはプロセッサ/システム・リソースを消費することになり、結果として、マルチプロセッサ・システム内部の待ち時間を増加させることになる。
したがって、システム内部のトランザクションひいては待ち時間を削減しながら、マルチプロセッサ・システム内部のデータ一貫性を効率的に維持することができるシステムおよび方法が必要とされている。
本発明の諸実施形態は、マルチプロセッサ・システムに関する技術の欠点を解決するとともに、マルチプロセッサ・システムにおけるデータ一貫性を維持するための新規であり、かつ自明でないシステムおよび方法を提供する。マルチプロセッサ・システムは、キャッシュおよびディレクトリを備えた第1のプロセッサと、ディレクトリを備えた第2のプロセッサと、ディレクトリを備えた、第1および第2のプロセッサとは別の少なくとも1つの追加のプロセッサとを含む。第1のプロセッサは、データ・ラインが第1のプロセッサ内のキャッシュに見つからないかどうかを判定し、そのデータ・ラインを求める要求を第2のプロセッサに転送するように構成される。第2のプロセッサは、第2のプロセッサから第1のプロセッサにデータ・ラインを転送し、データ・ラインが第1のプロセッサに転送されたことを反映するために第2のプロセッサのディレクトリを更新し、さらにデータ・ラインが第1のプロセッサに転送されたことを反映するためにディレクトリ更新メッセージを少なくとも1つの追加のプロセッサに転送するように構成される。ディレクトリ内のエントリは、メモリ・アドレス、最新のデータ所有者(data holder)、およびライン状態を含む。
ある態様では、第1のプロセッサが第1のプロセッサのディレクトリ内にデータ・ラインのアドレスを有するエントリが見つからないと判定した場合に、要求が送信される第2のプロセッサは、そのデータ・ラインのホーム・エージェントである。第1のプロセッサが、データ・ラインのアドレスに対するエントリが第1のプロセッサのディレクトリ内に見つかったと判定した場合は、要求はデータ所有者である第2のプロセッサに送信される。第1のプロセッサはまた、第1のプロセッサが第2のプロセッサからのデータ・ラインを受信した後で、第1のプロセッサのディレクトリ内にある、そのデータ・ラインのアドレスに対するエントリを無効にするようにも構成される。少なくとも1つの追加のプロセッサは、その少なくとも1つの追加のプロセッサがディレクトリ更新メッセージを受信したことに応答して、データ・ラインが第1のプロセッサに転送されたことを反映するために、その少なくとも1つの追加のプロセッサのディレクトリを更新するように構成される。
本発明の追加の態様については、その一部は以下の記述の中で説明され、その一部は説明から自明であり、またその一部は本発明の実施によって習得することができるはずである。本発明の諸態様は、添付の特許請求の範囲で詳細に指摘した諸要素およびその組み合わせによって実現し達成することができる。前述の一般的な説明および以下の詳細な説明のどちらもが、例示および説明のためのものに過ぎず、特許請求の範囲に記載の本発明を制限するものではないことに留意されたい
本明細書に組み込まれ、その一部をなす添付の図面は、本発明の実施形態を例示するとともに、詳細な説明と併せて本発明の原理を説明するためのものである。本明細書に示した諸実施形態は、現在好ましい実施形態を示したものであるが、本発明が図示の構成および手段そのものに限定されるものではないことを理解されたい。
図2および図3に示したように、マルチプロセッサ・システムの各プロセッサ10、11、12、13は、データ・ラインを格納するためのデータ・キャッシュおよびディレクトリを含む。ディレクトリは、マルチプロセッサ・システムを通してデータ・ラインがどのように流れたか示す記憶リポジトリ(storage repository)である。この方法に限られるものではないが、データ・ラインの各ディレクトリ・エントリには、データ・ラインのメモリ・アドレス、データ・ラインの最新の所有者、およびデータ・ラインの状態を含めることができる。一例として、ライン状態は、あるプロセッサがデータ・ラインの独占的な所有権を有していること、データ・ラインが読み出し専用にできること、あるいはデータ・ラインが修正されたことなどの場合がある。
マルチプロセッサ・システムにおいてデータ一貫性を維持するための例示的な方法が図1に示されている。ステップ110で、プロセッサ10はすでに、プログラムの実行に使用されるデータ・ラインを求めて最終レベル・キャッシュを検索し、プロセッサ10の最終レベル・キャッシュにデータ・ラインが存在しないことを確認済みである。ステップ120はステップ110と同時に実施することも可能であるが、このステップで、プロセッサ10はデータ・ラインのアドレスを求めてプロセッサ10のディレクトリを検索する。
データ・ラインのアドレスがプロセッサ10のディレクトリ内に見つかった場合は、方法はステップ230〜290に進む。これらの各ステップについては、図3に関連して後で論ずる。一方、データ・ラインのアドレスがプロセッサ10のディレクトリ内に見つからなかった場合は、方法はステップ130〜180に進む。これらの各ステップは図2にも示されている。ステップ130で、プロセッサ10は、アドレス・ルーティング・テーブルによってデータ・ラインの所有者であるホーム・エージェント(すなわち、プロセッサ12)に要求を送信する。アドレス・ルーティング・テーブルは、各プロセッサに関するメモリのメモリ・アドレスがどこから始まり、どこで終るかをマッピングしたものである。
ステップ140で、プロセッサ12は、メモリからデータ・ラインを取り出し、そのデータ・ラインを要求元プロセッサ10に送信する。ステップ150はステップ140と同時に実施することが可能であるが、このステップで、データ・ラインが要求元プロセッサ10に送信されたことを反映するために、プロセッサ12はそれ自体のディレクトリを更新する。ステップ160で、プロセッサ12は、マルチプロセッサ・システム内の他のプロセッサ11、13にディレクトリ更新メッセージを転送する。ステップ170で、これらの他のプロセッサ11、13もまた、データ・ラインが要求元プロセッサ10に送信されたことを反映するために、それらのディレクトリを更新する。ステップ180で、要求元プロセッサ10はプロセッサ12からデータ・ラインを受信し、要求元プロセッサ10はそのデータをそれ自体のキャッシュに配置する。この方法に限られるものではないが、データ・ラインが現在、要求元プロセッサ10のキャッシュに存在しているので、要求元プロセッサ10は必ずしも、データ・ラインが要求元プロセッサ10に送信されたことを反映するために、それ自体のディレクトリを更新する必要があるわけではない。
データ・ラインのアドレスがプロセッサ10のディレクトリ内に見つかった場合は、ステップ230で、プロセッサ10は、プロセッサ10のディレクトリ内で見つかったアドレスに基づいてデータ所有者(すなわち、プロセッサ11)に要求を送信する。ステップ240で、プロセッサ11はメモリからデータ・ラインを取り出し、そのデータ・ラインを要求元プロセッサ10に送信する。ステップ250はステップ240と同時に実施することができるが、このステップで、データ・ラインが要求元プロセッサ10に送信されたことを反映するために、プロセッサ11はそれ自体のディレクトリを更新する。ステップ260で、プロセッサ11は、マルチプロセッサ・システム内の他のプロセッサ12、13にディレクトリ更新メッセージを転送する。ステップ270で、これらの他のプロセッサ12、13もまた、データ・ラインが要求元プロセッサ10に送信されたことを反映するために、それらのディレクトリを更新する。ステップ280で、要求元プロセッサ10はプロセッサ11からデータ・ラインを受信し、要求元プロセッサ10はそれ自体のキャッシュにそのデータを配置する。ステップ290で、要求元プロセッサ10は、それ自体のディレクトリ内のそのデータ・ラインに対するエントリを無効にする。なぜならば、そのエントリがもはや正しいものではないからである。
ハードウェアとソフトウェアの代表的な組み合わせは、例えば、ロードされ実行されたときに、本明細書に記載された方法を実行するようにコンピュータ・システムを制御するコンピュータ・プログラムを備えた汎用コンピュータ・システムである。本発明は、本明細書に記載した方法の実装を可能にするあらゆる機能を含み、コンピュータ・システムにロードされたときにそれらの方法を実行することができるコンピュータ・プログラムに組み込むこともできる。
本文脈におけるコンピュータ・プログラムまたはアプリケーションという用語は、直接に、あるいは(a)他の言語、コード、もしくは表記法(notation)への変換、および(b)異なる材料形態への複製の一方または両方の後で、情報処理機能を有するシステムに特定の機能を実施させることを意図した1組の命令の、任意の言語、コード、または表記法における任意の表現を意味する。重要なことは、本発明が、その趣旨または本質的な特性を逸脱することなく、他の特定の形態で実施することができることであり、したがって、本発明の範囲を指示するものとしては、前述の明細書ではなく、添付の特許請求の範囲を参照されたい。
本発明の構成に従って、マルチプロセッサ・コンピュータ・システムにおいてデータ一貫性を維持するための方法を示した流れ図である。 図1に示されたデータ一貫性を維持する方法に対する、マルチプロセッサ・コンピュータ・システムの一構成図である。 図1に示されたデータ一貫性を維持する方法に対する、マルチプロセッサ・コンピュータ・システムの一構成図である。

Claims (15)

  1. マルチプロセッサ・システムにおけるデータ一貫性を維持する方法であって、
    データ・ラインが第1のプロセッサのキャッシュ内に見つからないことを判定するステップと、
    前記データ・ラインを求める要求を第2のプロセッサに転送するステップと、
    前記データ・ラインを前記第2のプロセッサから前記第1のプロセッサに転送するステップと、
    前記データ・ラインが前記第1のプロセッサに転送されたことを反映するために、前記第2のプロセッサのディレクトリを更新するステップと、
    前記データ・ラインが前記第1のプロセッサに転送されたことを反映するために、前記第1および第2のプロセッサとは別の少なくとも1つの追加のプロセッサにディレクトリ更新メッセージを転送するステップと
    を含む方法。
  2. 前記データ・ラインのアドレスを含むエントリが前記第1のプロセッサのディレクトリ内に見つからないことを判定するステップをさらに含む、請求項1に記載の方法。
  3. 前記第1のプロセッサの前記ディレクトリ内にあるエントリが、メモリ・アドレス、最新のデータ所有者、およびライン状態を含む、請求項2に記載の方法。
  4. 前記第2のプロセッサが前記データ・ラインのホーム・エージェントである、請求項2に記載の方法。
  5. 前記データ・ラインのアドレスに対するエントリが前記第1のプロセッサのディレクトリ内に見つかることを判定するステップをさらに含む、請求項1に記載の方法。
  6. 前記第1のプロセッサの前記ディレクトリ内にあるエントリが、メモリ・アドレス、最新のデータ所有者、およびライン状態を含む、請求項5に記載の方法。
  7. 前記データ・ラインの前記アドレスが、前記第2のプロセッサがデータ所有者であることを指示する、請求項5に記載の方法。
  8. 前記第1のプロセッサが前記第2のプロセッサから前記データ・ラインを受信した後で、前記第1のプロセッサの前記ディレクトリ内にある、前記データ・ラインの前記アドレスに対する前記エントリを無効にするステップをさらに含む、請求項5に記載の方法。
  9. 前記少なくとも1つの追加のプロセッサが前記ディレクトリ更新メッセージを受信したことに応答して、前記データ・ラインが前記第1のプロセッサに転送されたことを反映するために前記少なくとも1つの追加のプロセッサのディレクトリを更新するステップをさらに含む、請求項1に記載の方法。
  10. 前記ディレクトリ内にあるエントリが、メモリ・アドレス、最新のデータ所有者、およびライン状態を含む、請求項1に記載の方法。
  11. マルチプロセッサ・システムにおけるデータ一貫性を維持するシステムであって、
    キャッシュおよびディレクトリを備えた第1のプロセッサと、
    ディレクトリを備えた第2のプロセッサと、
    ディレクトリを備えた、前記第1および第2のプロセッサとは別の少なくとも1つの追加のプロセッサとを含み、
    前記第1のプロセッサが、
    前記第1のプロセッサの前記キャッシュ内にデータ・ラインが見つからないかどうかを判定し、
    前記データ・ラインを求める要求を前記第2のプロセッサに転送する
    ように構成され、
    前記第2のプロセッサが、
    前記データ・ラインを前記第2のプロセッサから前記第1のプロセッサに転送し、
    前記データ・ラインが前記第1のプロセッサに転送されたことを反映するために、前記第2のプロセッサの前記ディレクトリを更新し、
    前記データ・ラインが前記第1のプロセッサに転送されたことを反映するために、前記少なくとも1つの追加のプロセッサにディレクトリ更新メッセージを転送する
    ように構成されたシステム。
  12. 前記第1のプロセッサが、前記データ・ラインのアドレスを含むエントリが前記第1のプロセッサの前記ディレクトリ内に見つからないことを判定する、請求項11に記載のシステム。
  13. 前記第1のプロセッサが、前記データ・ラインのアドレスに対するエントリが前記第1のプロセッサの前記ディレクトリ内に見つかることを判定する、請求項11に記載のシステム。
  14. 前記第1のプロセッサが前記第2のプロセッサから前記データ・ラインを受信した後で、前記第1のプロセッサの前記ディレクトリ内にある、前記データ・ラインの前記アドレスに対する前記エントリを無効にするように前記第1のプロセッサが構成される、請求項13に記載のシステム。
  15. 前記少なくとも1つの追加のプロセッサが前記ディレクトリ更新メッセージを受信したことに応答して、前記データ・ラインが前記第1のプロセッサに転送されたことを反映するために前記少なくとも1つの追加のプロセッサの前記ディレクトリを更新するように前記少なくとも1つの追加のプロセッサが構成される、請求項11に記載のシステム。
JP2006273451A 2005-12-30 2006-10-04 マルチプロセッサ・システムのためのディレクトリ・ベースのデータ転送プロトコル(データ一貫性を維持する方法およびシステム) Active JP4959279B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/322,955 US7404045B2 (en) 2005-12-30 2005-12-30 Directory-based data transfer protocol for multiprocessor system
US11/322955 2005-12-30

Publications (2)

Publication Number Publication Date
JP2007183915A true JP2007183915A (ja) 2007-07-19
JP4959279B2 JP4959279B2 (ja) 2012-06-20

Family

ID=38214060

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006273451A Active JP4959279B2 (ja) 2005-12-30 2006-10-04 マルチプロセッサ・システムのためのディレクトリ・ベースのデータ転送プロトコル(データ一貫性を維持する方法およびシステム)

Country Status (4)

Country Link
US (2) US7404045B2 (ja)
JP (1) JP4959279B2 (ja)
CN (1) CN100461136C (ja)
TW (1) TWI386810B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7404045B2 (en) * 2005-12-30 2008-07-22 International Business Machines Corporation Directory-based data transfer protocol for multiprocessor system
CN101470669B (zh) * 2007-12-28 2011-02-16 无锡江南计算技术研究所 多缓存数据一致性的处理方法及主存处理机
CN101794271B (zh) * 2010-03-31 2012-05-23 华为技术有限公司 多核内存一致性的实现方法和装置
US9274955B2 (en) * 2012-08-17 2016-03-01 Futurewei Technologies, Inc. Reduced scalable cache directory
US9292444B2 (en) 2013-09-26 2016-03-22 International Business Machines Corporation Multi-granular cache management in multi-processor computing environments
US9086974B2 (en) 2013-09-26 2015-07-21 International Business Machines Corporation Centralized management of high-contention cache lines in multi-processor computing environments
US9298623B2 (en) 2013-09-26 2016-03-29 Globalfoundries Inc. Identifying high-conflict cache lines in transactional memory computing environments
US9329890B2 (en) 2013-09-26 2016-05-03 Globalfoundries Inc. Managing high-coherence-miss cache lines in multi-processor computing environments
US9298626B2 (en) 2013-09-26 2016-03-29 Globalfoundries Inc. Managing high-conflict cache lines in transactional memory computing environments
US9582251B2 (en) 2014-11-14 2017-02-28 Cavium, Inc. Algorithm to achieve optimal layout of decision logic elements for programmable network devices

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09305489A (ja) * 1996-05-14 1997-11-28 Canon Inc 情報処理システム及びその制御方法
JPH10171710A (ja) * 1996-07-01 1998-06-26 Sun Microsyst Inc 効果的なブロック・コピー動作を実行するマルチプロセス・システム
JPH11102321A (ja) * 1997-09-26 1999-04-13 Nec Corp 分散共有メモリ型並列計算機のキャッシュコヒーレンシ制御方式
JPH11232173A (ja) * 1997-10-10 1999-08-27 Bull Hn Inf Syst It Spa ローカルメモリに組み込んでいるリモートキャッシュとcc−NUMA(キャッシュ整合型の不均一メモリアクセス)アーキテクチュアを有するデータ処理システム
JP2001101148A (ja) * 1999-09-28 2001-04-13 Fujitsu Ltd 分散共有メモリ型並列計算機
JP2006501548A (ja) * 2002-09-27 2006-01-12 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド リモートキャッシュプレゼンス情報を記録するプロセッサキャッシュを備えたコンピュータシステム
JP2006293550A (ja) * 2005-04-07 2006-10-26 Fujitsu Ltd キャッシュコヒーレンス管理装置およびキャッシュコヒーレンス管理方法
JP2007501466A (ja) * 2003-08-05 2007-01-25 ニューイシス・インコーポレーテッド リモートデータキャッシュから早い応答を提供する方法および装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5564035A (en) * 1994-03-23 1996-10-08 Intel Corporation Exclusive and/or partially inclusive extension cache system and method to minimize swapping therein
US6052762A (en) 1996-12-02 2000-04-18 International Business Machines Corp. Method and apparatus for reducing system snoop latency
US6078997A (en) * 1996-12-09 2000-06-20 Intel Corporation Directory-based coherency system for maintaining coherency in a dual-ported memory system
US5787478A (en) * 1997-03-05 1998-07-28 International Business Machines Corporation Method and system for implementing a cache coherency mechanism for utilization within a non-inclusive cache memory hierarchy
US20040199727A1 (en) * 2003-04-02 2004-10-07 Narad Charles E. Cache allocation
US7310724B2 (en) * 2003-06-30 2007-12-18 Intel Corporation Parallel execution of enhanced EFI based BIOS drivers on a multi-processor or hyper-threading enabled platform
US7404045B2 (en) * 2005-12-30 2008-07-22 International Business Machines Corporation Directory-based data transfer protocol for multiprocessor system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09305489A (ja) * 1996-05-14 1997-11-28 Canon Inc 情報処理システム及びその制御方法
JPH10171710A (ja) * 1996-07-01 1998-06-26 Sun Microsyst Inc 効果的なブロック・コピー動作を実行するマルチプロセス・システム
JPH11102321A (ja) * 1997-09-26 1999-04-13 Nec Corp 分散共有メモリ型並列計算機のキャッシュコヒーレンシ制御方式
JPH11232173A (ja) * 1997-10-10 1999-08-27 Bull Hn Inf Syst It Spa ローカルメモリに組み込んでいるリモートキャッシュとcc−NUMA(キャッシュ整合型の不均一メモリアクセス)アーキテクチュアを有するデータ処理システム
JP2001101148A (ja) * 1999-09-28 2001-04-13 Fujitsu Ltd 分散共有メモリ型並列計算機
JP2006501548A (ja) * 2002-09-27 2006-01-12 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド リモートキャッシュプレゼンス情報を記録するプロセッサキャッシュを備えたコンピュータシステム
JP2007501466A (ja) * 2003-08-05 2007-01-25 ニューイシス・インコーポレーテッド リモートデータキャッシュから早い応答を提供する方法および装置
JP2006293550A (ja) * 2005-04-07 2006-10-26 Fujitsu Ltd キャッシュコヒーレンス管理装置およびキャッシュコヒーレンス管理方法

Also Published As

Publication number Publication date
TW200736919A (en) 2007-10-01
CN100461136C (zh) 2009-02-11
CN1991794A (zh) 2007-07-04
US20070156970A1 (en) 2007-07-05
US7925838B2 (en) 2011-04-12
US7404045B2 (en) 2008-07-22
JP4959279B2 (ja) 2012-06-20
TWI386810B (zh) 2013-02-21
US20080313427A1 (en) 2008-12-18

Similar Documents

Publication Publication Date Title
JP4959279B2 (ja) マルチプロセッサ・システムのためのディレクトリ・ベースのデータ転送プロトコル(データ一貫性を維持する方法およびシステム)
JP4928812B2 (ja) タグ付きキャッシュ状態に基づいて下位レベル・キャッシュへの参照なしに相互接続ファブリック上にリクエストを送出するためのデータ処理システム、キャッシュ・システム、および方法
JP5064753B2 (ja) 方法、コンピュータ・プログラム製品、コンピュータ・プログラム、情報ハンドリング・システム(デフォルト・データ転送コヒーレント・キャッシング・エージェントのシステムおよび方法)
KR100634932B1 (ko) 멀티프로세서 시스템 내에서의 캐시 일관성에서 사용하기위한 전송 상태
US7702743B1 (en) Supporting a weak ordering memory model for a virtual physical address space that spans multiple nodes
US8140770B2 (en) Data processing system and method for predictively selecting a scope of broadcast of an operation
US6757787B2 (en) Adaptive cache coherence protocols
JP5105863B2 (ja) 複数のコヒーレンシ・ドメインを有するデータ処理システムでフラッシュ動作を処理するデータ処理システム、方法、およびメモリ・コントローラ
US20080215821A1 (en) Data processing system and method for efficient communication utilizing an in coherency state
US6859864B2 (en) Mechanism for initiating an implicit write-back in response to a read or snoop of a modified cache line
JP2007257637A (ja) アクセラレータ用低コストのキャッシュ一貫性を維持する方法及びシステム
JP2008077650A (ja) キャストアウトに関する改良されたコヒーレンシ管理を支援するプロセッサ、データ処理システム、およびデータ処理方法
JP2007035026A (ja) 対称型マルチプロセッシングシステムにおける排他的読み出し要求の待ち時間を削減するためのシステム
US7454578B2 (en) Data processing system and method for predictively selecting a scope of broadcast of an operation utilizing a location of a memory
JP5004571B2 (ja) 同報通信範囲を示す無効な整合状態を正確に形成するためのデータ処理システム、キャッシュ・システム、および方法
JP2021519456A (ja) キャッシュ・メモリ動作の調整
TWI428754B (zh) 以主動式預取寬度執行加強式停懸狀態之系統及方法
WO2012109906A1 (zh) 访问高速缓冲存储器的方法及非真实缓存代理
US20050262250A1 (en) Messaging protocol
JP3550092B2 (ja) キャッシュ装置及び制御方法
JP2018129041A (ja) スヌープリクエストに対する応答の転送
US7380107B2 (en) Multi-processor system utilizing concurrent speculative source request and system source request in response to cache miss
JP4689783B2 (ja) 分散共有メモリ型並列計算機
JP5063059B2 (ja) 方法、データ処理システム、メモリ・コントローラ(i/o書込みオペレーションのパイプライン化および多重オペレーション範囲を可能にするデータ処理システムおよび方法)
JP7328742B2 (ja) スヌープ要求への対応

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090619

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120227

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: 20120306

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: 20120321

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150330

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4959279

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250