JP2019502996A5 - - Google Patents

Download PDF

Info

Publication number
JP2019502996A5
JP2019502996A5 JP2018531516A JP2018531516A JP2019502996A5 JP 2019502996 A5 JP2019502996 A5 JP 2019502996A5 JP 2018531516 A JP2018531516 A JP 2018531516A JP 2018531516 A JP2018531516 A JP 2018531516A JP 2019502996 A5 JP2019502996 A5 JP 2019502996A5
Authority
JP
Japan
Prior art keywords
cache
logical cache
logical
core
response
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
JP2018531516A
Other languages
English (en)
Other versions
JP6730434B2 (ja
JP2019502996A (ja
Filing date
Publication date
Priority claimed from US14/973,448 external-priority patent/US10255190B2/en
Application filed filed Critical
Publication of JP2019502996A publication Critical patent/JP2019502996A/ja
Publication of JP2019502996A5 publication Critical patent/JP2019502996A5/ja
Application granted granted Critical
Publication of JP6730434B2 publication Critical patent/JP6730434B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (19)

  1. 第1コアに接続された第1物理キャッシュと、
    第2コアに接続された第2物理キャッシュと、
    コントロールユニットと、を備え、
    前記コントロールユニットは、
    前記第1物理キャッシュを第1論理キャッシュ第2論理キャッシュの第1部分とに分割すること
    前記第2物理キャッシュを第3論理キャッシュと前記第2論理キャッシュの第2部分とに分割することであって、前記第1論理キャッシュ及び前記第3論理キャッシュはキャッシュ階層の第1レベルを表し、前記第2論理キャッシュは前記キャッシュ階層の第2レベルを表し、前記第1論理キャッシュ及び前記第2論理キャッシュの各々は高いレベルのメモリから取得されたデータを記憶するように構成されている、ことと、
    前記第2論理キャッシュの第1ウェイを前記第1論理キャッシュに再割り当てすることと、
    前記第2論理キャッシュの前記第1ウェイに記憶した第1キャッシュラインを識別することと、
    前記第1ウェイを前記第2論理キャッシュから前記第1論理キャッシュに再割り当てすることに応じて、前記第1キャッシュラインを無効化することと、
    を行うように構成されている、
    プロセッサ。
  2. 前記第1論理キャッシュは前記第1コアの専用キャッシュであり、
    前記第3論理キャッシュは前記第2コアの専用キャッシュであり、
    前記第2論理キャッシュは前記第1コア及び前記第2コアの両方によって共有されている、請求項1に記載のプロセッサ。
  3. 前記コントロールユニットは、
    アドレスを含む要求を受信したことに応じて、前記第1論理キャッシュにおいてルックアップを実行することと、
    前記第1論理キャッシュにおいて前記要求がミスしたと判別した場合に、
    前記アドレスが前記第2論理キャッシュの前記第1部分を選択することを判別したことに応じて、前記第2論理キャッシュの前記第1部分においてルックアップを実行することと、
    前記アドレスが前記第2論理キャッシュの前記第2部分を選択することを判別したことに応じて、前記第2論理キャッシュの前記第2部分においてルックアップを実行することと、
    を行うように構成されている、請求項1に記載のプロセッサ。
  4. 前記プロセッサは、1つ以上のキャッシュのキャッシュヒット率及び前記第1論理キャッシュと前記第3論理キャッシュとの間のキャッシュデータのマイグレーション率のうち1つ以上に応じて、前記第1論理キャッシュ、前記第2論理キャッシュ及び前記第3論理キャッシュのうち1つ以上のサイズを変更するように構成されている、請求項1に記載のプロセッサ。
  5. 前記プロセッサは、
    第1メモリアドレスにおいてミスを検出したことに応じて、前記第2論理キャッシュ内の元の位置をターゲットとする第1要求を送信することと
    前記第1要求をメモリに送信した後であって第1フィルデータをメモリから受信する前に、前記元の位置を前記第2論理キャッシュから前記第1論理キャッシュに再割り当てすることであって、前記第1フィルデータは前記第1要求に対応している、ことと、
    記第1フィルデータをメモリから受信することと、
    前記第1メモリアドレスが前記第2論理キャッシュの前記元の位置とは異なる前記第2論理キャッシュ内の新たな位置に再マッピングされたことを判別することと
    前記第1フィルデータを前記第2論理キャッシュの前記新たな位置記憶することと、
    を行うように構成されている、請求項1に記載のプロセッサ。
  6. 前記プロセッサは、第1アプリケーションの実行から第2アプリケーションの実行への切り替えに応じて、前記第1論理キャッシュの記憶容量を減らし、前記第2論理キャッシュの記憶容量を増加させるように構成されている、請求項1に記載のプロセッサ。
  7. 第1コアに接続された第1物理キャッシュを第1論理キャッシュ第2論理キャッシュの第1部分とに分割することと、
    第2コアに接続された第2物理キャッシュを第3論理キャッシュと前記第2論理キャッシュの第2部分とに分割することであって、前記第1論理キャッシュ及び前記第3論理キャッシュはキャッシュ階層の第1レベルを表し、前記第2論理キャッシュは前記キャッシュ階層の第2レベルを表し、前記第1論理キャッシュ及び前記第2論理キャッシュの各々は高いレベルのメモリから取得されたデータを記憶するように構成されている、ことと、
    前記第2論理キャッシュの第1ウェイを前記第1論理キャッシュに再割り当てすることと、
    前記第2論理キャッシュの前記第1ウェイに記憶した第1キャッシュラインを識別することと、
    前記第1ウェイを前記第2論理キャッシュから前記第1論理キャッシュに再割り当てすることに応じて、前記第1キャッシュラインを無効化することと、を含む、
    方法。
  8. 前記第1論理キャッシュは前記第1コアの専用キャッシュであり、
    前記第3論理キャッシュは前記第2コアの専用キャッシュであり、
    前記第2論理キャッシュは前記第1コア及び前記第2コアの両方によって共有されている、請求項に記載の方法。
  9. アドレスを含む要求を受信したことに応じて、前記第1論理キャッシュにおいてルックアップを実行することと、
    前記第1論理キャッシュにおいて前記要求がミスしたと判別した場合に、
    前記アドレスが前記第2論理キャッシュの前記第1部分を選択することを判別したことに応じて、前記第2論理キャッシュの前記第1部分においてルックアップを実行することと、
    前記アドレスが前記第2論理キャッシュの前記第2部分を選択することを判別したことに応じて、前記第2論理キャッシュの前記第2部分においてルックアップを実行することと、を含む、請求項に記載の方法。
  10. 1つ以上のキャッシュのキャッシュヒット率及び前記第1論理キャッシュと前記第3論理キャッシュとの間のキャッシュデータのマイグレーション率のうち1つ以上に応じて、前記第1論理キャッシュ、前記第2論理キャッシュ及び前記第3論理キャッシュのうち1つ以上のサイズを変更することを含む、請求項に記載の方法。
  11. 第1メモリアドレスにおいてミスを検出したことに応じて、前記第2論理キャッシュ内の元の位置をターゲットとする第1要求を送信することと
    前記第1要求をメモリに送信した後であって第1フィルデータをメモリから受信する前に、前記元の位置を前記第2論理キャッシュから前記第1論理キャッシュに再割り当てすることであって、前記第1フィルデータは前記第1要求に対応している、ことと、
    記第1フィルデータをメモリから受信することと、
    前記第1メモリアドレスが前記第2論理キャッシュの前記元の位置とは異なる前記第2論理キャッシュ内の新たな位置に再マッピングされたことを判別することと
    前記第1フィルデータを前記第2論理キャッシュの前記新たな位置記憶することと、を含む、請求項に記載の方法。
  12. 第1アプリケーションの実行から第2アプリケーションの実行への切り替えに応じて、前記第1論理キャッシュの記憶容量を減らし、前記第2論理キャッシュの記憶容量を増加させることを含む、請求項に記載の方法。
  13. メモリと、
    第1コアに接続された第1物理キャッシュと、第2コアに接続された第2物理キャッシュと、びコントロールユニットと、を含むプロセッサと、を備え、
    前記コントロールユニットは、
    前記第1物理キャッシュを第1論理キャッシュ第2論理キャッシュの第1部分とに分割すること
    前記第2物理キャッシュを第3論理キャッシュと前記第2論理キャッシュの第2部分とに分割することであって、前記第1論理キャッシュ及び前記第3論理キャッシュはキャッシュ階層の第1レベルを表し、前記第2論理キャッシュは前記キャッシュ階層の第2レベルを表し、前記第1論理キャッシュ及び前記第2論理キャッシュの各々は高いレベルのメモリから取得されたデータを記憶するように構成されている、ことと、
    前記第2論理キャッシュの第1ウェイを前記第1論理キャッシュに再割り当てすることと、
    前記第2論理キャッシュの前記第1ウェイに記憶した第1キャッシュラインを識別することと、
    前記第1ウェイを前記第2論理キャッシュから前記第1論理キャッシュに再割り当てすることに応じて、前記第1キャッシュラインを無効化することと、
    を行うように構成されている、
    システム。
  14. 前記第1論理キャッシュは前記第1コアの専用キャッシュであり、
    前記第3論理キャッシュは前記第2コアの専用キャッシュであり、
    前記第2論理キャッシュは前記第1コア及び前記第2コアの両方によって共有されている、請求項13に記載のシステム。
  15. 前記コントロールユニットは、
    アドレスを含む要求を受信したことに応じて、前記第1論理キャッシュにおいてルックアップを実行することと、
    前記第1論理キャッシュにおいて前記要求がミスしたと判別した場合に、
    前記アドレスが前記第2論理キャッシュの前記第1部分を選択することを判別したことに応じて、前記第2論理キャッシュの前記第1部分においてルックアップを実行することと、
    前記アドレスが前記第2論理キャッシュの前記第2部分を選択することを判別したことに応じて、前記第2論理キャッシュの前記第2部分においてルックアップを実行することと、
    を行うように構成されている、請求項13に記載のシステム。
  16. 前記プロセッサは、1つ以上のキャッシュのキャッシュヒット率及び前記第1論理キャッシュと前記第3論理キャッシュとの間のキャッシュデータのマイグレーション率のうち1つ以上に応じて、前記第1論理キャッシュ、前記第2論理キャッシュ及び前記第3論理キャッシュのうち1つ以上のサイズを変更するように構成されている、請求項13に記載のシステム。
  17. 前記プロセッサは、
    第1メモリアドレスにおいてミスを検出したことに応じて、前記第2論理キャッシュ内の元の位置をターゲットとする第1要求を送信することと
    前記第1要求をメモリに送信した後であって第1フィルデータをメモリから受信する前に、前記元の位置を前記第2論理キャッシュから前記第1論理キャッシュに再割り当てすることであって、前記第1フィルデータは前記第1要求に対応している、ことと、
    記第1フィルデータをメモリから受信することと、
    前記第1メモリアドレスが前記第2論理キャッシュの前記元の位置とは異なる前記第2論理キャッシュ内の新たな位置に再マッピングされたことを判別することと
    前記第1フィルデータを前記第2論理キャッシュの前記新たな位置記憶することと、
    を行うように構成されている、請求項13に記載のシステム。
  18. 前記プロセッサは、第1アプリケーションの実行から第2アプリケーションの実行への切り替えに応じて、前記第1論理キャッシュの記憶容量を減らし、前記第2論理キャッシュの記憶容量を増加させるように構成されている、請求項13に記載のシステム。
  19. 前記アドレスは、
    前記第1論理キャッシュの少なくとも一部を識別する1つ以上のビットと、
    前記第2論理キャッシュの第1部分及び前記第2論理キャッシュの第2部分のうち何れかを識別する1つ以上のビットと、を含む、請求項3に記載のプロセッサ。
JP2018531516A 2015-12-17 2016-09-20 ハイブリッドキャッシュ Active JP6730434B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/973,448 US10255190B2 (en) 2015-12-17 2015-12-17 Hybrid cache
US14/973,448 2015-12-17
PCT/US2016/052722 WO2017105575A1 (en) 2015-12-17 2016-09-20 Hybrid cache

Publications (3)

Publication Number Publication Date
JP2019502996A JP2019502996A (ja) 2019-01-31
JP2019502996A5 true JP2019502996A5 (ja) 2019-10-31
JP6730434B2 JP6730434B2 (ja) 2020-07-29

Family

ID=59057364

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018531516A Active JP6730434B2 (ja) 2015-12-17 2016-09-20 ハイブリッドキャッシュ

Country Status (6)

Country Link
US (1) US10255190B2 (ja)
EP (1) EP3391227A4 (ja)
JP (1) JP6730434B2 (ja)
KR (1) KR102414157B1 (ja)
CN (1) CN108431786B (ja)
WO (1) WO2017105575A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013048497A1 (en) * 2011-09-30 2013-04-04 Intel Corporation Apparatus and method for implementing a multi-level memory hierarchy
CN106095587B (zh) * 2016-06-24 2019-12-24 北京金山安全软件有限公司 应用程序的缓存扫描方法、装置及电子设备
US11397687B2 (en) * 2017-01-25 2022-07-26 Samsung Electronics Co., Ltd. Flash-integrated high bandwidth memory appliance
US11016665B2 (en) * 2018-01-23 2021-05-25 Seagate Technology Llc Event-based dynamic memory allocation in a data storage device
CN109117291A (zh) * 2018-08-27 2019-01-01 惠州Tcl移动通信有限公司 基于多核处理器的数据调度处理方法、装置和计算机设备
US10740234B2 (en) * 2018-09-04 2020-08-11 International Business Machines Corporation Virtual processor cache reuse
CN112148665B (zh) * 2019-06-28 2024-01-09 深圳市中兴微电子技术有限公司 缓存的分配方法及装置
US11372758B2 (en) * 2020-05-12 2022-06-28 Jackson State University Dynamic reconfigurable multi-level cache for multi-purpose and heterogeneous computing architectures
KR102612947B1 (ko) * 2021-03-31 2023-12-11 광운대학교 산학협력단 통합 l2 캐시-변환 색인 버퍼 메모리의 제어 방법 및 장치
CN113259177B (zh) * 2021-06-17 2021-10-15 国网江苏省电力有限公司信息通信分公司 虚拟网络切片的重构方法和装置
KR102514268B1 (ko) * 2021-07-14 2023-03-24 연세대학교 산학협력단 데이터 마이그레이션 정책 스위칭 방법 및 장치
US11841798B2 (en) * 2021-08-09 2023-12-12 Arm Limited Selective allocation of memory storage elements for operation according to a selected one of multiple cache functions
US11989142B2 (en) 2021-12-10 2024-05-21 Samsung Electronics Co., Ltd. Efficient and concurrent model execution
GB2622841A (en) * 2022-09-29 2024-04-03 Imagination Tech Ltd Distributed system level cache

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6324621B2 (en) * 1998-06-10 2001-11-27 International Business Machines Corporation Data caching with a partially compressed cache
US6792509B2 (en) 2001-04-19 2004-09-14 International Business Machines Corporation Partitioned cache of multiple logical levels with adaptive reconfiguration based on multiple criteria
US20030145170A1 (en) * 2002-01-31 2003-07-31 Kever Wayne D. Dynamically adjusted cache power supply to optimize for cache access or power consumption
US6868485B1 (en) 2002-09-27 2005-03-15 Advanced Micro Devices, Inc. Computer system with integrated directory and processor cache
US20040103251A1 (en) 2002-11-26 2004-05-27 Mitchell Alsup Microprocessor including a first level cache and a second level cache having different cache line sizes
US7643480B2 (en) * 2004-01-22 2010-01-05 Hain-Ching Liu Method and system for reliably and efficiently transporting data over a network
US7257678B2 (en) 2004-10-01 2007-08-14 Advanced Micro Devices, Inc. Dynamic reconfiguration of cache memory
US8037281B2 (en) * 2005-04-07 2011-10-11 Advanced Micro Devices, Inc. Miss-under-miss processing and cache flushing
US20060248287A1 (en) * 2005-04-29 2006-11-02 Ibm Corporation Methods and arrangements for reducing latency and snooping cost in non-uniform cache memory architectures
US7389402B2 (en) 2005-06-07 2008-06-17 Advanced Micro Devices, Inc. Microprocessor including a configurable translation lookaside buffer
US20070143546A1 (en) * 2005-12-21 2007-06-21 Intel Corporation Partitioned shared cache
US20080104323A1 (en) 2006-10-26 2008-05-01 Colglazier Daniel J Method for identifying, tracking, and storing hot cache lines in an smp environment
US8019946B2 (en) * 2008-07-31 2011-09-13 Samsung Electronics Co., Ltd. Method and system for securing instruction caches using cache line locking
US8990506B2 (en) * 2009-12-16 2015-03-24 Intel Corporation Replacing cache lines in a cache memory based at least in part on cache coherency state information
US8412971B2 (en) * 2010-05-11 2013-04-02 Advanced Micro Devices, Inc. Method and apparatus for cache control
US8788783B1 (en) * 2010-06-18 2014-07-22 Disney Enterprises, Inc. Dynamically tuning the size of a cache stored in a shared memory
US20120144123A1 (en) * 2010-12-01 2012-06-07 International Business Machines Corporation Read-ahead processing in networked client-server architecture
US8775737B2 (en) * 2010-12-02 2014-07-08 Microsoft Corporation Efficient cache management
US20120303897A1 (en) * 2011-05-28 2012-11-29 Sakthivel Komarasamy Pullagoundapatti Configurable set associative cache way architecture
WO2013101092A1 (en) * 2011-12-29 2013-07-04 Intel Corporation Data control using last accessor information
GB2509755B (en) * 2013-01-14 2015-07-08 Imagination Tech Ltd Partitioning a shared cache using masks associated with threads to avoiding thrashing
CN105027211B (zh) * 2013-01-31 2018-09-21 慧与发展有限责任合伙企业 自适应粒度行缓冲器高速缓存
US9336144B2 (en) * 2013-07-25 2016-05-10 Globalfoundries Inc. Three-dimensional processing system having multiple caches that can be partitioned, conjoined, and managed according to more than one set of rules and/or configurations
US9251081B2 (en) 2013-08-01 2016-02-02 Advanced Micro Devices, Inc. Management of caches
KR101480143B1 (ko) * 2013-08-02 2015-01-06 전남대학교산학협력단 멀티코어 프로세서의 캐쉬 교체 방법 및 그 방법에 의해 동작하는 멀티코어 프로세서
US9244724B2 (en) * 2013-08-15 2016-01-26 Globalfoundries Inc. Management of transactional memory access requests by a cache memory
CN105493053B (zh) 2013-08-29 2019-06-11 英派尔科技开发有限公司 多核处理器及更新多核处理器中的高速缓存的方法
US9208103B2 (en) * 2013-09-26 2015-12-08 Cavium, Inc. Translation bypass in multi-stage address translation
US20150205724A1 (en) 2014-01-20 2015-07-23 Honeywell International Inc. System and method of cache partitioning for processors with limited cached memory pools
US9710383B1 (en) * 2015-09-29 2017-07-18 EMC IP Holding Company LLC Caching techniques

Similar Documents

Publication Publication Date Title
JP2019502996A5 (ja)
JP6325243B2 (ja) 保持優先度に基づくキャッシュ置換ポリシー
JP2019512804A5 (ja)
CN105095116A (zh) 缓存替换的方法、缓存控制器和处理器
JP2017501504A5 (ja)
JP2011198133A (ja) メモリシステムおよびコントローラ
US10621097B2 (en) Application and processor guided memory prefetching
JP2017519286A5 (ja)
JP2014164769A5 (ja)
JP2014154166A5 (ja)
CN108694127A (zh) 用于在固态驱动器中实行高速缓存操作的装置、计算机程序产品和方法
US20170123979A1 (en) Systems, devices, and methods for handling partial cache misses
US20170269875A1 (en) Memory system and operating method thereof
US20170083444A1 (en) Configuring fast memory as cache for slow memory
JP2019128949A5 (ja)
US20170357596A1 (en) Dynamically adjustable inclusion bias for inclusive caches
US20170090754A1 (en) Mapping system selection for data storage device
CN108351836B (zh) 具有选择性储存的多级非易失性缓存
US10157148B2 (en) Semiconductor device configured to control a wear leveling operation and operating method thereof
CN106663057A (zh) 向非易失性存储器的写操作
KR20160071703A (ko) 데이터 저장 장치 및 그것의 동작 방법
WO2013162594A1 (en) Shielding a memory device
US11494306B2 (en) Managing data dependencies in a transfer pipeline of a hybrid dimm
JP6890131B2 (ja) ソリッドステート装置のための多重アドレスレジスタ用の装置および方法
CN109726147A (zh) 使用数据保护访问带内存储器的设备和方法