JP7383007B2 - ハイブリッドの精密および非精密キャッシュスヌープフィルタリング - Google Patents

ハイブリッドの精密および非精密キャッシュスヌープフィルタリング Download PDF

Info

Publication number
JP7383007B2
JP7383007B2 JP2021505657A JP2021505657A JP7383007B2 JP 7383007 B2 JP7383007 B2 JP 7383007B2 JP 2021505657 A JP2021505657 A JP 2021505657A JP 2021505657 A JP2021505657 A JP 2021505657A JP 7383007 B2 JP7383007 B2 JP 7383007B2
Authority
JP
Japan
Prior art keywords
group
cache
snoop filter
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
JP2021505657A
Other languages
English (en)
Japanese (ja)
Other versions
JP2021533464A5 (https=
JP2021533464A (ja
Inventor
ミッタル,ミリンド
ダスティダール,ジャディブ
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 JP2021533464A publication Critical patent/JP2021533464A/ja
Publication of JP2021533464A5 publication Critical patent/JP2021533464A5/ja
Application granted granted Critical
Publication of JP7383007B2 publication Critical patent/JP7383007B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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)
JP2021505657A 2018-08-02 2019-08-01 ハイブリッドの精密および非精密キャッシュスヌープフィルタリング Active JP7383007B2 (ja)

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 (3)

Publication Number Publication Date
JP2021533464A JP2021533464A (ja) 2021-12-02
JP2021533464A5 JP2021533464A5 (https=) 2022-08-02
JP7383007B2 true JP7383007B2 (ja) 2023-11-17

Family

ID=67659995

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021505657A Active JP7383007B2 (ja) 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 (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008310414A (ja) 2007-06-12 2008-12-25 Hitachi Ltd コンピュータシステム
JP2013016160A (ja) 2011-06-09 2013-01-24 Apple Inc キャッシュブロックコヒーレンスのためのシステム、方法、およびデバイス
JP2015121945A (ja) 2013-12-24 2015-07-02 Necプラットフォームズ株式会社 キャッシュ装置、キャッシュ装置を備えるコンピュータ、および、キャッシュ制御方法
US20180004663A1 (en) 2016-06-29 2018-01-04 Arm Limited Progressive fine to coarse grain snoop filter

Family Cites Families (10)

* 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
US8015365B2 (en) * 2008-05-30 2011-09-06 Intel Corporation Reducing back invalidation transactions from a snoop filter
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
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
US20190073304A1 (en) * 2017-09-07 2019-03-07 Alibaba Group Holding Limited Counting cache snoop filter based on a bloom filter

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008310414A (ja) 2007-06-12 2008-12-25 Hitachi Ltd コンピュータシステム
JP2013016160A (ja) 2011-06-09 2013-01-24 Apple Inc キャッシュブロックコヒーレンスのためのシステム、方法、およびデバイス
JP2015121945A (ja) 2013-12-24 2015-07-02 Necプラットフォームズ株式会社 キャッシュ装置、キャッシュ装置を備えるコンピュータ、および、キャッシュ制御方法
US20180004663A1 (en) 2016-06-29 2018-01-04 Arm Limited Progressive fine to coarse grain snoop filter

Also Published As

Publication number Publication date
CN112513825B (zh) 2024-01-16
KR20210035226A (ko) 2021-03-31
EP3830699B1 (en) 2024-04-10
EP3830699A1 (en) 2021-06-09
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
JP7383007B2 (ja) ハイブリッドの精密および非精密キャッシュスヌープフィルタリング
US7373462B2 (en) Snoop filter for filtering snoop requests
US8103836B2 (en) Snoop filtering system in a multiprocessor system
US7392351B2 (en) Method and apparatus for filtering snoop requests using stream registers
US7603523B2 (en) Method and apparatus for filtering snoop requests in a point-to-point interconnect architecture
KR102939786B1 (ko) 스케일러블 영역 기반 디렉토리
US9355035B2 (en) Dynamic write priority based on virtual write queue high water mark for set associative cache using cache cleaner when modified sets exceed threshold
US7809889B2 (en) High performance multilevel cache hierarchy
CN113874845A (zh) 多请求者存储器存取管线和仲裁器
US7287122B2 (en) Data replication in multiprocessor NUCA systems to reduce horizontal cache thrashing
WO2010132655A2 (en) Cache coherent support for flash in a memory hierarchy
US7380068B2 (en) System and method for contention-based cache performance optimization
US20060224839A1 (en) Method and apparatus for filtering snoop requests using multiple snoop caches
US9448937B1 (en) Cache coherency
WO2022146738A1 (en) Method and apparatus for managing a cache directory
WO2024073185A1 (en) Dynamically altering tracking granularity in a region-based cache directory
WO2023113942A1 (en) Cache probe transaction filtering
JP2025536190A (ja) 単一の複合体においてディレクトリページを排他状態に保つページリンススキーム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220725

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220725

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230801

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230913

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231107

R150 Certificate of patent or registration of utility model

Ref document number: 7383007

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150