JP2011227921A - キャッシュ競合の解決 - Google Patents
キャッシュ競合の解決 Download PDFInfo
- Publication number
- JP2011227921A JP2011227921A JP2011145496A JP2011145496A JP2011227921A JP 2011227921 A JP2011227921 A JP 2011227921A JP 2011145496 A JP2011145496 A JP 2011145496A JP 2011145496 A JP2011145496 A JP 2011145496A JP 2011227921 A JP2011227921 A JP 2011227921A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- core
- llc
- processor
- line
- 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/084—Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
-
- 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
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
【解決手段】処理401では、コア・キャッシュ線への読み取り要求が検出され、対応するコア・キャッシュへの読み取り要求から「ミス」が生じた場合に、それに応じて、対応するLLC線がアクセスされる。処理405では、LLC線のコヒーレンシ状態情報が保存される。コヒーレンシ状態情報が保存された後、要求がクロス・スヌープをもたらすことになり、CBSOロジックによって取り消し信号が何ら検出されなかった場合に、LLC線が無効にされていると後のトランザクションがみなすことになるようにLLC内の対応する線が処理410でアトミックに無効にされる。処理415で、適切なコア又はプロセッサへのLLCによるクロス・スヌープによって、要求されたデータがコア又はプロセッサから、要求エージェントに戻される。
【選択図】図4
Description
Claims (8)
- マイクロプロセッサ・システムであって、
共有された包含的キャッシュを備えた第1のプロセッサを備え、前記共有された包含的キャッシュは、前記第1のプロセッサ内のコアからのスヌープに応じて、無効状態を有する第1のキャッシュ線を含み、前記無効状態は、前記第1のキャッシュ線が無効である旨を、読み出しアクセスに後続するが、前記読み出しアクセスが完了する前のトランザクション全てに示すシステム。 - 請求項1記載のシステムであって、前記スヌープに応じて、前記第1のキャッシュ線のコヒーレンシ情報を記憶するための記憶装置を備えるシステム。
- 請求項2記載のシステムであって、対応する少なくとも1つのコア・キャッシュをそれぞれが有する複数のプロセッサ・コアを備えるシステム。
- 請求項3記載のシステムであって、前記共有された包含的キャッシュは、前記対応する少なくとも1つのコア・キャッシュ内に記憶されたデータと同じデータを記憶するための最終レベルのキャッシュであるシステム。
- 請求項4記載のシステムであって、前記第1のプロセッサは、前記スヌープに応じて、前記無効状態をセットし、前記コヒーレンシ情報を記憶するためのロジックを備えるシステム。
- 請求項5記載のシステムであって、前記第1のプロセッサは、前記複数のプロセッサ・コア及び第2のプロセッサとの間のアクセスそれぞれを記憶するための内部要求キュー及び外部要求キューを備えるシステム。
- 請求項6記載のシステムであって、前記第1のプロセッサ及び前記第2のプロセッサはポイントツーポイント相互接続を介して併せて結合されるシステム。
- 請求項6記載のシステムであって、前記第1のプロセッサ及び前記第2のプロセッサはフロントサイドバス相互接続を介して併せて結合されるシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US93797304A | 2004-09-09 | 2004-09-09 | |
US10/937,973 | 2004-09-09 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007531199A Division JP2008512772A (ja) | 2004-09-09 | 2005-08-26 | キャッシュ競合の解決 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014006733A Division JP5714733B2 (ja) | 2004-09-09 | 2014-01-17 | キャッシュ競合の解決 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011227921A true JP2011227921A (ja) | 2011-11-10 |
JP5535991B2 JP5535991B2 (ja) | 2014-07-02 |
Family
ID=35478629
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007531199A Pending JP2008512772A (ja) | 2004-09-09 | 2005-08-26 | キャッシュ競合の解決 |
JP2011145496A Expired - Fee Related JP5535991B2 (ja) | 2004-09-09 | 2011-06-30 | キャッシュ競合の解決 |
JP2014006733A Expired - Fee Related JP5714733B2 (ja) | 2004-09-09 | 2014-01-17 | キャッシュ競合の解決 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007531199A Pending JP2008512772A (ja) | 2004-09-09 | 2005-08-26 | キャッシュ競合の解決 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014006733A Expired - Fee Related JP5714733B2 (ja) | 2004-09-09 | 2014-01-17 | キャッシュ競合の解決 |
Country Status (5)
Country | Link |
---|---|
US (2) | US9727468B2 (ja) |
JP (3) | JP2008512772A (ja) |
CN (3) | CN100498739C (ja) |
DE (1) | DE112005002180T5 (ja) |
WO (1) | WO2006031414A2 (ja) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10031848B2 (en) * | 2005-06-14 | 2018-07-24 | Intel Corporation | Method and apparatus for improving snooping performance in a multi-core multi-processor |
US7962694B2 (en) * | 2006-03-31 | 2011-06-14 | Intel Corporation | Partial way hint line replacement algorithm for a snoop filter |
US7506108B2 (en) * | 2006-06-30 | 2009-03-17 | Intel Corporation | Requester-generated forward for late conflicts in a cache coherency protocol |
US7536515B2 (en) * | 2006-06-30 | 2009-05-19 | Intel Corporation | Repeated conflict acknowledgements in a cache coherency protocol |
US7721050B2 (en) * | 2006-06-30 | 2010-05-18 | Intel Corporation | Re-snoop for conflict resolution in a cache coherency protocol |
US20080109624A1 (en) * | 2006-11-03 | 2008-05-08 | Gilbert Jeffrey D | Multiprocessor system with private memory sections |
US7827357B2 (en) | 2007-07-31 | 2010-11-02 | Intel Corporation | Providing an inclusive shared cache among multiple core-cache clusters |
US7844779B2 (en) * | 2007-12-13 | 2010-11-30 | International Business Machines Corporation | Method and system for intelligent and dynamic cache replacement management based on efficient use of cache for individual processor core |
US7917699B2 (en) * | 2007-12-21 | 2011-03-29 | Mips Technologies, Inc. | Apparatus and method for controlling the exclusivity mode of a level-two cache |
US8015365B2 (en) * | 2008-05-30 | 2011-09-06 | Intel Corporation | Reducing back invalidation transactions from a snoop filter |
US20090300291A1 (en) * | 2008-06-03 | 2009-12-03 | Gerald Keith Bartley | Implementing Cache Coherency and Reduced Latency Using Multiple Controllers for Memory System |
US8250311B2 (en) * | 2008-07-07 | 2012-08-21 | Intel Corporation | Satisfying memory ordering requirements between partial reads and non-snoop accesses |
CN101739298B (zh) * | 2008-11-27 | 2013-07-31 | 国际商业机器公司 | 共享缓存管理方法和系统 |
DE112013005093T5 (de) * | 2012-10-22 | 2015-10-22 | Intel Corporation | Hochleistungszusammenschaltungsbitübertragungsschicht |
US10268583B2 (en) | 2012-10-22 | 2019-04-23 | Intel Corporation | High performance interconnect coherence protocol resolving conflict based on home transaction identifier different from requester transaction identifier |
US9563425B2 (en) * | 2012-11-28 | 2017-02-07 | Intel Corporation | Instruction and logic to provide pushing buffer copy and store functionality |
CN104951240B (zh) * | 2014-03-26 | 2018-08-24 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及处理器 |
CN104035888B (zh) * | 2014-06-11 | 2017-08-04 | 华为技术有限公司 | 一种缓存数据的方法及存储设备 |
US9892803B2 (en) * | 2014-09-18 | 2018-02-13 | Via Alliance Semiconductor Co., Ltd | Cache management request fusing |
US10133670B2 (en) * | 2014-12-27 | 2018-11-20 | Intel Corporation | Low overhead hierarchical connectivity of cache coherent agents to a coherent fabric |
CN107870848B (zh) * | 2016-09-23 | 2020-08-28 | 腾讯科技(深圳)有限公司 | Cpu性能冲突的检测方法、装置和系统 |
GB2554442B (en) * | 2016-09-28 | 2020-11-11 | Advanced Risc Mach Ltd | Apparatus and method for providing an atomic set of data accesses |
CN112965668B (zh) * | 2021-03-30 | 2022-04-29 | 上海芷锐电子科技有限公司 | 一种缓存数字电路处理请求冲突的方法 |
US12079516B2 (en) * | 2022-08-30 | 2024-09-03 | Micron Technology, Inc. | Host-preferred memory operation |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10501914A (ja) * | 1995-07-19 | 1998-02-17 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | 共用キャッシュ・メモリ装置 |
JPH10154102A (ja) * | 1996-10-21 | 1998-06-09 | Internatl Business Mach Corp <Ibm> | 多重階層のキャッシュ・メモリを有する情報処理システムにおけるデータ・コヒーレンシを強化する装置および方法 |
JPH10161930A (ja) * | 1996-11-29 | 1998-06-19 | Hitachi Ltd | マルチプロセッサシステムおよびキャッシュコヒーレンシ制御方法 |
JP2001034533A (ja) * | 1999-07-21 | 2001-02-09 | Nec Kofu Ltd | キャッシュコヒーレンシ制御装置、2次キャッシュメモリ、中央処理装置、マルチプロセッサシステム、プロセッサノード、キャッシュコヒーレンシ制御方法 |
WO2002093385A2 (en) * | 2001-05-16 | 2002-11-21 | Advanced Micro Devices, Inc. | Method and system for speculatively invalidating lines in a cache |
WO2003001383A2 (en) * | 2001-06-26 | 2003-01-03 | Sun Microsystems, Inc. | Using an l2 directory to facilitate speculative loads in a multiprocessor system |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2820752B2 (ja) * | 1990-01-19 | 1998-11-05 | 日本電信電話株式会社 | 密結合マルチプロセッサシステムにおけるキャッシュメモリ一致制御方法 |
US5398325A (en) * | 1992-05-07 | 1995-03-14 | Sun Microsystems, Inc. | Methods and apparatus for improving cache consistency using a single copy of a cache tag memory in multiple processor computer systems |
JP3013631B2 (ja) * | 1992-09-28 | 2000-02-28 | 日本電気株式会社 | キャッシュメモリ同期方法 |
JPH06187239A (ja) | 1992-12-18 | 1994-07-08 | Nippon Telegr & Teleph Corp <Ntt> | 多階層キャッシュメモリにおけるデータ一致制御方式 |
US5682516A (en) * | 1994-03-01 | 1997-10-28 | Intel Corporation | Computer system that maintains system wide cache coherency during deferred communication transactions |
JP3360933B2 (ja) * | 1994-06-01 | 2003-01-07 | 富士通株式会社 | 情報処理システムにおける記憶制御方法および記憶制御装置 |
US5623632A (en) * | 1995-05-17 | 1997-04-22 | International Business Machines Corporation | System and method for improving multilevel cache performance in a multiprocessing system |
US5893160A (en) * | 1996-04-08 | 1999-04-06 | Sun Microsystems, Inc. | Deterministic distributed multi-cache coherence method and system |
JPH1165929A (ja) * | 1997-08-26 | 1999-03-09 | Kofu Nippon Denki Kk | バスブリッジ回路 |
US6055605A (en) | 1997-10-24 | 2000-04-25 | Compaq Computer Corporation | Technique for reducing latency of inter-reference ordering using commit signals in a multiprocessor system having shared caches |
US6263407B1 (en) * | 1998-02-17 | 2001-07-17 | International Business Machines Corporation | Cache coherency protocol including a hovering (H) state having a precise mode and an imprecise mode |
US6314491B1 (en) | 1999-03-01 | 2001-11-06 | International Business Machines Corporation | Peer-to-peer cache moves in a multiprocessor data processing system |
US6587930B1 (en) * | 1999-09-23 | 2003-07-01 | International Business Machines Corporation | Method and system for implementing remstat protocol under inclusion and non-inclusion of L1 data in L2 cache to prevent read-read deadlock |
KR100329969B1 (ko) * | 1999-12-23 | 2002-03-27 | 오길록 | 캐시 동일성 유지 메모리 시스템에서 캐시 충돌 방지 장치및 그 방법 |
US6516393B1 (en) * | 2000-09-29 | 2003-02-04 | International Business Machines Corporation | Dynamic serialization of memory access in a multi-processor system |
US20020169935A1 (en) | 2001-05-10 | 2002-11-14 | Krick Robert F. | System of and method for memory arbitration using multiple queues |
US20030159003A1 (en) * | 2001-10-23 | 2003-08-21 | Ip-First, Llc | Associative cache memory with replacement way information integrated into directory |
US6976131B2 (en) * | 2002-08-23 | 2005-12-13 | Intel Corporation | Method and apparatus for shared cache coherency for a chip multiprocessor or multiprocessor system |
US6954829B2 (en) | 2002-12-19 | 2005-10-11 | Intel Corporation | Non-speculative distributed conflict resolution for a cache coherency protocol |
US7284097B2 (en) * | 2003-09-30 | 2007-10-16 | International Business Machines Corporation | Modified-invalid cache state to reduce cache-to-cache data transfer operations for speculatively-issued full cache line writes |
-
2005
- 2005-01-28 US US11/045,525 patent/US9727468B2/en not_active Expired - Lifetime
- 2005-08-26 CN CNB2005800297873A patent/CN100498739C/zh not_active Expired - Fee Related
- 2005-08-26 JP JP2007531199A patent/JP2008512772A/ja active Pending
- 2005-08-26 DE DE112005002180T patent/DE112005002180T5/de not_active Ceased
- 2005-08-26 WO PCT/US2005/030444 patent/WO2006031414A2/en active Application Filing
- 2005-08-26 CN CN2008101761362A patent/CN101425043B/zh not_active Expired - Fee Related
- 2005-08-26 CN CN2008101761358A patent/CN101425042B/zh not_active Expired - Fee Related
-
2011
- 2011-06-30 JP JP2011145496A patent/JP5535991B2/ja not_active Expired - Fee Related
-
2014
- 2014-01-17 JP JP2014006733A patent/JP5714733B2/ja not_active Expired - Fee Related
-
2017
- 2017-08-08 US US15/671,952 patent/US10078592B2/en not_active Expired - Lifetime
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10501914A (ja) * | 1995-07-19 | 1998-02-17 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | 共用キャッシュ・メモリ装置 |
JPH10154102A (ja) * | 1996-10-21 | 1998-06-09 | Internatl Business Mach Corp <Ibm> | 多重階層のキャッシュ・メモリを有する情報処理システムにおけるデータ・コヒーレンシを強化する装置および方法 |
JPH10161930A (ja) * | 1996-11-29 | 1998-06-19 | Hitachi Ltd | マルチプロセッサシステムおよびキャッシュコヒーレンシ制御方法 |
JP2001034533A (ja) * | 1999-07-21 | 2001-02-09 | Nec Kofu Ltd | キャッシュコヒーレンシ制御装置、2次キャッシュメモリ、中央処理装置、マルチプロセッサシステム、プロセッサノード、キャッシュコヒーレンシ制御方法 |
WO2002093385A2 (en) * | 2001-05-16 | 2002-11-21 | Advanced Micro Devices, Inc. | Method and system for speculatively invalidating lines in a cache |
WO2003001383A2 (en) * | 2001-06-26 | 2003-01-03 | Sun Microsystems, Inc. | Using an l2 directory to facilitate speculative loads in a multiprocessor system |
Also Published As
Publication number | Publication date |
---|---|
JP5714733B2 (ja) | 2015-05-07 |
US20060053257A1 (en) | 2006-03-09 |
US9727468B2 (en) | 2017-08-08 |
CN101010670A (zh) | 2007-08-01 |
JP5535991B2 (ja) | 2014-07-02 |
US10078592B2 (en) | 2018-09-18 |
DE112005002180T5 (de) | 2007-07-05 |
CN101425042B (zh) | 2011-07-06 |
US20170337131A1 (en) | 2017-11-23 |
WO2006031414A2 (en) | 2006-03-23 |
WO2006031414A3 (en) | 2007-01-25 |
CN101425043B (zh) | 2012-06-20 |
CN101425043A (zh) | 2009-05-06 |
JP2014089760A (ja) | 2014-05-15 |
CN100498739C (zh) | 2009-06-10 |
JP2008512772A (ja) | 2008-04-24 |
CN101425042A (zh) | 2009-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5714733B2 (ja) | キャッシュ競合の解決 | |
US7698508B2 (en) | System and method for reducing unnecessary cache operations | |
US6289420B1 (en) | System and method for increasing the snoop bandwidth to cache tags in a multiport cache memory subsystem | |
JP5431525B2 (ja) | アクセラレータ用低コストのキャッシュ一貫性を維持するシステム | |
US8015365B2 (en) | Reducing back invalidation transactions from a snoop filter | |
JP3737834B2 (ja) | 2重化キャッシュ・スヌープ機構 | |
US6330643B1 (en) | Cache coherency protocols with global and local posted operations | |
CN107506312B (zh) | 在不同高速缓存一致性域之间共享信息的技术 | |
US7305523B2 (en) | Cache memory direct intervention | |
US6145059A (en) | Cache coherency protocols with posted operations and tagged coherency states | |
KR20110031361A (ko) | 스누프 필터링 메커니즘 | |
US20060053258A1 (en) | Cache filtering using core indicators | |
US7117312B1 (en) | Mechanism and method employing a plurality of hash functions for cache snoop filtering | |
US20140229678A1 (en) | Method and apparatus for accelerated shared data migration | |
US7325102B1 (en) | Mechanism and method for cache snoop filtering | |
US6418514B1 (en) | Removal of posted operations from cache operations queue | |
US6976132B2 (en) | Reducing latency of a snoop tenure | |
US6345340B1 (en) | Cache coherency protocol with ambiguous state for posted operations | |
US6347361B1 (en) | Cache coherency protocols with posted operations | |
US8489822B2 (en) | Providing a directory cache for peripheral devices | |
US20080082756A1 (en) | Mechanisms and methods of using self-reconciled data to reduce cache coherence overhead in multiprocessor systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130226 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130522 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130527 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130621 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130626 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130723 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130726 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130826 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130917 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140117 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20140124 |
|
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: 20140325 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140423 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5535991 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |