JP2018519614A - 追い出しを促すための先読みタグ - Google Patents
追い出しを促すための先読みタグ Download PDFInfo
- Publication number
- JP2018519614A JP2018519614A JP2018511588A JP2018511588A JP2018519614A JP 2018519614 A JP2018519614 A JP 2018519614A JP 2018511588 A JP2018511588 A JP 2018511588A JP 2018511588 A JP2018511588 A JP 2018511588A JP 2018519614 A JP2018519614 A JP 2018519614A
- Authority
- JP
- Japan
- Prior art keywords
- data
- cache
- processor
- prefetching
- interconnect
- 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.)
- Granted
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/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- 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
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)
Abstract
Description
102 プロセッサ
104 リング相互接続
106 メインメモリ
108 共有キャッシュ
110 共有キャッシュ
200 先読みシステム
202 プロセッサ
204 プロセッサレベルキャッシュ、プロセッサキャッシュ
206 メインメモリ
208 共有キャッシュ
210 相互接続
300 先読みシステム
302 プロセッサ
304 キャッシュ
306 メインメモリ
308 共有キャッシュ
310 相互接続
400 先読みシステム
402 プロセッサ
404 キャッシュ
406 メインメモリ
408 共有キャッシュ
410 相互接続
500 先読みシステム
502 プロセッサ
504 キャッシュ
506 メインメモリ
508 共有キャッシュ
510 相互接続
600 先読みキャッシュシステム
602 プロセッサ
604 キャッシュ
606 先読みコンポーネント
608 追い出しコンポーネント
610 相互接続
612 共有キャッシュ
614 メインメモリ
700 先読みキャッシュシステム
702 プロセッサ
704 キャッシュ
706 タグ付けコンポーネント
708 予測コンポーネント
800 手順
900 コンピューティングシステム環境
910 コンピュータ、デバイス
920 処理ユニット
921 システムバス
930 システムメモリ
970 リモートコンピュータ
971 ネットワーク、LAN
1010 コンピューティングオブジェクト
1012 コンピューティングオブジェクト
1020 コンピューティングオブジェクトまたはデバイス
1022 コンピューティングオブジェクトまたはデバイス
1024 コンピューティングオブジェクトまたはデバイス
1026 コンピューティングオブジェクトまたはデバイス
1028 コンピューティングオブジェクトまたはデバイス
1030 アプリケーション
1032 アプリケーション
1034 アプリケーション
1036 アプリケーション
1038 アプリケーション
1040 データストア
1042 通信ネットワーク
Claims (10)
- プロセッサ、共有キャッシュ、およびメインメモリを通信可能に結合するために構成される相互接続と、
データのセットを前記メインメモリから前記相互接続を介してプロセッサキャッシュに先読みするために構成されるプロセッサキャッシュプリフェッチャであって、前記プロセッサに関連付けられており、前記データのセットからのデータの第1の部分に未使用とタグを付け、前記データのセットからのデータの第2の部分に使用済みとタグを付ける、プロセッサキャッシュプリフェッチャと、
前記データの第1の部分を前記共有キャッシュに前記相互接続を介して追い出し、前記データの第2の部分を前記メインメモリに前記相互接続を介して追い出すために構成されるプロセッサキャッシュエビクタと
を備える、キャッシュ先読みシステム。 - 前記相互接続は、リング相互接続を備え、
前記プロセッサキャッシュは、レベル2キャッシュを備え、前記共有キャッシュは、レベル3キャッシュを備え、
前記データのセットは、前記プロセッサによって実行される第1のデータ、および前記第1のデータに関連付けられた第2のデータを含む、請求項1に記載のキャッシュ先読みシステム。 - 前記プロセッサキャッシュプリフェッチャはさらに、前記データの第1の部分および前記データの第2の部分に、前記プロセッサによる将来使用の確率の表示でタグ付けするために構成される、請求項1に記載のキャッシュ先読みシステム。
- 前記プロセッサキャッシュプリフェッチャはさらに、前記プロセッサが前記データの第1の部分を要求することに応答して、前記データの第1の部分を前記共有キャッシュから先読みするために構成される、請求項1に記載のキャッシュ先読みシステム。
- プロセッサと、
前記プロセッサによって実行されるときに動作の実施を容易にする実行可能命令を記憶するメモリと
を備え、前記動作が、
システムメモリから、前記プロセッサに関連付けられたプロセッサキャッシュに、データのセットを先読みするステップと、
前記データのセットのデータの第1の部分に、前記データの第1の部分が実行されるデータであるとの表示でタグ付けするステップと、
前記データのセットのデータの第2の部分に、前記データの第2の部分が実行されるデータである可能性があるとの表示でタグ付けするステップと、
前記データの第2の部分を共有キャッシュに追い出すステップと
を含む、キャッシュ先読みシステム。 - 前記動作はさらに、
前記データの第1の部分を前記システムメモリに追い出すステップと、
前記データの第2の部分を実行するための要求を前記プロセッサから受け取ることに応答して、前記追い出されたデータの第2の部分を前記共有キャッシュから前記プロセッサキャッシュに先読みするステップと
を含む、請求項5に記載のキャッシュ先読みシステム。 - 前記プロセッサ、前記システムメモリ、および前記共有キャッシュは、リング相互接続を介して通信可能に結合され、
前記データの第2の部分は、所定の期間内に実行されるデータである可能性があり、
前記データの第1の部分および前記データの第2の部分は、論理的および物理的に互いに近いことに基づいて互いに関連している、請求項5に記載のキャッシュ先読みシステム。 - システムメモリからプロセッサキャッシュにデータのセットを先読みするステップであって、前記プロセッサキャッシュは、プロセッサに関連付けられている、ステップと、
前記データのセットのデータの第1の部分に、前記データの第1の部分が使用されるデータであるとの表示でタグ付けするステップと、
前記データのセットのデータの第2の部分に、前記データの第2の部分が未使用データであるとの表示でタグ付けするステップと、
前記データの第2の部分を共有キャッシュに追い出すステップと
を含む、キャッシング方法。 - 前記データの第1の部分を前記システムメモリに追い出すステップと、
前記データの第2の部分を実行するための要求を前記プロセッサから受け取ることに応答して、前記追い出されたデータの第2の部分を前記共有キャッシュから前記プロセッサキャッシュに先読みするステップと
をさらに含む、請求項8に記載のキャッシング方法。 - 前記先読みするステップおよび前記追い出すステップは、前記プロセッサ、前記システムメモリ、および前記共有キャッシュを結合するリング相互接続を介しており、
前記データの第2の部分は、所定の期間内に使用される可能性があるデータである、請求項8に記載のキャッシング方法。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/710,837 | 2015-05-13 | ||
| US14/710,837 US9971693B2 (en) | 2015-05-13 | 2015-05-13 | Prefetch tag for eviction promotion |
| PCT/US2015/042792 WO2016182588A1 (en) | 2015-05-13 | 2015-07-30 | Prefetch tag for eviction promotion |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2018519614A true JP2018519614A (ja) | 2018-07-19 |
| JP2018519614A5 JP2018519614A5 (ja) | 2018-12-06 |
| JP6497831B2 JP6497831B2 (ja) | 2019-04-10 |
Family
ID=57248397
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2018511588A Active JP6497831B2 (ja) | 2015-05-13 | 2015-07-30 | 追い出しを促すための先読みタグ |
Country Status (5)
| Country | Link |
|---|---|
| US (2) | US9971693B2 (ja) |
| EP (1) | EP3295314A4 (ja) |
| JP (1) | JP6497831B2 (ja) |
| CN (1) | CN108139976B (ja) |
| WO (1) | WO2016182588A1 (ja) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10176120B2 (en) | 2017-02-22 | 2019-01-08 | International Business Machines Corporation | Cache prefetching in offloaded data transfer (ODX) |
| KR102353859B1 (ko) * | 2017-11-01 | 2022-01-19 | 삼성전자주식회사 | 컴퓨팅 장치 및 비휘발성 듀얼 인라인 메모리 모듈 |
| CN110442382B (zh) * | 2019-07-31 | 2021-06-15 | 西安芯海微电子科技有限公司 | 预取缓存控制方法、装置、芯片以及计算机可读存储介质 |
| US12223169B2 (en) * | 2022-03-17 | 2025-02-11 | Lenovo Global Technology (United States) Inc. | Far memory direct caching |
| KR20240096090A (ko) | 2022-12-19 | 2024-06-26 | 에스케이하이닉스 주식회사 | 메모리 간의 접속 지연의 차이를 개선한 스위칭 컨트롤러, 스토리지 장치 및 컴퓨팅 시스템 |
| US12386508B2 (en) | 2023-05-09 | 2025-08-12 | Samsung Electronics Co., Ltd. | Systems and methods for cache management of a storage device |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH10320285A (ja) * | 1997-05-20 | 1998-12-04 | Toshiba Corp | キャッシュメモリ及び情報処理システム |
| WO2005091146A1 (ja) * | 2004-03-24 | 2005-09-29 | Matsushita Electric Industrial Co., Ltd. | キャッシュメモリ及びその制御方法 |
| US20110113199A1 (en) * | 2009-11-09 | 2011-05-12 | Tang Puqi P | Prefetch optimization in shared resource multi-core systems |
| JP2013542511A (ja) * | 2010-09-27 | 2013-11-21 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | 積極的プリフェッチングによるプロセッサキャッシュ汚染を低減するための方法及び装置 |
| US20140181402A1 (en) * | 2012-12-21 | 2014-06-26 | Advanced Micro Devices, Inc. | Selective cache memory write-back and replacement policies |
| JP2014115851A (ja) * | 2012-12-10 | 2014-06-26 | Canon Inc | データ処理装置及びその制御方法 |
Family Cites Families (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4731739A (en) | 1983-08-29 | 1988-03-15 | Amdahl Corporation | Eviction control apparatus |
| GB2348024B (en) | 1999-03-16 | 2003-06-25 | Ibm | Cache memory systems |
| US6925534B2 (en) | 2001-12-31 | 2005-08-02 | Intel Corporation | Distributed memory module cache prefetch |
| US6990557B2 (en) | 2002-06-04 | 2006-01-24 | Sandbridge Technologies, Inc. | Method and apparatus for multithreaded cache with cache eviction based on thread identifier |
| US7555633B1 (en) | 2003-11-03 | 2009-06-30 | Advanced Micro Devices, Inc. | Instruction cache prefetch based on trace cache eviction |
| US7130965B2 (en) | 2003-12-23 | 2006-10-31 | Intel Corporation | Apparatus and method for store address for store address prefetch and line locking |
| US7558920B2 (en) | 2004-06-30 | 2009-07-07 | Intel Corporation | Apparatus and method for partitioning a shared cache of a chip multi-processor |
| US7840761B2 (en) | 2005-04-01 | 2010-11-23 | Stmicroelectronics, Inc. | Apparatus and method for supporting execution of prefetch threads |
| GB0603552D0 (en) * | 2006-02-22 | 2006-04-05 | Advanced Risc Mach Ltd | Cache management within a data processing apparatus |
| US7493452B2 (en) | 2006-08-18 | 2009-02-17 | International Business Machines Corporation | Method to efficiently prefetch and batch compiler-assisted software cache accesses |
| GB0722707D0 (en) * | 2007-11-19 | 2007-12-27 | St Microelectronics Res & Dev | Cache memory |
| US8615633B2 (en) * | 2009-04-23 | 2013-12-24 | Empire Technology Development Llc | Multi-core processor cache coherence for reduced off-chip traffic |
| US20110072218A1 (en) | 2009-09-24 | 2011-03-24 | Srilatha Manne | Prefetch promotion mechanism to reduce cache pollution |
| US20140173203A1 (en) | 2012-12-18 | 2014-06-19 | Andrew T. Forsyth | Block Memory Engine |
| US9792212B2 (en) * | 2014-09-12 | 2017-10-17 | Intel Corporation | Virtual shared cache mechanism in a processing device |
| US9684603B2 (en) * | 2015-01-22 | 2017-06-20 | Empire Technology Development Llc | Memory initialization using cache state |
-
2015
- 2015-05-13 US US14/710,837 patent/US9971693B2/en active Active
- 2015-07-30 EP EP15892043.9A patent/EP3295314A4/en not_active Ceased
- 2015-07-30 JP JP2018511588A patent/JP6497831B2/ja active Active
- 2015-07-30 CN CN201580080376.0A patent/CN108139976B/zh active Active
- 2015-07-30 WO PCT/US2015/042792 patent/WO2016182588A1/en not_active Ceased
-
2018
- 2018-04-19 US US15/957,130 patent/US10613984B2/en active Active
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH10320285A (ja) * | 1997-05-20 | 1998-12-04 | Toshiba Corp | キャッシュメモリ及び情報処理システム |
| WO2005091146A1 (ja) * | 2004-03-24 | 2005-09-29 | Matsushita Electric Industrial Co., Ltd. | キャッシュメモリ及びその制御方法 |
| US20110113199A1 (en) * | 2009-11-09 | 2011-05-12 | Tang Puqi P | Prefetch optimization in shared resource multi-core systems |
| JP2013542511A (ja) * | 2010-09-27 | 2013-11-21 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | 積極的プリフェッチングによるプロセッサキャッシュ汚染を低減するための方法及び装置 |
| JP2014115851A (ja) * | 2012-12-10 | 2014-06-26 | Canon Inc | データ処理装置及びその制御方法 |
| US20140181402A1 (en) * | 2012-12-21 | 2014-06-26 | Advanced Micro Devices, Inc. | Selective cache memory write-back and replacement policies |
Also Published As
| Publication number | Publication date |
|---|---|
| US9971693B2 (en) | 2018-05-15 |
| EP3295314A4 (en) | 2019-01-09 |
| US10613984B2 (en) | 2020-04-07 |
| EP3295314A1 (en) | 2018-03-21 |
| WO2016182588A1 (en) | 2016-11-17 |
| US20180239706A1 (en) | 2018-08-23 |
| CN108139976B (zh) | 2020-10-27 |
| US20160335186A1 (en) | 2016-11-17 |
| CN108139976A (zh) | 2018-06-08 |
| JP6497831B2 (ja) | 2019-04-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6497831B2 (ja) | 追い出しを促すための先読みタグ | |
| US9122613B2 (en) | Prefetching of data and instructions in a data processing apparatus | |
| US9274959B2 (en) | Handling virtual memory address synonyms in a multi-level cache hierarchy structure | |
| US8943272B2 (en) | Variable cache line size management | |
| US9626294B2 (en) | Performance-driven cache line memory access | |
| TWI332149B (en) | Information processing apparatus and information processing method | |
| JP7232175B2 (ja) | キャッシュメモリのデータ置換方法及びプロセッサ | |
| EP1983439B1 (en) | Prefetching based on streaming hints | |
| CN104981787B (zh) | 具有母核和侦察核的芯片的数据预取 | |
| US20110314228A1 (en) | Maintaining Cache Coherence In A Multi-Node, Symmetric Multiprocessing Computer | |
| US8352646B2 (en) | Direct access to cache memory | |
| US20110314227A1 (en) | Horizontal Cache Persistence In A Multi-Compute Node, Symmetric Multiprocessing Computer | |
| US10552334B2 (en) | Systems and methods for acquiring data for loads at different access times from hierarchical sources using a load queue as a temporary storage buffer and completing the load early | |
| JP2005302034A (ja) | メモリを管理するためのシステムおよび方法 | |
| US9367466B2 (en) | Conditional prefetching | |
| TW201621671A (zh) | 在多記憶體存取代理器動態更新硬體預取特性為互斥或共享的裝置與方法 | |
| US8904100B2 (en) | Process identifier-based cache data transfer | |
| CN114341821A (zh) | 生产者至消费者的主动直接高速缓存传送 | |
| JP2018519614A5 (ja) | ||
| CN114281715B (zh) | 缓存合成预取方法、装置、处理器以及电子设备 | |
| WO2016153545A1 (en) | Main memory prefetch operation and multiple prefetch operations | |
| US9330005B2 (en) | Interface and method for inter-thread communication | |
| US9542318B2 (en) | Temporary cache memory eviction | |
| US20160321180A1 (en) | Add-On Memory Coherence Directory | |
| US9075732B2 (en) | Data caching method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180313 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20180712 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20180724 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20180712 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20180724 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180823 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181017 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181026 |
|
| A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20181026 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20181029 |
|
| AA91 | Notification that invitation to amend document was cancelled |
Free format text: JAPANESE INTERMEDIATE CODE: A971091 Effective date: 20190205 |
|
| A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20190206 |
|
| 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: 20190208 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190311 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6497831 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 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |