JP6663542B2 - 遅延キャッシュの利用のためのシステム及び方法 - Google Patents
遅延キャッシュの利用のためのシステム及び方法 Download PDFInfo
- Publication number
- JP6663542B2 JP6663542B2 JP2019533295A JP2019533295A JP6663542B2 JP 6663542 B2 JP6663542 B2 JP 6663542B2 JP 2019533295 A JP2019533295 A JP 2019533295A JP 2019533295 A JP2019533295 A JP 2019533295A JP 6663542 B2 JP6663542 B2 JP 6663542B2
- Authority
- JP
- Japan
- Prior art keywords
- level cache
- low
- cache
- threshold
- level
- 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
- 238000000034 method Methods 0.000 title claims description 71
- 230000003111 delayed effect Effects 0.000 title description 8
- 230000000694 effects Effects 0.000 claims description 16
- 238000011010 flushing procedure Methods 0.000 claims description 12
- 230000004913 activation Effects 0.000 claims description 11
- 238000001994 activation Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 9
- 230000003068 static effect Effects 0.000 claims description 4
- 238000003860 storage Methods 0.000 description 16
- 230000008901 benefit Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000024977 response to activity Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000011960 computer-aided design Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000002730 additional effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3275—Power saving in memory, e.g. RAM, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0871—Allocation or management of cache space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0888—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/28—Using a specific disk cache architecture
- G06F2212/283—Plural cache memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/70—Details relating to dynamic memory management
-
- 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)
Description
Claims (28)
- 処理システムにおけるキャッシュ利用を管理する方法であって、
高レベルキャッシュを有効化したことに応じて、1つ以上の低レベルキャッシュからエビクトされた低レベルキャッシュビクティムをカウントすることと、
前記低レベルキャッシュビクティムのカウントが閾値以下の間、前記低レベルキャッシュビクティムを前記高レベルキャッシュに記憶せずに、前記低レベルキャッシュビクティムの各々をメモリに記憶することと、
前記低レベルキャッシュビクティムのカウントが閾値より大きい場合、前記閾値を超えた後にエビクトされた低レベルキャッシュビクティムの各々を前記高レベルキャッシュに記憶することと、を含む、
方法。 - 前記1つ以上の低レベルキャッシュはレベル2(L2)キャッシュであり、前記高レベルキャッシュはレベル3(L3)キャッシュである、
請求項1の方法。 - 前記閾値は、前記高レベルキャッシュの複数回の有効化に亘って静的である、
請求項1の方法。 - 前記1つ以上の低レベルキャッシュのキャッシュビクティムカウント履歴、前記高レベルキャッシュの有効ビット履歴、前記閾値に対する上限制約、前記閾値に対する下限制約、前記高レベルキャッシュの電力使用量、又は、前記高レベルキャッシュのパワーダウン時間のうち少なくとも1つに少なくとも部分的に基づいて、前記閾値を動的に決定することをさらに含む、
請求項1の方法。 - キャッシュビクティムの数を前記1つ以上の低レベルキャッシュのアクティビティ期間のセットの各期間に関連付けるキャッシュビクティム履歴を記憶することと、
前記キャッシュビクティム履歴に少なくとも部分的に基づいて前記閾値を決定することと、をさらに含む、
請求項1の方法。 - 前記閾値を決定することは、前記閾値に対する上限制約に少なくとも部分的に基づいて、前記閾値を決定することを含む、
請求項5の方法。 - 有効ビットを用いて、前記高レベルキャッシュの占有領域を追跡することと、
有効ビットの使用量を前記高レベルキャッシュのアクティビティ期間と関連付ける有効ビット履歴を記憶することと、
前記有効ビット履歴に少なくとも部分的に基づいて前記閾値を決定することと、をさらに含む、
請求項1の方法。 - 前記閾値を超えた後にエビクトされた低レベルキャッシュビクティムの各々を前記高レベルキャッシュに記憶することは、
低レベルキャッシュビクティムを記憶する前記高レベルキャッシュの領域を、ウェイ制約に基づいて選択することを含む、
請求項1の方法。 - 前記高レベルキャッシュが無効にされるという指示に応じて、前記低レベルキャッシュビクティムの前記カウントが前記閾値を超えているか否かに少なくとも部分的に基づいて、前記高レベルキャッシュのパワーダウン手順を選択することをさらに含む、
請求項1の方法。 - パワーダウン手順を選択することは、
前記低レベルキャッシュビクティムの前記カウントが前記閾値を超えていない場合に、前記高レベルキャッシュをフラッシュせずに前記高レベルキャッシュを無効にするパワーダウン手順を選択することを含む、
請求項9の方法。 - パワーダウン手順を選択することは、
前記低レベルキャッシュビクティムの前記カウントが前記閾値を超えた場合に、前記高レベルキャッシュをフラッシュして前記高レベルキャッシュを無効にするパワーダウン手順を選択することを含む、
請求項10の方法。 - プロセッサコアと、
前記プロセッサコアによってアクセス可能な1つ以上の低レベルキャッシュと、
前記プロセッサコア及び前記1つ以上の低レベルキャッシュによってアクセス可能な高レベルキャッシュと、
前記1つ以上の低レベルキャッシュ及び前記高レベルキャッシュにアクセスするコントローラと、を備え、
前記コントローラは、
前記高レベルキャッシュを有効化したことに応じて、前記1つ以上の低レベルキャッシュからエビクトされた低レベルキャッシュビクティムをカウントし、
前記低レベルキャッシュビクティムのカウントが閾値以下の間、前記低レベルキャッシュビクティムを前記高レベルキャッシュに記憶せずに、前記低レベルキャッシュビクティムの各々をシステムメモリに記憶し、
前記低レベルキャッシュビクティムのカウントが閾値より大きい場合、前記閾値を超えた後にエビクトされた低レベルキャッシュビクティムの各々を前記高レベルキャッシュに記憶する、
システム。 - 前記閾値は、前記高レベルキャッシュの複数回の有効化に亘って静的である、
請求項12のシステム。 - 前記コントローラは、前記1つ以上の低レベルキャッシュのキャッシュビクティムカウント履歴、前記1つ以上の低レベルキャッシュの有効ビット履歴、前記閾値に対する上限制約、前記閾値に対する下限制約、前記高レベルキャッシュの電力使用量、又は、前記高レベルキャッシュのパワーダウン時間のうち少なくとも1つに少なくとも部分的に基づいて、前記閾値を動的に決定する、
請求項12のシステム。 - 前記コントローラは、
キャッシュビクティムの数を前記1つ以上の低レベルキャッシュのアクティビティ期間のセットの各期間に関連付けるキャッシュビクティム履歴を記憶し、
前記キャッシュビクティム履歴に少なくとも部分的に基づいて前記閾値を決定する、
請求項12のシステム。 - 前記コントローラは、
前記高レベルキャッシュのタグアレイの有効ビットを用いて、前記高レベルキャッシュの占有領域を追跡する、
請求項12のシステム。 - 前記コントローラは、
前記有効ビットの使用量を前記高レベルキャッシュのアクティビティ期間と関連付ける有効ビット履歴を記憶し、
前記有効ビット履歴に少なくとも部分的に基づいて前記閾値を決定する、
請求項16のシステム。 - 前記コントローラは、
前記低レベルキャッシュビクティムの前記カウントが前記閾値を超えていない場合、前記高レベルキャッシュをフラッシュせずに前記高レベルキャッシュをパワーダウンする、
請求項12のシステム。 - 前記コントローラは、
前記カウントが前記閾値以下の間、低レベルビクティムを記憶する前記高レベルキャッシュの領域をウェイ制約に基づいて選択する、
請求項12のシステム。 - キャッシュ利用を管理する方法であって、
キャッシュビクティムの数を低レベルキャッシュのアクティビティ期間のセットの各期間に関連付けるキャッシュビクティム履歴を記憶することと、
高レベルキャッシュに記憶されずにメモリに送信される低レベルキャッシュビクティムの閾値を決定することと、
前記高レベルキャッシュを有効化したことに応じて、低レベルキャッシュビクティムを、前記高レベルキャッシュを有効化した後に、前記高レベルキャッシュに書き込まずにメモリに閾値まで記憶することと、を含む、
方法。 - 前記低レベルキャッシュビクティムを閾値まで記憶することは、前記低レベルキャッシュビクティムのカウントを判別することを含む、
請求項20の方法。 - 前記低レベルキャッシュビクティムを閾値まで記憶することは、前記低レベルキャッシュビクティムのカウントが閾値以下の間、前記低レベルキャッシュビクティムを前記高レベルキャッシュに記憶せずに、前記低レベルキャッシュビクティムの各々をメモリに記憶することをさらに含む、
請求項21の方法。 - キャッシュ利用を管理する方法であって、
高レベルキャッシュを有効化したことに応じて、前記高レベルキャッシュに送信された低レベルキャッシュビクティムをカウントすることと、
前記低レベルキャッシュビクティムのカウントが閾値以下の間、前記低レベルキャッシュビクティムの各々を前記高レベルキャッシュに記憶し、前記低レベルキャッシュビクティムが記憶される前記高レベルキャッシュの位置をフラッシュテーブルに記憶することと、を含む、
方法。 - 前記低レベルキャッシュビクティムのカウントが閾値を超えた場合に、前記低レベルキャッシュビクティムが記憶される前記高レベルキャッシュの位置を前記フラッシュテーブルに記憶せずに、前記低レベルキャッシュの各々を前記高レベルキャッシュに書き込むことをさらに含む、
請求項23の方法。 - キャッシュビクティムの数を1つ以上の低レベルキャッシュのアクティビティ期間のセットの各期間に関連付けるキャッシュビクティム履歴を記憶することと、
前記キャッシュビクティム履歴に少なくとも部分的に基づいて前記閾値を決定することと、をさらに含む、
請求項23の方法。 - 前記低レベルキャッシュビクティムのカウントが前記閾値を超えない場合に、前記高レベルキャッシュをフラッシュせずに前記高レベルキャッシュを無効化することをさらに含む、
請求項23の方法。 - 有効ビットを用いて、前記高レベルキャッシュの占有領域を追跡することと、
有効ビットの使用量を前記高レベルキャッシュのアクティビティ期間と関連付ける有効ビット履歴を記憶することと、
前記有効ビット履歴に少なくとも部分的に基づいて前記閾値を決定することと、をさらに含む、
請求項23の方法。 - 前記閾値を超えた後にエビクトされた低レベルキャッシュビクティムの各々を前記高レベルキャッシュに記憶することは、
低レベルキャッシュビクティムを記憶する前記高レベルキャッシュの領域を、ウェイ制約に基づいて選択することを含む、
請求項23の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/256,950 | 2016-09-06 | ||
US15/256,950 US9946646B2 (en) | 2016-09-06 | 2016-09-06 | Systems and method for delayed cache utilization |
PCT/US2017/049921 WO2018048748A1 (en) | 2016-09-06 | 2017-09-01 | Systems and method for delayed cache utilization |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019530112A JP2019530112A (ja) | 2019-10-17 |
JP6663542B2 true JP6663542B2 (ja) | 2020-03-11 |
Family
ID=61280745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019533295A Active JP6663542B2 (ja) | 2016-09-06 | 2017-09-01 | 遅延キャッシュの利用のためのシステム及び方法 |
Country Status (6)
Country | Link |
---|---|
US (2) | US9946646B2 (ja) |
EP (2) | EP3510486B1 (ja) |
JP (1) | JP6663542B2 (ja) |
KR (1) | KR102032476B1 (ja) |
CN (2) | CN109716307B (ja) |
WO (1) | WO2018048748A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9946646B2 (en) * | 2016-09-06 | 2018-04-17 | Advanced Micro Devices, Inc. | Systems and method for delayed cache utilization |
KR20200085522A (ko) * | 2019-01-07 | 2020-07-15 | 에스케이하이닉스 주식회사 | 이종 메모리를 갖는 메인 메모리 장치, 이를 포함하는 컴퓨터 시스템 및 그것의 데이터 관리 방법 |
US11347649B2 (en) | 2019-05-24 | 2022-05-31 | Texas Instruments Incorporated | Victim cache with write miss merging |
US11223575B2 (en) * | 2019-12-23 | 2022-01-11 | Advanced Micro Devices, Inc. | Re-purposing byte enables as clock enables for power savings |
WO2021126286A1 (en) * | 2020-02-14 | 2021-06-24 | Huawei Technologies Co., Ltd. | Upward eviction of cache lines |
CN112015674B (zh) * | 2020-08-27 | 2023-05-30 | 平安科技(深圳)有限公司 | 基于多层级的缓存资源访问方法、装置和计算机设备 |
US20230094030A1 (en) * | 2021-09-30 | 2023-03-30 | Advanced Micro Devices, Inc. | Cache resizing based on processor workload |
JP2023069644A (ja) * | 2021-11-08 | 2023-05-18 | 富士通株式会社 | 半導体装置および半導体装置の制御方法 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990079976A (ko) | 1998-04-10 | 1999-11-05 | 김영환 | 빅팀캐쉬의 상태비트에 따른 무효화 순위결정 로직장치 |
US6574710B1 (en) * | 2000-07-31 | 2003-06-03 | Hewlett-Packard Development Company, L.P. | Computer cache system with deferred invalidation |
US20070094450A1 (en) * | 2005-10-26 | 2007-04-26 | International Business Machines Corporation | Multi-level cache architecture having a selective victim cache |
US7757045B2 (en) * | 2006-03-13 | 2010-07-13 | Intel Corporation | Synchronizing recency information in an inclusive cache hierarchy |
US7596662B2 (en) * | 2006-08-31 | 2009-09-29 | Intel Corporation | Selective storage of data in levels of a cache memory |
US7606976B2 (en) * | 2006-10-27 | 2009-10-20 | Advanced Micro Devices, Inc. | Dynamically scalable cache architecture |
US8171219B2 (en) * | 2009-03-31 | 2012-05-01 | Intel Corporation | Method and system to perform caching based on file-level heuristics |
KR101574207B1 (ko) | 2009-10-16 | 2015-12-14 | 삼성전자주식회사 | 데이터 저장 장치 및 그것의 데이터 저장 방법 |
US8935478B2 (en) * | 2011-11-01 | 2015-01-13 | International Business Machines Corporation | Variable cache line size management |
CA2860544A1 (en) * | 2012-01-12 | 2013-07-18 | Murata Electronics Oy | Accelerator sensor structure and use thereof |
US10114750B2 (en) * | 2012-01-23 | 2018-10-30 | Qualcomm Incorporated | Preventing the displacement of high temporal locality of reference data fill buffers |
US20130262780A1 (en) * | 2012-03-30 | 2013-10-03 | Srilatha Manne | Apparatus and Method for Fast Cache Shutdown |
US20130346683A1 (en) * | 2012-06-22 | 2013-12-26 | William L. Walker | Cache Sector Dirty Bits |
US20140108734A1 (en) * | 2012-10-17 | 2014-04-17 | Advanced Micro Devices, Inc. | Method and apparatus for saving processor architectural state in cache hierarchy |
US8935472B2 (en) * | 2012-12-21 | 2015-01-13 | Advanced Micro Devices, Inc. | Processing device with independently activatable working memory bank and methods |
US9251069B2 (en) * | 2012-12-21 | 2016-02-02 | Advanced Micro Devices, Inc. | Mechanisms to bound the presence of cache blocks with specific properties in caches |
US20140181402A1 (en) * | 2012-12-21 | 2014-06-26 | Advanced Micro Devices, Inc. | Selective cache memory write-back and replacement policies |
US9251081B2 (en) * | 2013-08-01 | 2016-02-02 | Advanced Micro Devices, Inc. | Management of caches |
US10140210B2 (en) * | 2013-09-24 | 2018-11-27 | Intel Corporation | Method and apparatus for cache occupancy determination and instruction scheduling |
US10204056B2 (en) * | 2014-01-27 | 2019-02-12 | Via Alliance Semiconductor Co., Ltd | Dynamic cache enlarging by counting evictions |
US9405706B2 (en) | 2014-09-25 | 2016-08-02 | Intel Corporation | Instruction and logic for adaptive dataset priorities in processor caches |
KR20170109133A (ko) * | 2016-03-17 | 2017-09-28 | 에스케이하이닉스 주식회사 | 하이브리드 메모리 장치 및 그의 데이터 관리 방법 |
US9946646B2 (en) * | 2016-09-06 | 2018-04-17 | Advanced Micro Devices, Inc. | Systems and method for delayed cache utilization |
-
2016
- 2016-09-06 US US15/256,950 patent/US9946646B2/en active Active
-
2017
- 2017-09-01 CN CN201780054334.9A patent/CN109716307B/zh active Active
- 2017-09-01 EP EP17849364.9A patent/EP3510486B1/en active Active
- 2017-09-01 CN CN202010825209.7A patent/CN112069090A/zh active Pending
- 2017-09-01 JP JP2019533295A patent/JP6663542B2/ja active Active
- 2017-09-01 KR KR1020197008118A patent/KR102032476B1/ko active IP Right Grant
- 2017-09-01 EP EP21167440.3A patent/EP3879407B1/en active Active
- 2017-09-01 WO PCT/US2017/049921 patent/WO2018048748A1/en unknown
-
2018
- 2018-03-27 US US15/936,828 patent/US10289567B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN109716307A (zh) | 2019-05-03 |
US9946646B2 (en) | 2018-04-17 |
CN109716307B (zh) | 2020-09-15 |
US20180217931A1 (en) | 2018-08-02 |
EP3879407B1 (en) | 2023-12-27 |
EP3879407A1 (en) | 2021-09-15 |
US10289567B2 (en) | 2019-05-14 |
US20180067856A1 (en) | 2018-03-08 |
KR20190040292A (ko) | 2019-04-17 |
EP3510486A4 (en) | 2020-04-29 |
CN112069090A (zh) | 2020-12-11 |
EP3510486A1 (en) | 2019-07-17 |
JP2019530112A (ja) | 2019-10-17 |
EP3510486B1 (en) | 2021-05-19 |
KR102032476B1 (ko) | 2019-11-08 |
WO2018048748A1 (en) | 2018-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6663542B2 (ja) | 遅延キャッシュの利用のためのシステム及び方法 | |
US9223710B2 (en) | Read-write partitioning of cache memory | |
US10430349B2 (en) | Scaled set dueling for cache replacement policies | |
US9075730B2 (en) | Mechanisms to bound the presence of cache blocks with specific properties in caches | |
KR102429404B1 (ko) | 상이한 캐시 레벨에서의 캐시라인의 상태를 모니터하기 위한 쉐도우 태그 메모리 | |
US9251081B2 (en) | Management of caches | |
CN111263934B (zh) | 至少具有三个缓存级别的缓存层级的混合低级缓存包含策略 | |
KR102423713B1 (ko) | 가상 어드레스를 물리적 어드레스로 번역을 수행하기 위해 입력-출력 메모리 관리 유닛내 다수의 메모리 소자들 사용 | |
US9262322B2 (en) | Method and apparatus for storing a processor architectural state in cache memory | |
WO2006034289A1 (en) | Method and apparatus for run-ahead victim selection to reduce undesirable replacement behavior in inclusive caches | |
JP7214727B2 (ja) | パワーダウン状態におけるプロセッサコアのキャッシュエントリの保持 | |
US11526449B2 (en) | Limited propagation of unnecessary memory updates | |
CN110036376B (zh) | 无分配高速缓存策略 | |
JP5976225B2 (ja) | スティッキー抜去エンジンを伴うシステムキャッシュ | |
CN111480151A (zh) | 将高速缓存线从共用存储器页面冲洗到存储器 | |
KR20240136345A (ko) | 최종 레벨 캐시로의 l3 캐시 데이터 축출을 위한 데이터를 다시 페치하기 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190627 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190627 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20190627 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20190710 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191008 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200107 |
|
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: 20200128 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200214 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6663542 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |