JP2019012563A - 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 - Google Patents
異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 Download PDFInfo
- Publication number
- JP2019012563A JP2019012563A JP2018190049A JP2018190049A JP2019012563A JP 2019012563 A JP2019012563 A JP 2019012563A JP 2018190049 A JP2018190049 A JP 2018190049A JP 2018190049 A JP2018190049 A JP 2018190049A JP 2019012563 A JP2019012563 A JP 2019012563A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- cpu
- graphic
- logic
- information
- 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
- 238000000034 method Methods 0.000 title description 13
- 230000015654 memory Effects 0.000 description 39
- 238000010586 diagram Methods 0.000 description 4
- 238000009877 rendering Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000010365 information processing Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000004242 micellar liquid chromatography Methods 0.000 description 1
- 244000144985 peep Species 0.000 description 1
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/0822—Copy directories
-
- 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/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- 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/0828—Cache consistency protocols using directory methods with concurrent directory accessing, i.e. handling multiple concurrent coherency transactions
-
- 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/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
-
- 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/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
- G06F12/0835—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1072—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/28—Using a specific disk cache architecture
- G06F2212/283—Plural cache memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/62—Details of cache specific to multiprocessor cache arrangements
- G06F2212/621—Coherency control relating to peripheral accessing, e.g. from DMA or I/O device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Abstract
Description
〔態様1〕
グラフィック論理コヒーレンス・ドメイン内の第一のキャッシュおよび第二のキャッシュと、
物理アドレスを使って前記第一のキャッシュ内に記憶された情報にアクセスする、前記グラフィック論理とは異なるコヒーレンス・ドメインにある中央処理ユニット(CPU)とを有する装置であって、
前記第一のキャッシュは前記第二のキャッシュに対しキャッシュ階層において異なるレベルにある、装置。
〔態様2〕
前記グラフィック論理が前記第二のキャッシュ内に情報を記憶する、態様1記載の装置。
〔態様3〕
前記第二のキャッシュが最終レベル・キャッシュ(LLC)であり、前記グラフィック論理コヒーレンス・ドメイン内の前記第二のキャッシュより低いレベルの各キャッシュに記憶されている情報を含む、態様2記載の装置。
〔態様4〕
前記第一のキャッシュが中間レベル・キャッシュ(MLC)である、態様1記載の装置。
〔態様5〕
前記CPUのキャッシュ・コヒーレンス・ドメインに対応する第三および第四のキャッシュをさらに有する態様1記載の装置であって、前記第三のキャッシュがレベル1(L1)キャッシュであり、前記第四のキャッシュが中間レベル・キャッシュ(MLC)である、態様1記載の装置。
〔態様6〕
前記グラフィック論理のコヒーレンス・ドメインに対応するL1キャッシュをさらに含む、態様5記載の装置。
〔態様7〕
CPUレベル1(L1)キャッシュ、CPU中間レベル・キャッシュ(MLC)および最終レベル・キャッシュ(LLC)を含むCPUキャッシュ階層に対応する中央処理ユニット(CPU)を含み、グラフィックL1キャッシュ、グラフィックMLCおよびグラフィックLLCに対応するグラフィック論理を含むマイクロプロセッサであって、前記CPUキャッシュ階層は前記グラフィック論理のキャッシュ階層の一部分と異なるコヒーレンス・ドメインにあり、前記CPUは前記グラフィックMLCをのぞき見する、マイクロプロセッサと、
前記CPUキャッシュ階層および前記グラフィック・キャッシュ階層内に含まれる情報を記憶するシステム・メモリとを有するシステム。
〔態様8〕
前記LLCがCPUおよびグラフィックのL1キャッシュおよびMLCに記憶されている情報を含む、態様7記載のシステム。
〔態様9〕
前記グラフィック論理が、要求された情報を求めて前記システム・メモリにアクセスする前に、情報を求めて前記LLCにアクセスする、態様8記載のシステム。
〔態様10〕
さらに表示装置を有する、態様7記載のシステム。
〔態様11〕
前記表示装置が前記CPUおよび前記グラフィック論理とは異なるコヒーレンス・ドメインにある、態様10記載のシステム。
〔態様12〕
前記CPUおよび前記グラフィック・プロセッサが同じダイ内に含まれている、態様7記載のシステム。
〔態様13〕
グラフィック・レベル1(L1)キャッシュからのデータをグラフィック・コヒーレンス・ドメインのグラフィック中間レベル・キャッシュ(MLC)に記憶する段階と;
中央処理ユニット(CPU)から前記グラフィック中間レベル・キャッシュにスヌープを発する段階であって、前記CPUは前記グラフィック・コヒーレンス・ドメインとは異なるコヒーレンス・ドメインにある、段階と;
前記スヌープの結果がミスであった場合、より高レベルのキャッシュにアクセスする段階であって、前記グラフィックL1キャッシュに記憶されている情報は前記より高レベルのキャッシュに含まれる、段階と;
前記より高レベルのキャッシュへのアクセスの結果がミスであった場合、システム・メモリにアクセスする段階とを含む、
方法。
〔態様14〕
前記より高レベルのキャッシュが前記グラフィック・キャッシュを含む最終レベル・キャッシュ(LLC)である、態様13記載の方法。
〔態様15〕
前記グラフィックL1キャッシュが第一のコヒーレンス・ドメイン内にあり、前記グラフィックMLCが第二のコヒーレンス・ドメイン内にある、態様14記載の方法。
〔態様16〕
態様15記載の方法であって、さらに前記CPUのキャッシュ・コヒーレンス・ドメインに対応する第三および第四のキャッシュにアクセスする段階を含み、前記第三のキャッシュはレベル1(L1)キャッシュであり、前記第四のキャッシュは中間レベル・キャッシュ(MLC)である、方法。
〔態様17〕
前記グラフィックL1キャッシュが前記グラフィック論理のコヒーレンス・ドメインに対応する、態様16記載の方法。
〔態様18〕
表示装置から読み取り要求を前記システム・メモリに対して発する段階をさらに含む、態様17記載の方法。
〔態様19〕
CPUキャッシュ・コヒーレンス・ドメインに対応する中央処理ユニット(CPU)と;
第一の、CPUキャッシュ・コヒーレンス・ドメインとは異なるGPUキャッシュ・コヒーレンス・ドメインに対応するグラフィック処理ユニット(GPU)とを有するプロセッサであって、前記CPUキャッシュ・コヒーレンス・ドメインおよび前記GPUキャッシュ・コヒーレンス・ドメインは、システム・メモリにアクセスすることなく、前記CPUおよびGPUのキャッシュ・コヒーレンス・ドメイン内に記憶された情報を共有する、
プロセッサ。
〔態様20〕
前記CPUキャッシュ・コヒーレンス・ドメインが第一のレベル1(L1)キャッシュおよび第一の中間レベル・キャッシュ(MLC)を含む、態様19記載のプロセッサ。
〔態様21〕
前記GPUキャッシュ・コヒーレンス・ドメインが第二のL1キャッシュおよび第二のMLCを含む、態様20記載のプロセッサ。
〔態様22〕
前記CPUキャッシュ・コヒーレンス・ドメインおよび前記GPUキャッシュ・コヒーレンス・ドメインが、第一および第二のMLC内に記憶されているすべての情報を記憶する最終レベル・キャッシュ(LLC)を含む、態様21記載のプロセッサ。
〔態様23〕
前記CPUが前記第二のMLCをのぞき見し、前記GPUが前記第一のMLCをのぞき見する、態様19記載のプロセッサ。
〔態様24〕
前記第一のMLCが、グラフィック・レンダリング・イベントに応答して前記第一のL1キャッシュに記憶されている情報を記憶する、態様23記載のプロセッサ。
〔態様25〕
前記第一のL1キャッシュからの情報を前記第一のMLCに記憶することが、その情報を前記CPUキャッシュ・コヒーレンス・ドメインに対して利用可能にする、態様24記載のプロセッサ。
Claims (1)
- グラフィック論理コヒーレンス・ドメイン内の第一のキャッシュおよび第二のキャッシュと、
物理アドレスを使って前記第一のキャッシュ内に記憶された情報にアクセスする、前記グラフィック論理とは異なるコヒーレンス・ドメインにある中央処理ユニット(CPU)とを有する装置であって、
前記第一のキャッシュは前記第二のキャッシュに対しキャッシュ階層において異なるレベルにある、装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/057,601 | 2008-03-28 | ||
US12/057,601 US9035959B2 (en) | 2008-03-28 | 2008-03-28 | Technique to share information among different cache coherency domains |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016028904A Division JP6417344B2 (ja) | 2008-03-28 | 2016-02-18 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2019012563A true JP2019012563A (ja) | 2019-01-24 |
JP2019012563A5 JP2019012563A5 (ja) | 2019-04-11 |
JP6707605B2 JP6707605B2 (ja) | 2020-06-10 |
Family
ID=41114791
Family Applications (7)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010550927A Pending JP2011515001A (ja) | 2008-03-28 | 2009-03-27 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
JP2012279612A Pending JP2013054789A (ja) | 2008-03-28 | 2012-12-21 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
JP2013241853A Active JP5890378B2 (ja) | 2008-03-28 | 2013-11-22 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
JP2014008392A Active JP5889928B2 (ja) | 2008-03-28 | 2014-01-21 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
JP2014124390A Active JP5889961B2 (ja) | 2008-03-28 | 2014-06-17 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
JP2016028904A Active JP6417344B2 (ja) | 2008-03-28 | 2016-02-18 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
JP2018190049A Active JP6707605B2 (ja) | 2008-03-28 | 2018-10-05 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
Family Applications Before (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010550927A Pending JP2011515001A (ja) | 2008-03-28 | 2009-03-27 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
JP2012279612A Pending JP2013054789A (ja) | 2008-03-28 | 2012-12-21 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
JP2013241853A Active JP5890378B2 (ja) | 2008-03-28 | 2013-11-22 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
JP2014008392A Active JP5889928B2 (ja) | 2008-03-28 | 2014-01-21 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
JP2014124390A Active JP5889961B2 (ja) | 2008-03-28 | 2014-06-17 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
JP2016028904A Active JP6417344B2 (ja) | 2008-03-28 | 2016-02-18 | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 |
Country Status (6)
Country | Link |
---|---|
US (8) | US9035959B2 (ja) |
JP (7) | JP2011515001A (ja) |
CN (4) | CN103824251B (ja) |
DE (2) | DE112009000373T5 (ja) |
GB (6) | GB2490821B (ja) |
WO (1) | WO2009120997A2 (ja) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9035959B2 (en) | 2008-03-28 | 2015-05-19 | Intel Corporation | Technique to share information among different cache coherency domains |
US8615637B2 (en) * | 2009-09-10 | 2013-12-24 | Advanced Micro Devices, Inc. | Systems and methods for processing memory requests in a multi-processor system using a probe engine |
US9128849B2 (en) * | 2010-04-13 | 2015-09-08 | Apple Inc. | Coherent memory scheme for heterogeneous processors |
US8937622B2 (en) | 2010-09-20 | 2015-01-20 | Qualcomm Incorporated | Inter-processor communication techniques in a multiple-processor computing platform |
GB2491588A (en) * | 2011-06-06 | 2012-12-12 | St Microelectronics Res & Dev | Multiprocessor with different cache coherency protocols between different parts |
US8856456B2 (en) | 2011-06-09 | 2014-10-07 | Apple Inc. | Systems, methods, and devices for cache block coherence |
US20140032854A1 (en) * | 2012-07-30 | 2014-01-30 | Futurewei Technologies, Inc. | Coherence Management Using a Coherent Domain Table |
US9373182B2 (en) * | 2012-08-17 | 2016-06-21 | Intel Corporation | Memory sharing via a unified memory architecture |
US9378572B2 (en) * | 2012-08-17 | 2016-06-28 | Intel Corporation | Shared virtual memory |
US9639471B2 (en) | 2012-11-27 | 2017-05-02 | Nvidia Corporation | Prefetching according to attributes of access requests |
US9563562B2 (en) | 2012-11-27 | 2017-02-07 | Nvidia Corporation | Page crossing prefetches |
CN103049422B (zh) * | 2012-12-17 | 2013-11-27 | 浪潮电子信息产业股份有限公司 | 一种具有多cache一致性域的多处理器节点系统构建方法 |
US9824009B2 (en) * | 2012-12-21 | 2017-11-21 | Nvidia Corporation | Information coherency maintenance systems and methods |
US9785604B2 (en) * | 2013-02-15 | 2017-10-10 | Intel Corporation | Preset evaluation to improve input/output performance in high-speed serial interconnects |
US9563561B2 (en) * | 2013-06-25 | 2017-02-07 | Intel Corporation | Initiation of cache flushes and invalidations on graphics processors |
US9436972B2 (en) | 2014-03-27 | 2016-09-06 | Intel Corporation | System coherency in a distributed graphics processor hierarchy |
US9330433B2 (en) | 2014-06-30 | 2016-05-03 | Intel Corporation | Data distribution fabric in scalable GPUs |
US20160210231A1 (en) * | 2015-01-21 | 2016-07-21 | Mediatek Singapore Pte. Ltd. | Heterogeneous system architecture for shared memory |
US20180011792A1 (en) * | 2016-07-06 | 2018-01-11 | Intel Corporation | Method and Apparatus for Shared Virtual Memory to Manage Data Coherency in a Heterogeneous Processing System |
KR101852012B1 (ko) * | 2016-11-24 | 2018-06-11 | 전남대학교 산학협력단 | 캐쉬 우회 기법, 그 기법이 적용된 스트리밍 멀티프로세서 및 임베디드 시스템 |
US11592817B2 (en) | 2017-04-28 | 2023-02-28 | Intel Corporation | Storage management for machine learning at autonomous machines |
US10929330B2 (en) * | 2017-06-30 | 2021-02-23 | Intel Corporation | External resource discovery and coordination in a data center |
KR101946476B1 (ko) * | 2017-11-14 | 2019-05-20 | 전남대학교산학협력단 | 캐쉬 적중률 예측에 기반한 주기적 캐쉬 우회 기법, 그 기법이 적용된 스트리밍 멀티프로세서 및 임베디드 시스템 |
KR101853648B1 (ko) * | 2018-03-13 | 2018-06-08 | 전남대학교 산학협력단 | 캐쉬 우회 기법, 그 기법이 적용된 스트리밍 멀티프로세서 및 임베디드 시스템 |
US11138111B2 (en) | 2018-09-12 | 2021-10-05 | Apple Inc. | Parallel coherence and memory cache processing pipelines |
US10872458B1 (en) * | 2019-09-06 | 2020-12-22 | Apple Inc. | Graphics surface addressing |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6801207B1 (en) * | 1998-10-09 | 2004-10-05 | Advanced Micro Devices, Inc. | Multimedia processor employing a shared CPU-graphics cache |
JP2006216012A (ja) * | 2005-02-04 | 2006-08-17 | Arm Ltd | メモリへのアクセスを制御するためのデータ処理装置および方法 |
JP2007257637A (ja) * | 2006-03-23 | 2007-10-04 | Internatl Business Mach Corp <Ibm> | アクセラレータ用低コストのキャッシュ一貫性を維持する方法及びシステム |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4991081A (en) | 1984-10-31 | 1991-02-05 | Texas Instruments Incorporated | Cache memory addressable by both physical and virtual addresses |
JPH04328657A (ja) | 1991-04-30 | 1992-11-17 | Toshiba Corp | キャッシュメモリ |
JPH06222990A (ja) | 1992-10-16 | 1994-08-12 | Fujitsu Ltd | データ処理装置 |
US5860109A (en) | 1996-07-01 | 1999-01-12 | Sun Microsystems, Inc. | Methods and apparatus for a coherence transformer for connecting computer system coherence domains |
US5963978A (en) * | 1996-10-07 | 1999-10-05 | International Business Machines Corporation | High level (L2) cache and method for efficiently updating directory entries utilizing an n-position priority queue and priority indicators |
US6237064B1 (en) | 1998-02-23 | 2001-05-22 | Intel Corporation | Cache memory with reduced latency |
US6243791B1 (en) | 1998-08-13 | 2001-06-05 | Hewlett-Packard Company | Method and architecture for data coherency in set-associative caches including heterogeneous cache sets having different characteristics |
US6483516B1 (en) | 1998-10-09 | 2002-11-19 | National Semiconductor Corporation | Hierarchical texture cache |
US6449699B2 (en) | 1999-03-29 | 2002-09-10 | International Business Machines Corporation | Apparatus and method for partitioned memory protection in cache coherent symmetric multiprocessor systems |
JP2002032265A (ja) * | 2000-07-14 | 2002-01-31 | Hitachi Ltd | キャッシュ・アクセス制御方式およびデータ処理システム |
US6801208B2 (en) | 2000-12-27 | 2004-10-05 | Intel Corporation | System and method for cache sharing |
JP2003005841A (ja) | 2001-06-25 | 2003-01-08 | Kenwood Corp | 直流安定化電源装置 |
US6891543B2 (en) * | 2002-05-08 | 2005-05-10 | Intel Corporation | Method and system for optimally sharing memory between a host processor and graphics processor |
JP2004326633A (ja) | 2003-04-28 | 2004-11-18 | Hitachi Ltd | 階層型メモリシステム |
US7469321B2 (en) * | 2003-06-25 | 2008-12-23 | International Business Machines Corporation | Software process migration between coherency regions without cache purges |
US6862027B2 (en) | 2003-06-30 | 2005-03-01 | Microsoft Corp. | System and method for parallel execution of data generation tasks |
US7355601B2 (en) * | 2003-06-30 | 2008-04-08 | International Business Machines Corporation | System and method for transfer of data between processors using a locked set, head and tail pointers |
US7023445B1 (en) | 2004-04-12 | 2006-04-04 | Advanced Micro Devices, Inc. | CPU and graphics unit with shared cache |
JP2005309867A (ja) | 2004-04-22 | 2005-11-04 | Fujitsu Ltd | マルチコア・プロセサ試験方法 |
US7305524B2 (en) * | 2004-10-08 | 2007-12-04 | International Business Machines Corporation | Snoop filter directory mechanism in coherency shared memory system |
WO2006051454A1 (en) * | 2004-11-11 | 2006-05-18 | Koninklijke Philips Electronics N.V. | System as well as method for managing memory space |
US20060112226A1 (en) * | 2004-11-19 | 2006-05-25 | Hady Frank T | Heterogeneous processors sharing a common cache |
US7454576B2 (en) * | 2004-12-27 | 2008-11-18 | Intel Corporation | System and method for cache coherency in a cache with different cache location lengths |
US7478201B2 (en) | 2005-05-24 | 2009-01-13 | International Business Machines Corporation | Data processing system, cache system and method for passively scrubbing a domain indication |
US7725619B2 (en) | 2005-09-15 | 2010-05-25 | International Business Machines Corporation | Data processing system and method that permit pipelining of I/O write operations and multiple operation scopes |
US7958312B2 (en) | 2005-11-15 | 2011-06-07 | Oracle America, Inc. | Small and power-efficient cache that can provide data for background DMA devices while the processor is in a low-power state |
US7543116B2 (en) | 2006-01-30 | 2009-06-02 | International Business Machines Corporation | Data processing system, cache system and method for handling a flush operation in a data processing system having multiple coherency domains |
US7757045B2 (en) | 2006-03-13 | 2010-07-13 | Intel Corporation | Synchronizing recency information in an inclusive cache hierarchy |
US7451277B2 (en) | 2006-03-23 | 2008-11-11 | International Business Machines Corporation | Data processing system, cache system and method for updating an invalid coherency state in response to snooping an operation |
US7484042B2 (en) | 2006-08-18 | 2009-01-27 | International Business Machines Corporation | Data processing system and method for predictively selecting a scope of a prefetch operation |
US8495308B2 (en) | 2006-10-09 | 2013-07-23 | International Business Machines Corporation | Processor, data processing system and method supporting a shared global coherency state |
US8327173B2 (en) * | 2007-12-17 | 2012-12-04 | Nvidia Corporation | Integrated circuit device core power down independent of peripheral device operation |
US9035959B2 (en) * | 2008-03-28 | 2015-05-19 | Intel Corporation | Technique to share information among different cache coherency domains |
US8219711B2 (en) | 2008-11-24 | 2012-07-10 | Juniper Networks, Inc. | Dynamic variable rate media delivery system |
-
2008
- 2008-03-28 US US12/057,601 patent/US9035959B2/en active Active
-
2009
- 2009-03-27 CN CN201410024970.5A patent/CN103824251B/zh active Active
- 2009-03-27 GB GB1214187.5A patent/GB2490821B/en active Active
- 2009-03-27 JP JP2010550927A patent/JP2011515001A/ja active Pending
- 2009-03-27 CN CN201710736398.9A patent/CN107506312B/zh active Active
- 2009-03-27 GB GB1222945.6A patent/GB2495032B/en active Active
- 2009-03-27 CN CN201210576427.7A patent/CN103279426B/zh active Active
- 2009-03-27 GB GB1015007.6A patent/GB2471786B/en active Active
- 2009-03-27 DE DE112009000373T patent/DE112009000373T5/de not_active Ceased
- 2009-03-27 GB GB1207247.6A patent/GB2487328B/en active Active
- 2009-03-27 DE DE112009005503T patent/DE112009005503A5/de not_active Ceased
- 2009-03-27 GB GB1221421.9A patent/GB2493880B/en active Active
- 2009-03-27 CN CN200980110677.8A patent/CN101978359B/zh active Active
- 2009-03-27 WO PCT/US2009/038627 patent/WO2009120997A2/en active Application Filing
-
2012
- 2012-04-15 US US13/447,279 patent/US9035960B2/en active Active
- 2012-07-31 GB GBGB1213564.6A patent/GB201213564D0/en not_active Ceased
- 2012-12-20 US US13/722,440 patent/US8643660B2/en active Active
- 2012-12-21 JP JP2012279612A patent/JP2013054789A/ja active Pending
-
2013
- 2013-03-15 US US13/844,214 patent/US9035962B2/en active Active
- 2013-11-22 JP JP2013241853A patent/JP5890378B2/ja active Active
-
2014
- 2014-01-20 US US14/158,865 patent/US9665488B2/en active Active
- 2014-01-21 JP JP2014008392A patent/JP5889928B2/ja active Active
- 2014-06-17 JP JP2014124390A patent/JP5889961B2/ja active Active
-
2016
- 2016-02-18 JP JP2016028904A patent/JP6417344B2/ja active Active
- 2016-12-29 US US15/393,907 patent/US10204051B2/en active Active
- 2016-12-29 US US15/393,921 patent/US9946650B2/en active Active
- 2016-12-29 US US15/393,883 patent/US10078590B2/en active Active
-
2018
- 2018-10-05 JP JP2018190049A patent/JP6707605B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6801207B1 (en) * | 1998-10-09 | 2004-10-05 | Advanced Micro Devices, Inc. | Multimedia processor employing a shared CPU-graphics cache |
JP2006216012A (ja) * | 2005-02-04 | 2006-08-17 | Arm Ltd | メモリへのアクセスを制御するためのデータ処理装置および方法 |
JP2007257637A (ja) * | 2006-03-23 | 2007-10-04 | Internatl Business Mach Corp <Ibm> | アクセラレータ用低コストのキャッシュ一貫性を維持する方法及びシステム |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6707605B2 (ja) | 異なるキャッシュ・コヒーレンス・ドメインの間の情報共有技法 | |
JP5714733B2 (ja) | キャッシュ競合の解決 | |
US20140089602A1 (en) | System cache with partial write valid states | |
US20070150663A1 (en) | Device, system and method of multi-state cache coherence scheme | |
US20090006668A1 (en) | Performing direct data transactions with a cache memory | |
US8788761B2 (en) | System and method for explicitly managing cache coherence | |
KR20200088391A (ko) | 공통 메모리 페이지로부터 메모리로의 캐시 라인들의 린싱 | |
JP4948141B2 (ja) | バス制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181005 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190228 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190626 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190806 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191101 |
|
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: 20200421 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200520 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6707605 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D02 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
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 |