JP7682613B2 - フレキシブルなキャッシュ割り当て技術の優先度ベースのキャッシュラインエビクションアルゴリズム - Google Patents
フレキシブルなキャッシュ割り当て技術の優先度ベースのキャッシュラインエビクションアルゴリズム Download PDFInfo
- Publication number
- JP7682613B2 JP7682613B2 JP2020150869A JP2020150869A JP7682613B2 JP 7682613 B2 JP7682613 B2 JP 7682613B2 JP 2020150869 A JP2020150869 A JP 2020150869A JP 2020150869 A JP2020150869 A JP 2020150869A JP 7682613 B2 JP7682613 B2 JP 7682613B2
- Authority
- JP
- Japan
- Prior art keywords
- priority
- ways
- cache
- llc
- requester
- 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
Links
Classifications
-
- 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
- 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
- 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/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
-
- 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)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2025080815A JP2025118847A (ja) | 2019-11-26 | 2025-05-13 | フレキシブルなキャッシュ割り当て技術の優先度ベースのキャッシュラインエビクションアルゴリズム |
Applications Claiming Priority (2)
| 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 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2025080815A Division JP2025118847A (ja) | 2019-11-26 | 2025-05-13 | フレキシブルなキャッシュ割り当て技術の優先度ベースのキャッシュラインエビクションアルゴリズム |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2021086612A JP2021086612A (ja) | 2021-06-03 |
| JP2021086612A5 JP2021086612A5 (https=) | 2025-01-23 |
| JP7682613B2 true JP7682613B2 (ja) | 2025-05-26 |
Family
ID=72659026
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2020150869A Active JP7682613B2 (ja) | 2019-11-26 | 2020-09-08 | フレキシブルなキャッシュ割り当て技術の優先度ベースのキャッシュラインエビクションアルゴリズム |
| JP2025080815A Pending JP2025118847A (ja) | 2019-11-26 | 2025-05-13 | フレキシブルなキャッシュ割り当て技術の優先度ベースのキャッシュラインエビクションアルゴリズム |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2025080815A Pending JP2025118847A (ja) | 2019-11-26 | 2025-05-13 | フレキシブルなキャッシュ割り当て技術の優先度ベースのキャッシュラインエビクションアルゴリズム |
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 |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080040554A1 (en) | 2006-08-14 | 2008-02-14 | Li Zhao | Providing quality of service (QoS) for cache architectures using priority information |
| US20080235457A1 (en) | 2007-03-21 | 2008-09-25 | Hasenplaugh William C | Dynamic quality of service (QoS) for a shared cache |
| US20090172315A1 (en) | 2007-12-27 | 2009-07-02 | Ravishankar Iyer | Priority aware selective cache allocation |
| JP2009163450A (ja) | 2007-12-28 | 2009-07-23 | Fujitsu Ltd | セクタ機能付きキャッシュメモリ |
| JP2011018196A (ja) | 2009-07-09 | 2011-01-27 | Fujitsu Ltd | キャッシュメモリ |
| WO2012095957A1 (ja) | 2011-01-12 | 2012-07-19 | 富士通株式会社 | キャッシュメモリ装置,キャッシュメモリの制御装置,情報処理装置,キャッシュメモリの制御方法,及びキャッシュメモリ装置の閾値決定プログラム |
| US20150067266A1 (en) | 2013-08-27 | 2015-03-05 | Advanced Micro Devices, Inc. | Early write-back of modified data in a cache memory |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09101916A (ja) | 1995-10-06 | 1997-04-15 | Fujitsu Ltd | マルチプロセス処理装置 |
| US8677071B2 (en) * | 2010-03-26 | 2014-03-18 | Virtualmetrix, Inc. | Control of processor cache memory occupancy |
| 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
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080040554A1 (en) | 2006-08-14 | 2008-02-14 | Li Zhao | Providing quality of service (QoS) for cache architectures using priority information |
| US20080235457A1 (en) | 2007-03-21 | 2008-09-25 | Hasenplaugh William C | Dynamic quality of service (QoS) for a shared cache |
| US20090172315A1 (en) | 2007-12-27 | 2009-07-02 | Ravishankar Iyer | Priority aware selective cache allocation |
| JP2009163450A (ja) | 2007-12-28 | 2009-07-23 | Fujitsu Ltd | セクタ機能付きキャッシュメモリ |
| JP2011018196A (ja) | 2009-07-09 | 2011-01-27 | Fujitsu Ltd | キャッシュメモリ |
| WO2012095957A1 (ja) | 2011-01-12 | 2012-07-19 | 富士通株式会社 | キャッシュメモリ装置,キャッシュメモリの制御装置,情報処理装置,キャッシュメモリの制御方法,及びキャッシュメモリ装置の閾値決定プログラム |
| US20150067266A1 (en) | 2013-08-27 | 2015-03-05 | Advanced Micro Devices, Inc. | Early write-back of modified data in a cache memory |
Also Published As
| Publication number | Publication date |
|---|---|
| US20230409485A1 (en) | 2023-12-21 |
| US20210157739A1 (en) | 2021-05-27 |
| CN117609109A (zh) | 2024-02-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 |
| 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 |
|---|---|---|
| JP7682613B2 (ja) | フレキシブルなキャッシュ割り当て技術の優先度ベースのキャッシュラインエビクションアルゴリズム | |
| US11068264B2 (en) | Processors, methods, systems, and instructions to load multiple data elements to destination storage locations other than packed data registers | |
| JP7244046B2 (ja) | 遠隔アトミックオペレーションの空間的・時間的マージ | |
| US12455701B2 (en) | Scalable access control checking for cross-address-space data movement | |
| US11615031B2 (en) | Memory management apparatus and method for managing different page tables for different privilege levels | |
| EP3757767B1 (en) | Asynchronous cache flush engine to manage platform coherent and memory side caches | |
| TWI830927B (zh) | 用於處理器非回寫能力的設備、方法、及非暫時性機器可讀取媒體 | |
| EP3575955B1 (en) | Indirect memory fetcher | |
| CN111164581A (zh) | 用于修补页的系统、方法和装置 | |
| US20240320161A1 (en) | Apparatuses, methods, and systems for a device translation lookaside buffer pre-translation instruction and extensions to input/output memory management unit protocols | |
| JP2022151658A (ja) | コアにおけるメモリ帯域幅制御 | |
| US10956327B2 (en) | Systems and methods for mitigating dram cache conflicts through hardware assisted redirection of pages (HARP) | |
| EP3771985A1 (en) | Hardware for split data translation lookaside buffers | |
| US10936507B2 (en) | System, apparatus and method for application specific address mapping | |
| CN119718968A (zh) | 通过转译后备缓冲器分区实现高效等面积受害者缓冲的微体系结构和指令集体系结构扩展 | |
| US20240211408A1 (en) | Apparatus and method for probabilistic cache replacement for accelerating address translation | |
| CN120179581A (zh) | 用于远程虚拟到物理地址转译的装置和方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230904 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240912 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20241022 |
|
| A524 | Written submission of copy of amendment under article 19 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20250115 |
|
| 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: 20250415 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250514 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7682613 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |