CN104272278B - 用于更新共享高速缓冲存储器的方法和多线程处理系统 - Google Patents

用于更新共享高速缓冲存储器的方法和多线程处理系统 Download PDF

Info

Publication number
CN104272278B
CN104272278B CN201380023546.2A CN201380023546A CN104272278B CN 104272278 B CN104272278 B CN 104272278B CN 201380023546 A CN201380023546 A CN 201380023546A CN 104272278 B CN104272278 B CN 104272278B
Authority
CN
China
Prior art keywords
cache memory
cache
thread
attribute
data
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.)
Expired - Fee Related
Application number
CN201380023546.2A
Other languages
English (en)
Chinese (zh)
Other versions
CN104272278A (zh
Inventor
克里斯托弗·爱德华·科布
阿贾伊·阿南特·英格尔
卢奇安·科德雷斯库
苏雷什·K·文库马汉提
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN104272278A publication Critical patent/CN104272278A/zh
Application granted granted Critical
Publication of CN104272278B publication Critical patent/CN104272278B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0846Cache with multiple tag or data arrays being simultaneously accessible
    • G06F12/0848Partitioned cache, e.g. separate instruction and operand caches
    • 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/0864Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing

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)
CN201380023546.2A 2012-05-08 2013-05-08 用于更新共享高速缓冲存储器的方法和多线程处理系统 Expired - Fee Related CN104272278B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/466,359 US9824013B2 (en) 2012-05-08 2012-05-08 Per thread cacheline allocation mechanism in shared partitioned caches in multi-threaded processors
US13/466,359 2012-05-08
PCT/US2013/040040 WO2013169836A1 (en) 2012-05-08 2013-05-08 Per thread cacheline allocation mechanism in shared partitioned caches in multi-threaded processors

Publications (2)

Publication Number Publication Date
CN104272278A CN104272278A (zh) 2015-01-07
CN104272278B true CN104272278B (zh) 2017-05-24

Family

ID=48446688

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380023546.2A Expired - Fee Related CN104272278B (zh) 2012-05-08 2013-05-08 用于更新共享高速缓冲存储器的方法和多线程处理系统

Country Status (5)

Country Link
US (1) US9824013B2 (https=)
EP (1) EP2847684A1 (https=)
JP (2) JP6125617B2 (https=)
CN (1) CN104272278B (https=)
WO (1) WO2013169836A1 (https=)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2651891B2 (ja) 1993-11-05 1997-09-10 株式会社日本開発コンサルタント 円形型金属性帯板張力付与装置
US10430190B2 (en) * 2012-06-07 2019-10-01 Micron Technology, Inc. Systems and methods for selectively controlling multithreaded execution of executable code segments
US10089238B2 (en) * 2014-07-17 2018-10-02 Qualcomm Incorporated Method and apparatus for a shared cache with dynamic partitioning
US9588893B2 (en) 2014-11-10 2017-03-07 International Business Machines Corporation Store cache for transactional memory
US9727239B2 (en) * 2014-11-13 2017-08-08 Samsung Electronics Co., Ltd. Electronic system with partitioning mechanism and method of operation thereof
US9678875B2 (en) 2014-11-25 2017-06-13 Qualcomm Incorporated Providing shared cache memory allocation control in shared cache memory systems
US10698827B2 (en) 2014-12-14 2020-06-30 Via Alliance Semiconductor Co., Ltd. Dynamic cache replacement way selection based on address tag bits
EP3055774B1 (en) 2014-12-14 2019-07-17 VIA Alliance Semiconductor Co., Ltd. Multi-mode set associative cache memory dynamically configurable to selectively allocate into all or a subset of its ways depending on the mode
WO2016097810A1 (en) * 2014-12-14 2016-06-23 Via Alliance Semiconductor Co., Ltd. Multi-mode set associative cache memory dynamically configurable to selectively select one or a plurality of its sets depending upon mode
EP3258382B1 (en) * 2016-06-14 2021-08-11 Arm Ltd A storage controller
US10678690B2 (en) 2017-08-29 2020-06-09 Qualcomm Incorporated Providing fine-grained quality of service (QoS) control using interpolation for partitioned resources in processor-based systems
GB201806997D0 (en) * 2018-04-30 2018-06-13 Univ Leuven Kath Configurable hardware device
CN112148665B (zh) * 2019-06-28 2024-01-09 深圳市中兴微电子技术有限公司 缓存的分配方法及装置
CN114726925B (zh) * 2020-12-21 2024-04-19 瑞昱半导体股份有限公司 具有存储器共享机制的无线通信装置及其存储器共享方法
KR20230075914A (ko) 2021-11-23 2023-05-31 삼성전자주식회사 프로세싱 장치 및 이의 동작 방법과 전자 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6223256B1 (en) * 1997-07-22 2001-04-24 Hewlett-Packard Company Computer cache memory with classes and dynamic selection of replacement algorithms
US6694407B1 (en) * 1999-01-28 2004-02-17 Univerisity Of Bristol Cache memory with data transfer control and method of operating same
CN101286138A (zh) * 2008-06-03 2008-10-15 浙江大学 基于数据划分的多线程共享多核处理器二级缓存的方法
CN101609432A (zh) * 2009-07-13 2009-12-23 中国科学院计算技术研究所 共享缓存管理系统及方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761720A (en) * 1996-03-15 1998-06-02 Rendition, Inc. Pixel engine pipeline processor data caching mechanism
GB9701960D0 (en) 1997-01-30 1997-03-19 Sgs Thomson Microelectronics A cache system
EP0856798B1 (en) 1997-01-30 2004-09-29 STMicroelectronics Limited A cache system
US6078994A (en) * 1997-05-30 2000-06-20 Oracle Corporation System for maintaining a shared cache in a multi-threaded computer environment
US6205519B1 (en) * 1998-05-27 2001-03-20 Hewlett Packard Company Cache management for a multi-threaded processor
US6493800B1 (en) * 1999-03-31 2002-12-10 International Business Machines Corporation Method and system for dynamically partitioning a shared cache
US6535905B1 (en) 1999-04-29 2003-03-18 Intel Corporation Method and apparatus for thread switching within a multithreaded processor
US6421761B1 (en) * 1999-11-09 2002-07-16 International Business Machines Corporation Partitioned cache and management method for selectively caching data by type
US6859862B1 (en) 2000-04-07 2005-02-22 Nintendo Co., Ltd. Method and apparatus for software management of on-chip cache
US6604174B1 (en) * 2000-11-10 2003-08-05 International Business Machines Corporation Performance based system and method for dynamic allocation of a unified multiport cache
JP2002342163A (ja) 2001-05-15 2002-11-29 Fujitsu Ltd マルチスレッドプロセッサ用キャッシュ制御方式
US6871264B2 (en) 2002-03-06 2005-03-22 Hewlett-Packard Development Company, L.P. System and method for dynamic processor core and cache partitioning on large-scale multithreaded, multiprocessor integrated circuits
US7039760B2 (en) 2003-04-28 2006-05-02 International Business Machines Corporation Programming means for dynamic specifications of cache management preferences
US7536692B2 (en) * 2003-11-06 2009-05-19 Intel Corporation Thread-based engine cache partitioning
JP4725181B2 (ja) * 2005-04-28 2011-07-13 アイシン・エィ・ダブリュ株式会社 ナビゲーションシステム及びキャッシュ管理方法
JP2007065743A (ja) 2005-08-29 2007-03-15 Sony Ericsson Mobilecommunications Japan Inc 携帯情報端末及びその携帯情報端末の記憶領域管理方法
US7895415B2 (en) * 2007-02-14 2011-02-22 Intel Corporation Cache sharing based thread control
US7725657B2 (en) * 2007-03-21 2010-05-25 Intel Corporation Dynamic quality of service (QoS) for a shared cache
US20090157968A1 (en) * 2007-12-12 2009-06-18 International Business Machines Corporation Cache Memory with Extended Set-associativity of Partner Sets
US8250332B2 (en) * 2009-06-11 2012-08-21 Qualcomm Incorporated Partitioned replacement for cache memory
US9952977B2 (en) * 2009-09-25 2018-04-24 Nvidia Corporation Cache operations and policies for a multi-threaded client

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6223256B1 (en) * 1997-07-22 2001-04-24 Hewlett-Packard Company Computer cache memory with classes and dynamic selection of replacement algorithms
US6694407B1 (en) * 1999-01-28 2004-02-17 Univerisity Of Bristol Cache memory with data transfer control and method of operating same
CN101286138A (zh) * 2008-06-03 2008-10-15 浙江大学 基于数据划分的多线程共享多核处理器二级缓存的方法
CN101609432A (zh) * 2009-07-13 2009-12-23 中国科学院计算技术研究所 共享缓存管理系统及方法

Also Published As

Publication number Publication date
JP6279787B2 (ja) 2018-02-14
JP2015519654A (ja) 2015-07-09
WO2013169836A1 (en) 2013-11-14
JP6125617B2 (ja) 2017-05-10
JP2017152009A (ja) 2017-08-31
US9824013B2 (en) 2017-11-21
EP2847684A1 (en) 2015-03-18
US20130304994A1 (en) 2013-11-14
CN104272278A (zh) 2015-01-07

Similar Documents

Publication Publication Date Title
CN104272278B (zh) 用于更新共享高速缓冲存储器的方法和多线程处理系统
US8250332B2 (en) Partitioned replacement for cache memory
JP6279508B2 (ja) 事前充填能力を有するメモリ管理ユニット
US9201796B2 (en) System cache with speculative read engine
US9767025B2 (en) Write-only dataless state for maintaining cache coherency
JP6960933B2 (ja) 実行許可に基づくキャッシュのライトアロケーション(Write−Allocation)
JP2019519843A (ja) 仮想ベクトルレジスタファイルを使用するシステム及び方法
US10185667B2 (en) Storage controller
US10152259B2 (en) System and method for allocating and deallocating an address range corresponding to a first and a second memory between processors
US9104583B2 (en) On demand allocation of cache buffer slots
CN112639749A (zh) 减少由于地址转换缺失而引起的管线暂缓的方法、装置和系统
US20090307459A1 (en) Selectively mark free frames as unused for cooperative memory over-commitment
CN102411543B (zh) 缓存地址的处理方法和装置
US20170046274A1 (en) Efficient utilization of memory gaps
US8762647B2 (en) Multicore processor system and multicore processor
US12277071B2 (en) Cache replacement policy optimization for producer-consumer flows
US20170345512A1 (en) Wear-limiting non-volatile memory
US20160246721A1 (en) Role based cache coherence bus traffic control
US20190332166A1 (en) Progressive power-up scheme for caches based on occupancy state

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170524