KR20210035226A - 혼성의 정밀 및 비정밀 캐시 스눕 필터링 - Google Patents

혼성의 정밀 및 비정밀 캐시 스눕 필터링 Download PDF

Info

Publication number
KR20210035226A
KR20210035226A KR1020217004749A KR20217004749A KR20210035226A KR 20210035226 A KR20210035226 A KR 20210035226A KR 1020217004749 A KR1020217004749 A KR 1020217004749A KR 20217004749 A KR20217004749 A KR 20217004749A KR 20210035226 A KR20210035226 A KR 20210035226A
Authority
KR
South Korea
Prior art keywords
group
cache line
cache
snoop filter
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.)
Pending
Application number
KR1020217004749A
Other languages
English (en)
Korean (ko)
Inventor
밀린드 미탈
자이딥 다스티다르
Original Assignee
자일링크스 인코포레이티드
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 자일링크스 인코포레이티드 filed Critical 자일링크스 인코포레이티드
Publication of KR20210035226A publication Critical patent/KR20210035226A/ko
Pending legal-status Critical Current

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)
KR1020217004749A 2018-08-02 2019-08-01 혼성의 정밀 및 비정밀 캐시 스눕 필터링 Pending KR20210035226A (ko)

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

Publication Number Publication Date
KR20210035226A true KR20210035226A (ko) 2021-03-31

Family

ID=67659995

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217004749A Pending KR20210035226A (ko) 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

Family Cites Families (14)

* 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 コンピュータシステム
US8015365B2 (en) * 2008-05-30 2011-09-06 Intel Corporation Reducing back invalidation transactions from a snoop filter
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

Also Published As

Publication number Publication date
CN112513825B (zh) 2024-01-16
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
EP3830699B1 (en) Hybrid precise and imprecise cache snoop filtering
US7434008B2 (en) System and method for coherency filtering
US6275907B1 (en) Reservation management in a non-uniform memory access (NUMA) data processing system
US8103836B2 (en) Snoop filtering system in a multiprocessor system
US7603523B2 (en) Method and apparatus for filtering snoop requests in a point-to-point interconnect architecture
KR102939786B1 (ko) 스케일러블 영역 기반 디렉토리
US7287122B2 (en) Data replication in multiprocessor NUCA systems to reduce horizontal cache thrashing
US10545870B2 (en) Arithmetic processing device and arithmetic processing device control method
US6266743B1 (en) Method and system for providing an eviction protocol within a non-uniform memory access system
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
WO2010132655A2 (en) Cache coherent support for flash in a memory hierarchy
US11593273B2 (en) Management of cache use requests sent to remote cache devices
JPH10154100A (ja) 情報処理システム及び装置及びその制御方法
KR20160099722A (ko) 캐시-코히어런시를 갖춘 집적 회로들
US6615321B2 (en) Mechanism for collapsing store misses in an SMP computer system
US9448937B1 (en) Cache coherency
US12061552B2 (en) Application of a default shared state cache coherency protocol
US12481594B2 (en) Dynamically altering tracking granularity in a region-based cache directory
WO2023113942A1 (en) Cache probe transaction filtering
JP2025536190A (ja) 単一の複合体においてディレクトリページを排他状態に保つページリンススキーム
US20020112130A1 (en) Store collapsing mechanism for SMP computer system
US12001343B1 (en) Selective distribution of translation entry invalidation requests in a multithreaded data processing system

Legal Events

Date Code Title Description
PA0105 International application

St.27 status event code: A-0-1-A10-A15-nap-PA0105

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

A201 Request for examination
P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

E13 Pre-grant limitation requested

Free format text: ST27 STATUS EVENT CODE: A-2-3-E10-E13-LIM-X000 (AS PROVIDED BY THE NATIONAL OFFICE)

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11 Amendment of application requested

Free format text: ST27 STATUS EVENT CODE: A-2-2-P10-P11-NAP-X000 (AS PROVIDED BY THE NATIONAL OFFICE)

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

D22 Grant of ip right intended

Free format text: ST27 STATUS EVENT CODE: A-1-2-D10-D22-EXM-PE0701 (AS PROVIDED BY THE NATIONAL OFFICE)

PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701