KR102464788B1 - 업/다운 프리페쳐 - Google Patents
업/다운 프리페쳐 Download PDFInfo
- Publication number
- KR102464788B1 KR102464788B1 KR1020187035453A KR20187035453A KR102464788B1 KR 102464788 B1 KR102464788 B1 KR 102464788B1 KR 1020187035453 A KR1020187035453 A KR 1020187035453A KR 20187035453 A KR20187035453 A KR 20187035453A KR 102464788 B1 KR102464788 B1 KR 102464788B1
- Authority
- KR
- South Korea
- Prior art keywords
- cache
- cacheline
- demand
- thread
- hit
- 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
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/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/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/0842—Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
-
- 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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1021—Hit rate 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/50—Control mechanisms for virtual memory, cache or TLB
- G06F2212/502—Control mechanisms for virtual memory, cache or TLB using adaptive policy
-
- 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
- G06F2212/6026—Prefetching based on access pattern detection, e.g. stride based prefetch
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 |
|---|---|---|---|
| US15/180,806 US10073785B2 (en) | 2016-06-13 | 2016-06-13 | Up/down prefetcher |
| US15/180,806 | 2016-06-13 | ||
| PCT/US2016/051850 WO2017218025A1 (en) | 2016-06-13 | 2016-09-15 | Up/down prefetcher |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20190008274A KR20190008274A (ko) | 2019-01-23 |
| KR102464788B1 true KR102464788B1 (ko) | 2022-11-08 |
Family
ID=60572679
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020187035453A Active KR102464788B1 (ko) | 2016-06-13 | 2016-09-15 | 업/다운 프리페쳐 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US10073785B2 (enExample) |
| JP (1) | JP6701380B2 (enExample) |
| KR (1) | KR102464788B1 (enExample) |
| CN (1) | CN109196487B (enExample) |
| WO (1) | WO2017218025A1 (enExample) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6627629B2 (ja) * | 2016-04-14 | 2020-01-08 | 富士通株式会社 | 演算処理装置、および演算処理装置の制御方法 |
| WO2019127487A1 (zh) | 2017-12-29 | 2019-07-04 | 华为技术有限公司 | 一种数据预取方法、装置和存储设备 |
| US10963249B2 (en) * | 2018-11-02 | 2021-03-30 | International Business Machines Corporation | Processor prefetcher mode governor for switching between prefetch modes |
| US20210182214A1 (en) * | 2019-12-17 | 2021-06-17 | Advanced Micro Devices, Inc. | Prefetch level demotion |
| CN114625672A (zh) * | 2020-12-11 | 2022-06-14 | 超威半导体(上海)有限公司 | 用于快速数据访问的统一高速缓存系统 |
| KR102874947B1 (ko) * | 2025-05-23 | 2025-10-23 | 주식회사 블루타일랩 | 영상 처리 초기 지연 방지를 위한 지능형 웜업 시스템 및 방법 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20120066455A1 (en) * | 2010-09-09 | 2012-03-15 | Swamy Punyamurtula | Hybrid prefetch method and apparatus |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6484239B1 (en) | 1997-12-29 | 2002-11-19 | Intel Corporation | Prefetch queue |
| US6275918B1 (en) | 1999-03-16 | 2001-08-14 | International Business Machines Corporation | Obtaining load target operand pre-fetch address from history table information upon incremented number of access indicator threshold |
| US6643743B1 (en) * | 2000-03-31 | 2003-11-04 | Intel Corporation | Stream-down prefetching cache |
| US6907520B2 (en) | 2001-01-11 | 2005-06-14 | Sun Microsystems, Inc. | Threshold-based load address prediction and new thread identification in a multithreaded microprocessor |
| US7238218B2 (en) * | 2004-04-06 | 2007-07-03 | International Business Machines Corporation | Memory prefetch method and system |
| US20070239940A1 (en) * | 2006-03-31 | 2007-10-11 | Doshi Kshitij A | Adaptive prefetching |
| JP2008102745A (ja) * | 2006-10-19 | 2008-05-01 | Toshiba Corp | 命令キャッシュメモリのプリフェッチ機構 |
| US8914617B2 (en) * | 2009-12-26 | 2014-12-16 | Intel Corporation | Tracking mechanism coupled to retirement in reorder buffer for indicating sharing logical registers of physical register in record indexed by logical register |
| US8762649B2 (en) | 2010-03-29 | 2014-06-24 | Via Technologies, Inc. | Bounding box prefetcher |
| US8291172B2 (en) * | 2010-04-27 | 2012-10-16 | Via Technologies, Inc. | Multi-modal data prefetcher |
| US8909866B2 (en) * | 2012-11-06 | 2014-12-09 | Advanced Micro Devices, Inc. | Prefetching to a cache based on buffer fullness |
| CN103226521B (zh) * | 2013-04-18 | 2016-03-02 | 浙江大学 | 多模式数据预取装置及其管理方法 |
| GB2515076B (en) | 2013-06-13 | 2020-07-15 | Advanced Risc Mach Ltd | A data processing apparatus and method for handling retrieval of instructions from an instruction cache |
-
2016
- 2016-06-13 US US15/180,806 patent/US10073785B2/en active Active
- 2016-09-15 JP JP2018555743A patent/JP6701380B2/ja active Active
- 2016-09-15 CN CN201680086074.9A patent/CN109196487B/zh active Active
- 2016-09-15 KR KR1020187035453A patent/KR102464788B1/ko active Active
- 2016-09-15 WO PCT/US2016/051850 patent/WO2017218025A1/en not_active Ceased
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20120066455A1 (en) * | 2010-09-09 | 2012-03-15 | Swamy Punyamurtula | Hybrid prefetch method and apparatus |
Also Published As
| Publication number | Publication date |
|---|---|
| US20170357587A1 (en) | 2017-12-14 |
| WO2017218025A1 (en) | 2017-12-21 |
| US10073785B2 (en) | 2018-09-11 |
| CN109196487B (zh) | 2020-07-14 |
| JP6701380B2 (ja) | 2020-05-27 |
| JP2019521408A (ja) | 2019-07-25 |
| KR20190008274A (ko) | 2019-01-23 |
| CN109196487A (zh) | 2019-01-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10831494B2 (en) | Event triggered programmable prefetcher | |
| KR102464788B1 (ko) | 업/다운 프리페쳐 | |
| US9208096B2 (en) | Cache pre-fetching responsive to data availability | |
| TWI519955B (zh) | 預取單元、資料預取方法以及電腦程式產品 | |
| CN105378684B (zh) | 用于处理器的基于访问映射-图案匹配的预取单元 | |
| US9213640B2 (en) | Promoting transactions hitting critical beat of cache line load requests | |
| TWI780217B (zh) | 硬件預取器之基於利用率節流 | |
| US20080320228A1 (en) | Method and apparatus for efficient replacement algorithm for pre-fetcher oriented data cache | |
| KR20150043472A (ko) | 데이터 캐시 프리페치 힌트들 | |
| US9483406B2 (en) | Communicating prefetchers that throttle one another | |
| US20170046278A1 (en) | Method and apparatus for updating replacement policy information for a fully associative buffer cache | |
| CN106569961A (zh) | 一种基于访存地址连续性的cache模块及其访存方法 | |
| US11379372B1 (en) | Managing prefetch lookahead distance based on memory access latency | |
| US11907722B2 (en) | Methods and apparatus for storing prefetch metadata | |
| EP3258381B1 (en) | Up/down prefetcher | |
| US11663132B2 (en) | Prefetching | |
| US8484423B2 (en) | Method and apparatus for controlling cache using transaction flags | |
| US20240211259A1 (en) | Prefetching with saturation control | |
| Wang et al. | Computer architecture | |
| Honarmand | Memory Prefetching | |
| US20160335184A1 (en) | Method and Apparatus for History-Based Snooping of Last Level Caches | |
| CN206805520U (zh) | 一种基于访存地址连续性的cache模块 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0105 | International application |
Patent event date: 20181206 Patent event code: PA01051R01D Comment text: International Patent Application |
|
| PG1501 | Laying open of application | ||
| A201 | Request for examination | ||
| A302 | Request for accelerated examination | ||
| PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20210915 Comment text: Request for Examination of Application |
|
| PA0302 | Request for accelerated examination |
Patent event date: 20210915 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20220131 Patent event code: PE09021S01D |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20220820 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20221103 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20221104 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration |