CN112513825B - 混合精确和不精确的缓存侦听过滤 - Google Patents

混合精确和不精确的缓存侦听过滤 Download PDF

Info

Publication number
CN112513825B
CN112513825B CN201980051648.2A CN201980051648A CN112513825B CN 112513825 B CN112513825 B CN 112513825B CN 201980051648 A CN201980051648 A CN 201980051648A CN 112513825 B CN112513825 B CN 112513825B
Authority
CN
China
Prior art keywords
cache
snoop filter
group
cache lines
snoop
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.)
Active
Application number
CN201980051648.2A
Other languages
English (en)
Chinese (zh)
Other versions
CN112513825A (zh
Inventor
M·米塔尔
J·达斯蒂达
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.)
Xilinx Inc
Original Assignee
Xilinx Inc
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 Xilinx Inc filed Critical Xilinx Inc
Publication of CN112513825A publication Critical patent/CN112513825A/zh
Application granted granted Critical
Publication of CN112513825B publication Critical patent/CN112513825B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • G06F12/0833Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means in combination with broadcast means (e.g. for invalidation or updating)
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0893Caches characterised by their organisation or structure
    • G06F12/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
CN201980051648.2A 2018-08-02 2019-08-01 混合精确和不精确的缓存侦听过滤 Active CN112513825B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/053,488 2018-08-02
US16/053,488 US10761985B2 (en) 2018-08-02 2018-08-02 Hybrid precise and imprecise cache snoop filtering
PCT/US2019/044742 WO2020028714A1 (en) 2018-08-02 2019-08-01 Hybrid precise and imprecise cache snoop filtering

Publications (2)

Publication Number Publication Date
CN112513825A CN112513825A (zh) 2021-03-16
CN112513825B true CN112513825B (zh) 2024-01-16

Family

ID=67659995

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980051648.2A Active CN112513825B (zh) 2018-08-02 2019-08-01 混合精确和不精确的缓存侦听过滤

Country Status (6)

Country Link
US (1) US10761985B2 (https=)
EP (1) EP3830699B1 (https=)
JP (1) JP7383007B2 (https=)
KR (1) KR20210035226A (https=)
CN (1) CN112513825B (https=)
WO (1) WO2020028714A1 (https=)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11099991B2 (en) 2019-01-24 2021-08-24 Vmware, Inc. Programming interfaces for accurate dirty data tracking
US11068400B2 (en) * 2019-01-24 2021-07-20 Vmware, Inc. Failure-atomic logging for persistent memory systems with cache-coherent FPGAs
US10817455B1 (en) * 2019-04-10 2020-10-27 Xilinx, Inc. Peripheral I/O device with assignable I/O and coherent domains
US10817462B1 (en) 2019-04-26 2020-10-27 Xilinx, Inc. Machine learning model updates to ML accelerators
US11586369B2 (en) 2019-05-29 2023-02-21 Xilinx, Inc. Hybrid hardware-software coherent framework
US11074208B1 (en) 2019-07-24 2021-07-27 Xilinx, Inc. Routing network using global address map with adaptive main memory expansion for a plurality of home agents
US11474871B1 (en) 2019-09-25 2022-10-18 Xilinx, Inc. Cache coherent acceleration function virtualization
US11556344B2 (en) 2020-09-28 2023-01-17 Xilinx, Inc. Hardware coherent computational expansion memory
US11567870B2 (en) * 2021-03-29 2023-01-31 Arm Limited Snoop filter with imprecise encoding
NO347869B1 (en) 2022-02-10 2024-04-22 Numascale As Snoop filter scalability
US20250240156A1 (en) * 2022-12-23 2025-07-24 Advanced Micro Devices, Inc. Systems and methods relating to confidential computing key mixing hazard management
CN116225978A (zh) * 2023-02-28 2023-06-06 海光信息技术股份有限公司 数据处理方法、数据处理装置、电子设备和存储介质
US12399829B2 (en) 2023-05-30 2025-08-26 Microsoft Technology Licensing, Llc Dynamic extension of cache coherence snoop filter entry
US12360903B2 (en) * 2023-05-31 2025-07-15 Microsoft Technology Licensing, Llc Cache coherence using dynamic coarse-grained tracking
US12332794B2 (en) 2023-06-16 2025-06-17 Microsoft Technology Licensing, Llc Cache coherence using adaptive coherency tracking based on cacheline size and cacheline sector size
US12436890B2 (en) 2023-06-16 2025-10-07 Microsoft Technology Licensing, Llc Snoop filter with disaggregated vector table
US12339777B2 (en) * 2023-06-23 2025-06-24 Microsoft Technology Licensing, Llc Dynamic extension and de-allocation of cache coherence snoop filter entry
US12561248B2 (en) * 2023-10-25 2026-02-24 Microsoft Technology Licensing, Llc Snoop filter entry using a partial vector
CN119988251A (zh) * 2023-11-10 2025-05-13 华为技术有限公司 芯片系统和访问方法
US12536103B1 (en) 2024-04-01 2026-01-27 Google Llc Dynamic snoop-filter allocation for large-scale memory coherent system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101593160A (zh) * 2008-05-30 2009-12-02 英特尔公司 减少来自侦听过滤器的后无效事务

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6959364B2 (en) * 2002-06-28 2005-10-25 Intel Corporation Partially inclusive snoop filter
US7636815B1 (en) 2003-04-09 2009-12-22 Klaiber Alexander C System and method for handling direct memory accesses
US7392351B2 (en) * 2005-03-29 2008-06-24 International Business Machines Corporation Method and apparatus for filtering snoop requests using stream registers
US7380071B2 (en) * 2005-03-29 2008-05-27 International Business Machines Corporation Snoop filtering system in a multiprocessor system
JP2008310414A (ja) * 2007-06-12 2008-12-25 Hitachi Ltd コンピュータシステム
US8856456B2 (en) * 2011-06-09 2014-10-07 Apple Inc. Systems, methods, and devices for cache block coherence
US8812786B2 (en) * 2011-10-18 2014-08-19 Advanced Micro Devices, Inc. Dual-granularity state tracking for directory-based cache coherence
US20140095806A1 (en) * 2012-09-29 2014-04-03 Carlos A. Flores Fajardo Configurable snoop filter architecture
JP6272011B2 (ja) * 2013-12-24 2018-01-31 Necプラットフォームズ株式会社 キャッシュ装置、キャッシュ装置を備えるコンピュータ、および、キャッシュ制御方法
GB2522057B (en) * 2014-01-13 2021-02-24 Advanced Risc Mach Ltd A data processing system and method for handling multiple transactions
US9817760B2 (en) * 2016-03-07 2017-11-14 Qualcomm Incorporated Self-healing coarse-grained snoop filter
US9990292B2 (en) * 2016-06-29 2018-06-05 Arm Limited Progressive fine to coarse grain snoop filter
US20190073304A1 (en) * 2017-09-07 2019-03-07 Alibaba Group Holding Limited Counting cache snoop filter based on a bloom filter

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101593160A (zh) * 2008-05-30 2009-12-02 英特尔公司 减少来自侦听过滤器的后无效事务

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"RegionTracker: A Case for Dual-Grain Tracking in the Memory System";Jason Zebchuk等;《CiteSeerX》;第2页-第7页 *
Arkaprava Basu等."CMP Directory Coherence: One Granularity Does Not Fit All" .《CiteSeerX》.2013,第2页倒数第2行-第3页第11行、第15页倒数第7行-第17页倒数第15行-. *

