CN117609109A - 灵活高速缓存分配技术的基于优先级的高速缓存行驱逐算法 - Google Patents
灵活高速缓存分配技术的基于优先级的高速缓存行驱逐算法 Download PDFInfo
- Publication number
- CN117609109A CN117609109A CN202311713977.3A CN202311713977A CN117609109A CN 117609109 A CN117609109 A CN 117609109A CN 202311713977 A CN202311713977 A CN 202311713977A CN 117609109 A CN117609109 A CN 117609109A
- Authority
- CN
- China
- Prior art keywords
- cache
- processor
- priority
- field
- instruction
- 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
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/0891—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
-
- 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/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/126—Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
-
- 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/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
- G06F9/467—Transactional memory
-
- 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
-
- 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/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
-
- 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/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
-
- 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/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/123—Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list
-
- 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/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/128—Replacement control using replacement algorithms adapted to multidimensional cache systems, e.g. set-associative, multicache, multiset or multilevel
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
-
- 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/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- 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/60—Details of cache memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/696,548 US11656997B2 (en) | 2019-11-26 | 2019-11-26 | Flexible cache allocation technology priority-based cache line eviction algorithm |
| US16/696,548 | 2019-11-26 | ||
| CN202010940678.3A CN112948285A (zh) | 2019-11-26 | 2020-09-09 | 灵活高速缓存分配技术的基于优先级的高速缓存行驱逐算法 |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202010940678.3A Division CN112948285A (zh) | 2019-11-26 | 2020-09-09 | 灵活高速缓存分配技术的基于优先级的高速缓存行驱逐算法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN117609109A true CN117609109A (zh) | 2024-02-27 |
Family
ID=72659026
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202311713977.3A Pending CN117609109A (zh) | 2019-11-26 | 2020-09-09 | 灵活高速缓存分配技术的基于优先级的高速缓存行驱逐算法 |
| CN202010940678.3A Pending CN112948285A (zh) | 2019-11-26 | 2020-09-09 | 灵活高速缓存分配技术的基于优先级的高速缓存行驱逐算法 |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202010940678.3A Pending CN112948285A (zh) | 2019-11-26 | 2020-09-09 | 灵活高速缓存分配技术的基于优先级的高速缓存行驱逐算法 |
Country Status (5)
| Country | Link |
|---|---|
| US (2) | US11656997B2 (https=) |
| EP (2) | EP3828714B1 (https=) |
| JP (2) | JP7682613B2 (https=) |
| CN (2) | CN117609109A (https=) |
| BR (1) | BR102020019663A2 (https=) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113821324B (zh) * | 2021-09-17 | 2022-08-09 | 海光信息技术股份有限公司 | 处理器的高速缓存系统、方法、设备和计算机介质 |
| US12099444B2 (en) * | 2022-01-21 | 2024-09-24 | Centaur Technology, Inc. | Cat aware loads and software prefetches |
| US11947462B1 (en) | 2022-03-03 | 2024-04-02 | Apple Inc. | Cache footprint management |
| CN115098040B (zh) * | 2022-07-22 | 2024-10-29 | 北京天融信网络安全技术有限公司 | 基于fpga的数据处理方法、装置、设备及存储介质 |
| US20240311151A1 (en) * | 2023-03-13 | 2024-09-19 | Intel Corporation | Device, method and system for prioritizing entries of an instruction fetch resource |
| US12541455B2 (en) * | 2024-06-07 | 2026-02-03 | SanDisk Technologies, Inc. | Data storage device and method for defining caching layers based on cache attributes |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09101916A (ja) | 1995-10-06 | 1997-04-15 | Fujitsu Ltd | マルチプロセス処理装置 |
| US7899994B2 (en) | 2006-08-14 | 2011-03-01 | Intel Corporation | Providing quality of service (QoS) for cache architectures using priority information |
| US7725657B2 (en) | 2007-03-21 | 2010-05-25 | Intel Corporation | Dynamic quality of service (QoS) for a shared cache |
| US7802057B2 (en) | 2007-12-27 | 2010-09-21 | Intel Corporation | Priority aware selective cache allocation |
| JP5217432B2 (ja) | 2007-12-28 | 2013-06-19 | 富士通株式会社 | セクタ機能付きキャッシュメモリ |
| JP5413001B2 (ja) | 2009-07-09 | 2014-02-12 | 富士通株式会社 | キャッシュメモリ |
| US8677071B2 (en) * | 2010-03-26 | 2014-03-18 | Virtualmetrix, Inc. | Control of processor cache memory occupancy |
| WO2012095957A1 (ja) | 2011-01-12 | 2012-07-19 | 富士通株式会社 | キャッシュメモリ装置,キャッシュメモリの制御装置,情報処理装置,キャッシュメモリの制御方法,及びキャッシュメモリ装置の閾値決定プログラム |
| US9378153B2 (en) | 2013-08-27 | 2016-06-28 | Advanced Micro Devices, Inc. | Early write-back of modified data in a cache memory |
| US9582430B2 (en) * | 2015-03-27 | 2017-02-28 | Intel Corporation | Asymmetric set combined cache |
| US9734070B2 (en) | 2015-10-23 | 2017-08-15 | Qualcomm Incorporated | System and method for a shared cache with adaptive partitioning |
-
2019
- 2019-11-26 US US16/696,548 patent/US11656997B2/en active Active
-
2020
- 2020-09-08 JP JP2020150869A patent/JP7682613B2/ja active Active
- 2020-09-09 CN CN202311713977.3A patent/CN117609109A/zh active Pending
- 2020-09-09 CN CN202010940678.3A patent/CN112948285A/zh active Pending
- 2020-09-24 EP EP20198156.0A patent/EP3828714B1/en active Active
- 2020-09-24 EP EP23211531.1A patent/EP4307130A3/en active Pending
- 2020-09-26 BR BR102020019663-4A patent/BR102020019663A2/pt unknown
-
2023
- 2023-05-22 US US18/321,603 patent/US12182025B2/en active Active
-
2025
- 2025-05-13 JP JP2025080815A patent/JP2025118847A/ja active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| US20230409485A1 (en) | 2023-12-21 |
| US20210157739A1 (en) | 2021-05-27 |
| US12182025B2 (en) | 2024-12-31 |
| EP4307130A3 (en) | 2024-05-01 |
| EP3828714B1 (en) | 2024-04-03 |
| US11656997B2 (en) | 2023-05-23 |
| CN112948285A (zh) | 2021-06-11 |
| JP7682613B2 (ja) | 2025-05-26 |
| JP2021086612A (ja) | 2021-06-03 |
| EP3828714A1 (en) | 2021-06-02 |
| EP4307130A2 (en) | 2024-01-17 |
| BR102020019663A2 (pt) | 2021-06-08 |
| JP2025118847A (ja) | 2025-08-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12536018B2 (en) | Method and apparatus for performing reduction operations on a plurality of associated data element values | |
| JP7244046B2 (ja) | 遠隔アトミックオペレーションの空間的・時間的マージ | |
| CN109791487B (zh) | 用于加载多个数据元素的处理器、方法、系统和指令 | |
| US10067870B2 (en) | Apparatus and method for low-overhead synchronous page table updates | |
| US12182025B2 (en) | Flexible cache allocation technology priority-based cache line eviction algorithm | |
| CN110347431B (zh) | 自适应空间访问预取器装置和方法 | |
| US20170286299A1 (en) | Sharing aware snoop filter apparatus and method | |
| EP3757767B1 (en) | Asynchronous cache flush engine to manage platform coherent and memory side caches | |
| CN110647291A (zh) | 硬件辅助的页面调度机制 | |
| EP3757801A1 (en) | Multi-processor system with configurable cache sub-domains and cross-die memory coherency | |
| US20240320161A1 (en) | Apparatuses, methods, and systems for a device translation lookaside buffer pre-translation instruction and extensions to input/output memory management unit protocols | |
| US10310978B2 (en) | Apparatus and method for multi-level cache request tracking | |
| EP3771985A1 (en) | Hardware for split data translation lookaside buffers | |
| US20200310979A1 (en) | System, Apparatus And Method For Application Specific Address Mapping | |
| WO2019105566A1 (en) | Systems and methods for clustering sub-pages of physical memory pages | |
| CN119718968A (zh) | 通过转译后备缓冲器分区实现高效等面积受害者缓冲的微体系结构和指令集体系结构扩展 | |
| US20250068424A1 (en) | Method and apparatus for data/instruction access based on performance hints | |
| US11422939B2 (en) | Shared read—using a request tracker as a temporary read cache | |
| CN120179581A (zh) | 用于远程虚拟到物理地址转译的装置和方法 | |
| CN120704737A (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 |