KR20210035226A - 혼성의 정밀 및 비정밀 캐시 스눕 필터링 - Google Patents
혼성의 정밀 및 비정밀 캐시 스눕 필터링 Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0833—Cache 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)
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0893—Caches characterised by their organisation or structure
- G06F12/0895—Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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)
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)
| 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)
| 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 |
-
2018
- 2018-08-02 US US16/053,488 patent/US10761985B2/en active Active
-
2019
- 2019-08-01 WO PCT/US2019/044742 patent/WO2020028714A1/en not_active Ceased
- 2019-08-01 JP JP2021505657A patent/JP7383007B2/ja active Active
- 2019-08-01 KR KR1020217004749A patent/KR20210035226A/ko active Pending
- 2019-08-01 EP EP19753558.6A patent/EP3830699B1/en active Active
- 2019-08-01 CN CN201980051648.2A patent/CN112513825B/zh active Active
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 |