JP2015519654A5 - - Google Patents

Download PDF

Info

Publication number
JP2015519654A5
JP2015519654A5 JP2015511642A JP2015511642A JP2015519654A5 JP 2015519654 A5 JP2015519654 A5 JP 2015519654A5 JP 2015511642 A JP2015511642 A JP 2015511642A JP 2015511642 A JP2015511642 A JP 2015511642A JP 2015519654 A5 JP2015519654 A5 JP 2015519654A5
Authority
JP
Japan
Prior art keywords
cache
partition
thread
attribute
allocation
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
Application number
JP2015511642A
Other languages
English (en)
Other versions
JP2015519654A (ja
JP6125617B2 (ja
Filing date
Publication date
Priority claimed from US13/466,359 external-priority patent/US9824013B2/en
Application filed filed Critical
Publication of JP2015519654A publication Critical patent/JP2015519654A/ja
Publication of JP2015519654A5 publication Critical patent/JP2015519654A5/ja
Application granted granted Critical
Publication of JP6125617B2 publication Critical patent/JP6125617B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (13)

  1. マルチスレッドプロセッサの区分された共有キャッシュ(104)を更新する方法であって、
    前記キャッシュに割り当てられるべき処理スレッドに関連付けられたキャッシュエントリの物理アドレスを受け取るステップ(402)と、
    前記アドレスに関連付けられた前記処理スレッド内のデータ属性を判断するステップ(404)と、
    複数のスレッド固有の構成レジスタから、前記処理スレッドに対応するスレッド固有の構成レジスタを選択するステップと、
    区分レジスタに基づいて、キャッシュ区分を判断するステップ(408)と、
    前記選択された構成レジスタに保持された値、および前記キャッシュ区分に基づいて、前記キャッシュエントリを前記キャッシュに割り当てるステップ(410)と
    を含み
    前記値が、前記データ属性に基づくキャッシュ割当て、前記区分されたキャッシュのメイン部分へのキャッシュ割当て、および前記区分されたキャッシュの予備部分へのキャッシュ割当てのうちの1つを示す、方法。
  2. 前記データ属性がページ属性である、請求項1に記載の方法。
  3. 前記データ属性が、ストリーミングデータ、ローカライズされたデータ、マルチユースデータ、共有、または非共有のうちの1つを示す、請求項1に記載の方法。
  4. 前記キャッシュ区分がメイン部分および予備部分を含む、請求項1に記載の方法。
  5. 前記キャッシュ区分が静的区分に基づく、請求項1に記載の方法。
  6. 前記キャッシュ区分が前記属性に基づく動的区分である、請求項1に記載の方法。
  7. 前記アドレスに関連付けられた前記属性を判断するためのメモリ管理ユニット(MMU)を構成するステップをさらに含む、請求項1に記載の方法。
  8. 前記属性に基づくキャッシュ割当て情報を用いて前記構成レジスタを設定するように前記MMUを構成するステップをさらに含む、請求項7に記載の方法。
  9. 区分レジスタを設定するように前記MMUを構成するステップと、前記区分レジスタに基づいて、前記キャッシュ区分を判断するステップとをさらに含む、請求項7に記載の方法。
  10. 前記属性に基づくキャッシュ割当てが、前記判断されたキャッシュ区分をオーバーライドするステップを含む、請求項1に記載の方法。
  11. 区分された共有キャッシュ(104)と、
    処理スレッド(T1)と、
    前記キャッシュに割り当てられるべき前記処理スレッドに関連付けられたキャッシュエントリの物理アドレスに関連付けられた前記処理スレッド内のデータ属性を判断するためのメモリ管理ユニット(110)と、
    複数のスレッド固有の構成レジスタ(CP 300_0)から、前記処理スレッドに対応するスレッド固有の構成レジスタを選択するための論理手段と、
    前記キャッシュを2つ以上の部分に区分するための区分情報を含む区分レジスタ(DP 310)と、
    前記処理スレッドに対応する前記構成レジスタに保持された値、および前記区分レジスタに基づいて、前記キャッシュエントリを前記キャッシュの前記部分のうちの1つに割り当てるための論理手段(312、308、314)と
    を含み
    前記値が、前記データ属性に基づくキャッシュ割当て、前記区分されたキャッシュのメイン部分へのキャッシュ割当て、および前記区分されたキャッシュの予備部分へのキャッシュ割当てのうちの1つを示す、を含むマルチスレッド処理システム(100)。
  12. 請求項1から10のいずれか一項に記載の方法を実施するための手段を含む装置。
  13. 請求項1から10のいずれか一項に記載の方法をコンピュータまたはプロセッサに実行させるための少なくとも1つの命令を含む、コンピュータプログラム。
JP2015511642A 2012-05-08 2013-05-08 マルチスレッドプロセッサ内の区分された共有キャッシュにおけるスレッド単位のキャッシュライン割当て機構 Active JP6125617B2 (ja)

Applications Claiming Priority (3)

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

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2017067172A Division JP6279787B2 (ja) 2012-05-08 2017-03-30 マルチスレッドプロセッサ内の区分された共有キャッシュにおけるスレッド単位のキャッシュライン割当て機構

Publications (3)

Publication Number Publication Date
JP2015519654A JP2015519654A (ja) 2015-07-09
JP2015519654A5 true JP2015519654A5 (ja) 2016-06-09
JP6125617B2 JP6125617B2 (ja) 2017-05-10

Family

ID=48446688

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2015511642A Active JP6125617B2 (ja) 2012-05-08 2013-05-08 マルチスレッドプロセッサ内の区分された共有キャッシュにおけるスレッド単位のキャッシュライン割当て機構
JP2017067172A Expired - Fee Related JP6279787B2 (ja) 2012-05-08 2017-03-30 マルチスレッドプロセッサ内の区分された共有キャッシュにおけるスレッド単位のキャッシュライン割当て機構

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2017067172A Expired - Fee Related JP6279787B2 (ja) 2012-05-08 2017-03-30 マルチスレッドプロセッサ内の区分された共有キャッシュにおけるスレッド単位のキャッシュライン割当て機構

Country Status (5)

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

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
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
JP6218971B2 (ja) 2014-12-14 2017-10-25 ヴィア アライアンス セミコンダクター カンパニー リミテッド アドレス・タグ・ビットに基づく動的キャッシュ置換ウェイ選択
US9798668B2 (en) * 2014-12-14 2017-10-24 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 the 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 삼성전자주식회사 프로세싱 장치 및 이의 동작 방법과 전자 장치

Family Cites Families (25)

* 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
DE69826539D1 (de) 1997-01-30 2004-11-04 Sgs Thomson Microelectronics Cachespeichersystem
GB9701960D0 (en) 1997-01-30 1997-03-19 Sgs Thomson Microelectronics 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
US6223256B1 (en) * 1997-07-22 2001-04-24 Hewlett-Packard Company Computer cache memory with classes and dynamic selection of replacement algorithms
US6205519B1 (en) * 1998-05-27 2001-03-20 Hewlett Packard Company Cache management for a multi-threaded processor
GB9901933D0 (en) 1999-01-28 1999-03-17 Univ Bristol Cache memory
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
CN101286138A (zh) 2008-06-03 2008-10-15 浙江大学 基于数据划分的多线程共享多核处理器二级缓存的方法
US8250332B2 (en) * 2009-06-11 2012-08-21 Qualcomm Incorporated Partitioned replacement for cache memory
CN101609432B (zh) 2009-07-13 2011-04-13 中国科学院计算技术研究所 共享缓存管理系统及方法
US9952977B2 (en) * 2009-09-25 2018-04-24 Nvidia Corporation Cache operations and policies for a multi-threaded client

Similar Documents

Publication Publication Date Title
JP2015519654A5 (ja)
JP6903187B2 (ja) タイミングを中断させるモードにおけるソフトウェアの後方互換性テスト
US9965392B2 (en) Managing coherent memory between an accelerated processing device and a central processing unit
CN107636625B (zh) 用于共享系统高速缓存的虚拟化控制的方法和装置
US10162765B2 (en) Routing direct memory access requests in a virtualized computing environment
JP2014526729A5 (ja)
US10089238B2 (en) Method and apparatus for a shared cache with dynamic partitioning
US9612970B2 (en) Method and apparatus for flexible cache partitioning by sets and ways into component caches
JP2017502435A5 (ja)
US20140244891A1 (en) Providing Dynamic Topology Information in Virtualized Computing Environments
JP2017526996A5 (ja)
JP2015524597A5 (ja)
JP2015022553A5 (ja)
JP6622715B2 (ja) 共有ハードウェアリソースを使用したクラスタプロセッサコアにおけるハードウェアスレッドの動的負荷分散、ならびに関連する回路、方法、およびコンピュータ可読媒体
JP2016517992A5 (ja)
US20160147551A1 (en) Paravirtualized access for device assignment by bar extension
US9940167B2 (en) Identifying memory devices for swapping virtual machine memory pages
WO2014170791A3 (en) Logical region allocation with immediate availability
JP2015534169A5 (ja)
US10365947B2 (en) Multi-core processor including a master core performing tasks involving operating system kernel-related features on behalf of slave cores
US9996494B2 (en) Asynchronous mapping of hot-plugged device associated with virtual machine
CN105874439A (zh) 不同计算单元共享内存池的内存池管理方法和相关的计算机可读介质和内存池管理装置
CN103874988A (zh) 对高速缓存进行可编程分区
US11226819B2 (en) Selective prefetching in multithreaded processing units
WO2016041156A1 (zh) Cpu调度的方法和装置