Also Published As

Publication number Publication date
KR20210035226A (ko) 2021-03-31
EP3830699B1 (en) 2024-04-10
EP3830699A1 (en) 2021-06-09
JP7383007B2 (ja) 2023-11-17
WO2020028714A1 (en) 2020-02-06
US20200042446A1 (en) 2020-02-06
US10761985B2 (en) 2020-09-01
JP2021533464A (ja) 2021-12-02
CN112513825A (zh) 2021-03-16

Similar Documents

Publication Publication Date Title
CN112513825B (zh) 混合精确和不精确的缓存侦听过滤
US12141435B2 (en) Configurable cache for coherent system
KR100465583B1 (ko) 판독 요청을 원격 처리 노드에 추론적으로 전송하는 비정형 메모리 액세스 데이터 처리 시스템 및 이 시스템에서의 통신 방법
US6275907B1 (en) Reservation management in a non-uniform memory access (NUMA) data processing system
US8868847B2 (en) Multi-core processor snoop filtering
US8103836B2 (en) Snoop filtering system in a multiprocessor system
US8856456B2 (en) Systems, methods, and devices for cache block coherence
US7047322B1 (en) System and method for performing conflict resolution and flow control in a multiprocessor system
KR102939786B1 (ko) 스케일러블 영역 기반 디렉토리
US6266743B1 (en) Method and system for providing an eviction protocol within a non-uniform memory access system
WO2010132655A2 (en) Cache coherent support for flash in a memory hierarchy
US7386683B2 (en) Method and apparatus for filtering snoop requests in a point-to-point interconnect architecture
US7287122B2 (en) Data replication in multiprocessor NUCA systems to reduce horizontal cache thrashing
JP2000250883A (ja) 不均等メモリ・アクセス・システムにおいてトランザクションのキャンセルによるデータ損失を避けるための方法およびシステム
US20090182893A1 (en) Cache coherence in a virtual machine managed system
US7380068B2 (en) System and method for contention-based cache performance optimization
US9448937B1 (en) Cache coherency
US12481594B2 (en) Dynamically altering tracking granularity in a region-based cache directory
JP2025536190A (ja) 単一の複合体においてディレクトリページを排他状態に保つページリンススキーム
US6826654B2 (en) Cache invalidation bus for a highly scalable shared cache memory hierarchy
CN110737407A (zh) 一种支持混合写策略的数据缓冲存储器实现方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant