CN109196487B - 一种在处理系统中预取数据的方法和系统 - Google Patents

一种在处理系统中预取数据的方法和系统 Download PDF

Info

Publication number
CN109196487B
CN109196487B CN201680086074.9A CN201680086074A CN109196487B CN 109196487 B CN109196487 B CN 109196487B CN 201680086074 A CN201680086074 A CN 201680086074A CN 109196487 B CN109196487 B CN 109196487B
Authority
CN
China
Prior art keywords
cache
demand
access
thread
cache line
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
Application number
CN201680086074.9A
Other languages
English (en)
Chinese (zh)
Other versions
CN109196487A (zh
Inventor
威廉·埃文·琼斯三世
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of CN109196487A publication Critical patent/CN109196487A/zh
Application granted granted Critical
Publication of CN109196487B publication Critical patent/CN109196487B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0842Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1021Hit rate improvement
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/50Control mechanisms for virtual memory, cache or TLB
    • G06F2212/502Control mechanisms for virtual memory, cache or TLB using adaptive policy
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/6026Prefetching 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)
CN201680086074.9A 2016-06-13 2016-09-15 一种在处理系统中预取数据的方法和系统 Active CN109196487B (zh)

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
CN109196487A CN109196487A (zh) 2019-01-11
CN109196487B true CN109196487B (zh) 2020-07-14

Family

ID=60572679

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680086074.9A Active CN109196487B (zh) 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)

* Cited by examiner, † Cited by third party
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 주식회사 블루타일랩 영상 처리 초기 지연 방지를 위한 지능형 웜업 시스템 및 방법

Family Cites Families (14)

* Cited by examiner, † Cited by third party
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
US8583894B2 (en) 2010-09-09 2013-11-12 Advanced Micro Devices Hybrid prefetch method and apparatus
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

Also Published As

Publication number Publication date
US20170357587A1 (en) 2017-12-14
WO2017218025A1 (en) 2017-12-21
US10073785B2 (en) 2018-09-11
KR102464788B1 (ko) 2022-11-08
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
CN109196487B (zh) 一种在处理系统中预取数据的方法和系统
US10353819B2 (en) Next line prefetchers employing initial high prefetch prediction confidence states for throttling next line prefetches in a processor-based system
US10831494B2 (en) Event triggered programmable prefetcher
CN105378684B (zh) 用于处理器的基于访问映射-图案匹配的预取单元
US9116815B2 (en) Data cache prefetch throttle
US9280474B2 (en) Adaptive data prefetching
CN111052095B (zh) 使用动态预取深度的多行数据预取
US7506105B2 (en) Prefetching using hashed program counter
US8683136B2 (en) Apparatus and method for improving data prefetching efficiency using history based prefetching
EP3676713B1 (en) Utilization-based throttling of hardware prefetchers
US9348753B2 (en) Controlling prefetch aggressiveness based on thrash events
US20120072667A1 (en) Variable line size prefetcher for multiple memory requestors
US9489203B2 (en) Pre-fetching instructions using predicted branch target addresses
US8856451B2 (en) Method and apparatus for adapting aggressiveness of a pre-fetcher
US9483406B2 (en) Communicating prefetchers that throttle one another
KR20150043472A (ko) 데이터 캐시 프리페치 힌트들
JP7308745B2 (ja) データキャッシュ領域プリフェッチャ
US20160034400A1 (en) Data prefetch ramp implemenation based on memory utilization
CN105700856A (zh) 根据记忆体存取类型的效益并配合积极层级的预取
US20060248280A1 (en) Prefetch address generation implementing multiple confidence levels
EP3258381B1 (en) Up/down prefetcher
Tishuk et al. Adaptive Regular Pattern Prefetcher for L1 Data Cache for Miroprocessors with RISC-V ISA.
CN120821561A (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
GR01 Patent grant
GR01 Patent grant