JP2010532904A - データプリフェッチスロットル - Google Patents
データプリフェッチスロットル Download PDFInfo
- Publication number
- JP2010532904A JP2010532904A JP2010516253A JP2010516253A JP2010532904A JP 2010532904 A JP2010532904 A JP 2010532904A JP 2010516253 A JP2010516253 A JP 2010516253A JP 2010516253 A JP2010516253 A JP 2010516253A JP 2010532904 A JP2010532904 A JP 2010532904A
- Authority
- JP
- Japan
- Prior art keywords
- data
- cache
- data cache
- prefetching
- prefetch
- 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
Links
- 238000000034 method Methods 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 16
- 230000007246 mechanism Effects 0.000 claims description 5
- 238000012545 processing Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 8
- 230000007704 transition Effects 0.000 description 8
- 238000001914 filtration Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000011109 contamination Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
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)
Abstract
Description
102 命令実行パイプライン
104 状態/制御レジスタ
106 データキャッシュ
108 キャッシュコントローラ
110 キャッシュメモリ
112 より高いレベルのメモリ
200 状態
202 状態
300 カウンタ制御回路
302 第1のカウンタ
304 第2のカウンタ
400 タグメモリ
402 データメモリ
404 プリフェッチフラグ、(プリフェッチ)インジケータ
500 レジスタセット
502 行識別子(ID)エントリ、(プリフェッチ)インジケータ
A 接続
B 接続
Claims (26)
- データキャッシュのためのデータプリフェッチングを制御する方法であって、
前記データキャッシュのためのプリフェッチヒットをトラッキングし、プリフェッチヒットの前記トラッキングに基づいて前記データキャッシュのためのデータプリフェッチングをディセーブルにするステップと、
前記データキャッシュのための全ヒットをトラッキングし、全ヒットの前記トラッキングに基づいて前記データキャッシュのためのデータプリフェッチングをイネーブルにするステップと
を備える方法。 - 前記データキャッシュのためのデータプリフェッチングをイネーブルにするステップおよびディセーブルにするステップに関連して前記プリフェッチヒットおよび前記全ヒットの一方または両方をトラッキングするために使用されるトラッキング機構をリセットすることによってイネーブル/ディセーブル制御ヒステリシスを実施するステップをさらに備える請求項1に記載の方法。
- 前記データキャッシュのためのプリフェッチヒットをトラッキングするステップは、プリフェッチされたデータ行に関係するデータキャッシュ上のヒットの割合を反映するプリフェッチヒット率をトラッキングするステップを備え、前記データキャッシュのための全ヒットをトラッキングするステップは、前記データキャッシュのための全ヒット率をトラッキングするステップを備える請求項1に記載の方法。
- 前記プリフェッチヒット率をトラッキングするステップは、前記データキャッシュ内のデータ行の全数に関して前記データキャッシュ内のプリフェッチされたデータ行の数をトラッキングするステップを備える請求項3に記載の方法。
- 前記データキャッシュ内のどのデータ行がプリフェッチされたデータ行であるかを示すインジケータを格納するステップと、前記格納されているインジケータを使用して前記プリフェッチヒット率をトラッキングするために前記データキャッシュ上のプリフェッチヒットを検出するステップとをさらに備える請求項3に記載の方法。
- 前記プリフェッチヒット率をトラッキングするステップは、プリフェッチされたデータ行上のデータキャッシュヒットを検出することに応答して第1のカウントをインクリメントするステップと、プリフェッチされたデータ行上にないデータキャッシュヒットを検出することに応答して前記第1のカウントをデクリメントするステップとを備え、前記全ヒット率をトラッキングするステップは、データキャッシュヒットに応答して第2のカウントをインクリメントするステップと、データキャッシュミスに応答して前記第2のカウントをデクリメントするステップとを備える請求項3に記載の方法。
- プリフェッチヒットの前記トラッキングに基づいて前記データキャッシュのためのデータプリフェッチングをディセーブルにするステップは、前記プリフェッチヒット率が前記第1のカウントの値によって示されるように定義されたディセーブル閾値まで低下した場合は、前記データキャッシュのためのデータプリフェッチングをディセーブルにするステップを備える請求項6に記載の方法。
- 全ヒットの前記トラッキングに基づいて前記データキャッシュのためのデータプリフェッチングをイネーブルにするステップは、前記全ヒット率が前記第2のカウントの値によって示されるように定義されたイネーブル閾値まで低下した場合は、前記データキャッシュのためのデータプリフェッチングをイネーブルにするステップを備える請求項6に記載の方法。
- データキャッシュプリフェッチングをイネーブルにするステップおよびディセーブルにするステップに関連して前記第1のカウントおよび第2のカウントの一方または両方をリセットすることによってデータキャッシュプリフェッチングの制御のためのイネーブル/ディセーブルヒステリシスを実施するステップをさらに備える請求項6に記載の方法。
- 前記第1のカウントおよび第2のカウントを、それぞれ第1の最大カウント値および第2の最大カウント値で飽和するように構成された第1の飽和カウンタおよび第2の飽和カウンタ内に維持するステップをさらに備える請求項6に記載の方法。
- 前記プリフェッチヒットをトラッキングするステップは、前記データキャッシュ内のプリフェッチされたデータ行上のデータキャッシュヒットの割合を反映する第1のカウンタ内のプリフェッチヒット率をトラッキングするステップを備え、前記全ヒットをトラッキングするステップは、データキャッシュヒット対データキャッシュミスの前記全割合を反映する第2のカウンタ内の全ヒット率をトラッキングするステップを備える請求項1に記載の方法。
- データキャッシュプリフェッチがイネーブルにされることから動作を開始するために前記データキャッシュを初期設定するステップをさらに備える請求項1に記載の方法。
- データプリフェッチングがイネーブルにされた場合のみ、1つまたは複数の定義されたプリフェッチングポリシーに従ってデータ行を前記データキャッシュの中にプリフェッチするステップと、データプリフェッチングがイネーブルにされたかどうかに関係なくデータキャッシュミスに応答してデータ行を前記データキャッシュの中にフェッチするステップとをさらに備える請求項1に記載の方法。
- 命令実行パイプラインと、
前記命令実行パイプラインに動作可能に関連付けられ、キャッシュメモリおよびキャッシュコントローラを備えるデータキャッシュとを備え、
前記キャッシュコントローラは、前記データキャッシュのためのプリフェッチヒットをトラッキングし、プリフェッチヒットの前記トラッキングに基づいて前記データキャッシュのためのデータプリフェッチングをディセーブルにし、データキャッシュのための全ヒットをトラッキングし、全ヒットの前記トラッキングに基づいて前記データキャッシュのためのデータプリフェッチングをイネーブルにするように構成される
プロセッサ。 - 前記キャッシュコントローラは、前記データキャッシュのためのデータプリフェッチングをイネーブルにすることおよびディセーブルにすることに関連して前記プリフェッチヒットおよび前記全ヒットの一方または両方をトラッキングするために使用されるトラッキング機構をリセットすることによってイネーブル/ディセーブル制御ヒステリシスを実施する請求項14に記載のプロセッサ。
- 前記キャッシュコントローラは、プリフェッチされたデータ行に関係する前記データキャッシュ上のヒットの前記割合を反映するプリフェッチヒット率をトラッキングすることによって前記プリフェッチヒットをトラッキングし、前記データキャッシュのための全ヒット率をトラッキングすることによって前記全ヒットをトラッキングする請求項14に記載のプロセッサ。
- 前記キャッシュコントローラは、前記キャッシュメモリ内のデータ行の前記全数に関して前記キャッシュメモリ内のプリフェッチされたデータ行の前記数をトラッキングすることによって前記プリフェッチヒット率をトラッキングする請求項16に記載のプロセッサ。
- 前記キャッシュコントローラは、前記キャッシュメモリ内のどのデータ行がプリフェッチされたデータ行であるかを示すインジケータを維持し、前記インジケータを使用して前記プリフェッチヒット率をトラッキングするために前記データキャッシュ上のプリフェッチヒットを検出する請求項16に記載のプロセッサ。
- 前記キャッシュコントローラは、プリフェッチされたデータ行上のデータキャッシュヒットを検出することに応答して第1のカウンタをインクリメントすることによって、および、プリフェッチされたデータ行上にないデータキャッシュヒットを検出することに応答して前記第1のカウンタをデクリメントすることによって、前記プリフェッチヒット率をトラッキングし、データキャッシュヒットに応答して第2のカウンタをインクリメントすることによって、および、データキャッシュミスに応答して前記第2のカウンタをデクリメントすることによって、前記全ヒット率をトラッキングする請求項16に記載のプロセッサ。
- 前記キャッシュコントローラは、前記プリフェッチヒット率が前記第1のカウンタの値によって示されるように定義されたディセーブル閾値まで低下した場合は、前記データキャッシュのためのデータプリフェッチングをディセーブルにする請求項19に記載のプロセッサ。
- 前記キャッシュコントローラは、前記全ヒット率が前記第2のカウンタの値によって示されるように定義されたイネーブル閾値まで低下した場合は、前記データキャッシュのためのデータプリフェッチングをイネーブルにする請求項19に記載のプロセッサ。
- 前記キャッシュコントローラは、データキャッシュプリフェッチングをイネーブルにすることおよびディセーブルにすることに関連して前記第1のカウンタおよび第2のカウンタの一方または両方をリセットすることによってデータキャッシュプリフェッチングを制御するためのイネーブル/ディセーブルヒステリシスを実施する請求項19に記載のプロセッサ。
- 前記第1のカウンタおよび第2のカウンタは、それぞれ第1の最大カウント値および第2の最大カウント値で飽和する第1の飽和カウンタおよび第2の飽和カウンタを備える請求項19に記載のプロセッサ。
- 前記キャッシュコントローラは、前記キャッシュメモリ内のプリフェッチされたデータ行上のデータキャッシュヒットの割合を反映する第1のカウンタ内のプリフェッチヒット率をトラッキングすることによって前記プリフェッチヒットをトラッキングし、データキャッシュヒット対データキャッシュミスの前記全割合を反映する第2のカウンタ内の全ヒット率をトラッキングすることによって前記全ヒットをトラッキングする請求項14に記載のプロセッサ。
- 前記キャッシュコントローラは、データキャッシュプリフェッチングがイネーブルにされることから動作を開始するために前記データキャッシュを初期設定する請求項14に記載のプロセッサ。
- 前記キャッシュコントローラは、データプリフェッチングがイネーブルにされた場合のみ、1つまたは複数の定義されたプリフェッチングポリシーに従ってデータ行を前記データキャッシュの中にプリフェッチし、データプリフェッチングがイネーブルにされたかどうかに関係なく、データキャッシュミスに応答してデータ行を前記データキャッシュの中にフェッチする請求項14に記載のプロセッサ。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/775,320 US7917702B2 (en) | 2007-07-10 | 2007-07-10 | Data prefetch throttle |
US11/775,320 | 2007-07-10 | ||
PCT/US2008/069710 WO2009009704A1 (en) | 2007-07-10 | 2008-07-10 | Data prefetch throttle |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010532904A true JP2010532904A (ja) | 2010-10-14 |
JP5095820B2 JP5095820B2 (ja) | 2012-12-12 |
Family
ID=39494443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010516253A Expired - Fee Related JP5095820B2 (ja) | 2007-07-10 | 2008-07-10 | データプリフェッチスロットル |
Country Status (6)
Country | Link |
---|---|
US (1) | US7917702B2 (ja) |
EP (1) | EP2015189B1 (ja) |
JP (1) | JP5095820B2 (ja) |
KR (1) | KR101095217B1 (ja) |
CN (1) | CN101689147B (ja) |
WO (1) | WO2009009704A1 (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014232369A (ja) * | 2013-05-28 | 2014-12-11 | 富士通株式会社 | 変数更新装置、変数更新システム、変数更新方法、変数更新プログラム、変換プログラム、及びプログラム変更検証システム |
JP2015079524A (ja) * | 2009-02-13 | 2015-04-23 | マイクロン テクノロジー, インク. | メモリシステムおよび方法 |
JP2017509998A (ja) * | 2014-04-04 | 2017-04-06 | クアルコム,インコーポレイテッド | キャッシュ汚染を低減するために専用キャッシュセットにおける専用プリフェッチポリシーを競合させることに基づいた適応キャッシュプリフェッチング |
JP2017191503A (ja) * | 2016-04-14 | 2017-10-19 | 富士通株式会社 | 演算処理装置、および演算処理装置の制御方法 |
JP2019525330A (ja) * | 2016-07-20 | 2019-09-05 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated | キャッシュテスト領域に基づくプリフェッチデータに対するキャッシュ転送ポリシーの選択 |
JP2021506026A (ja) * | 2017-12-12 | 2021-02-18 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated | メモリ帯域幅利用を抑制するメモリ要求スロットル |
US12026097B2 (en) | 2022-07-21 | 2024-07-02 | Fujitsu Limited | Arithmetic processing apparatus and arithmetic processing method |
Families Citing this family (81)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6307487B1 (en) | 1998-09-23 | 2001-10-23 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
US7068729B2 (en) | 2001-12-21 | 2006-06-27 | Digital Fountain, Inc. | Multi-stage code generator and decoder for communication systems |
KR100421538B1 (ko) * | 2001-01-29 | 2004-03-18 | 대한민국 | 생약재의 휘발성 추출물을 유효성분으로 하는 문화재 보존용 살생물제 조성물 및 그를 이용한 문화재 보존방법 |
US9240810B2 (en) | 2002-06-11 | 2016-01-19 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
JP4546246B2 (ja) | 2002-10-05 | 2010-09-15 | デジタル ファウンテン, インコーポレイテッド | 連鎖的暗号化反応の系統的記号化および復号化 |
CN1954501B (zh) * | 2003-10-06 | 2010-06-16 | 数字方敦股份有限公司 | 通过通信信道接收从源发射的数据的方法 |
CN103124182B (zh) | 2004-05-07 | 2017-05-10 | 数字方敦股份有限公司 | 文件下载和流系统 |
US7721184B2 (en) * | 2004-08-11 | 2010-05-18 | Digital Fountain, Inc. | Method and apparatus for fast encoding of data symbols according to half-weight codes |
CN101686107B (zh) | 2006-02-13 | 2014-08-13 | 数字方敦股份有限公司 | 使用可变fec开销和保护周期的流送和缓冲 |
US9270414B2 (en) | 2006-02-21 | 2016-02-23 | Digital Fountain, Inc. | Multiple-field based code generator and decoder for communications systems |
WO2007134196A2 (en) | 2006-05-10 | 2007-11-22 | Digital Fountain, Inc. | Code generator and decoder using hybrid codes |
US9419749B2 (en) | 2009-08-19 | 2016-08-16 | Qualcomm Incorporated | Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes |
US9386064B2 (en) * | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
US20100211690A1 (en) * | 2009-02-13 | 2010-08-19 | Digital Fountain, Inc. | Block partitioning for a data stream |
US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
US9432433B2 (en) | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
US9209934B2 (en) | 2006-06-09 | 2015-12-08 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
EP2203836A4 (en) | 2007-09-12 | 2014-11-05 | Digital Fountain Inc | GENERATING AND COMMUNICATING SOURCE IDENTIFICATION INFORMATION TO ENABLE RELIABLE COMMUNICATIONS |
JP5587884B2 (ja) | 2008-08-06 | 2014-09-10 | モービック・ネットワークス | 無線アクセスネットワーク(ran)におけるコンテンツのキャッシング |
CN102282550A (zh) * | 2009-01-30 | 2011-12-14 | 莫维克网络公司 | 应用和使用以及无线链路感知传输网络调度程序 |
US9281847B2 (en) | 2009-02-27 | 2016-03-08 | Qualcomm Incorporated | Mobile reception of digital video broadcasting—terrestrial services |
US9288010B2 (en) | 2009-08-19 | 2016-03-15 | Qualcomm Incorporated | Universal file delivery methods for providing unequal error protection and bundled file delivery services |
US9917874B2 (en) * | 2009-09-22 | 2018-03-13 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
US8443151B2 (en) * | 2009-11-09 | 2013-05-14 | Intel Corporation | Prefetch optimization in shared resource multi-core systems |
US8291171B2 (en) | 2009-11-30 | 2012-10-16 | Hewlett-Packard Development Company, L.P. | Altering prefetch depth based on ready data |
CN102550006A (zh) * | 2010-02-12 | 2012-07-04 | 莫维克网络公司 | 移动网络中的无线接入网络缓存 |
US8882378B2 (en) | 2010-02-15 | 2014-11-11 | Access Business Group International Llc | Heating and dispenser system |
CN102598628A (zh) * | 2010-03-15 | 2012-07-18 | 莫维克网络公司 | 用于多媒体传送的自适应分块和内容感知同步设备及方法 |
US9485546B2 (en) | 2010-06-29 | 2016-11-01 | Qualcomm Incorporated | Signaling video samples for trick mode video representations |
US8918533B2 (en) | 2010-07-13 | 2014-12-23 | Qualcomm Incorporated | Video switching for streaming video data |
US9185439B2 (en) | 2010-07-15 | 2015-11-10 | Qualcomm Incorporated | Signaling data for multiplexing video components |
US8799480B2 (en) * | 2010-07-19 | 2014-08-05 | Movik Networks | Content pre-fetching and CDN assist methods in a wireless mobile network |
US9596447B2 (en) | 2010-07-21 | 2017-03-14 | Qualcomm Incorporated | Providing frame packing type information for video coding |
US8806050B2 (en) | 2010-08-10 | 2014-08-12 | Qualcomm Incorporated | Manifest file updates for network streaming of coded multimedia data |
US8565076B2 (en) | 2010-09-24 | 2013-10-22 | Movik Networks | Destination learning and mobility detection in transit network device in LTE and UMTS radio access networks |
US8683129B2 (en) * | 2010-10-21 | 2014-03-25 | Oracle International Corporation | Using speculative cache requests to reduce cache miss delays |
US8958375B2 (en) | 2011-02-11 | 2015-02-17 | Qualcomm Incorporated | Framing for an improved radio link protocol including FEC |
US9270299B2 (en) | 2011-02-11 | 2016-02-23 | Qualcomm Incorporated | Encoding and decoding using elastic codes with flexible source block mapping |
EP2691854A1 (en) * | 2011-03-30 | 2014-02-05 | Freescale Semiconductor, Inc. | A method and apparatus for controlling fetch-ahead in a vles processor architecture |
US20130013867A1 (en) * | 2011-07-06 | 2013-01-10 | Advanced Micro Devices, Inc. | Data prefetcher mechanism with intelligent disabling and enabling of a prefetching function |
US9253233B2 (en) | 2011-08-31 | 2016-02-02 | Qualcomm Incorporated | Switch signaling methods providing improved switching between representations for adaptive HTTP streaming |
US9843844B2 (en) | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
US20130262826A1 (en) * | 2011-10-06 | 2013-10-03 | Alexander Gendler | Apparatus and method for dynamically managing memory access bandwidth in multi-core processor |
CN102521158B (zh) * | 2011-12-13 | 2014-09-24 | 北京北大众志微系统科技有限责任公司 | 一种实现数据预取的方法及装置 |
US9043579B2 (en) | 2012-01-10 | 2015-05-26 | International Business Machines Corporation | Prefetch optimizer measuring execution time of instruction sequence cycling through each selectable hardware prefetch depth and cycling through disabling each software prefetch instruction of an instruction sequence of interest |
US8635406B2 (en) * | 2012-03-08 | 2014-01-21 | Arm Limited | Data processing apparatus and method for providing target address information for branch instructions |
US9294226B2 (en) | 2012-03-26 | 2016-03-22 | Qualcomm Incorporated | Universal object delivery and template-based file delivery |
CN102662713B (zh) | 2012-04-12 | 2014-04-16 | 腾讯科技(深圳)有限公司 | 提高应用程序运行速度的方法、装置及终端 |
US9390018B2 (en) | 2012-08-17 | 2016-07-12 | Advanced Micro Devices, Inc. | Data cache prefetch hints |
US9201796B2 (en) * | 2012-09-27 | 2015-12-01 | Apple Inc. | System cache with speculative read engine |
US9348753B2 (en) * | 2012-10-10 | 2016-05-24 | Advanced Micro Devices, Inc. | Controlling prefetch aggressiveness based on thrash events |
US20140108740A1 (en) * | 2012-10-17 | 2014-04-17 | Advanced Micro Devices, Inc. | Prefetch throttling |
US9367468B2 (en) | 2013-01-15 | 2016-06-14 | Qualcomm Incorporated | Data cache way prediction |
US9298634B2 (en) | 2013-03-06 | 2016-03-29 | Gregory RECUPERO | Client spatial locality through the use of virtual request trackers |
US9223710B2 (en) * | 2013-03-16 | 2015-12-29 | Intel Corporation | Read-write partitioning of cache memory |
US9471510B2 (en) * | 2013-12-20 | 2016-10-18 | Netapp, Inc. | System and method for cache monitoring in storage systems |
US9292447B2 (en) * | 2014-02-20 | 2016-03-22 | Freescale Semiconductor, Inc. | Data cache prefetch controller |
US9280476B2 (en) | 2014-06-04 | 2016-03-08 | Oracle International Corporation | Hardware stream prefetcher with dynamically adjustable stride |
US9256541B2 (en) * | 2014-06-04 | 2016-02-09 | Oracle International Corporation | Dynamically adjusting the hardware stream prefetcher prefetch ahead distance |
US20160011790A1 (en) * | 2014-07-14 | 2016-01-14 | Sandisk Technologies Inc. | Systems and methods to enable access to a host memory associated with a unified memory architecture (uma) |
US10824335B2 (en) | 2014-07-14 | 2020-11-03 | Western Digital Technologies, Inc. | Device and method to store predicted data at a host memory |
US9507596B2 (en) * | 2014-08-28 | 2016-11-29 | Intel Corporation | Instruction and logic for prefetcher throttling based on counts of memory accesses to data sources |
TWI512609B (zh) * | 2014-09-05 | 2015-12-11 | Silicon Motion Inc | 讀取命令排程方法以及使用該方法的裝置 |
DE102015115582A1 (de) * | 2014-10-22 | 2016-04-28 | Imagination Technologies Limited | Vorrichtung und Verfahren zum Drosseln des Hardwarevorauslesens |
US9798900B2 (en) * | 2015-03-26 | 2017-10-24 | Intel Corporation | Flexible counter system for memory protection |
US9864661B2 (en) * | 2016-02-12 | 2018-01-09 | Hewlett Packard Enterprise Development Lp | Cache-accelerated replication of snapshots between storage devices |
WO2017196138A2 (en) | 2016-05-12 | 2017-11-16 | Lg Electronics Inc. | System and method for early data pipeline lookup in large cache design |
US10379862B2 (en) | 2016-06-28 | 2019-08-13 | International Business Machines Corporation | Effectiveness and prioritization of prefeteches |
CN107783911B (zh) * | 2016-08-31 | 2021-06-08 | 华为技术有限公司 | 一种数据过滤方法及终端设备 |
US10474578B2 (en) * | 2017-08-30 | 2019-11-12 | Oracle International Corporation | Utilization-based throttling of hardware prefetchers |
US10303379B2 (en) | 2017-09-25 | 2019-05-28 | International Business Machines Corporation | Efficient adaptive read-ahead in log structured storage |
US10613983B2 (en) * | 2018-03-20 | 2020-04-07 | Advanced Micro Devices, Inc. | Prefetcher based speculative dynamic random-access memory read request technique |
US11675591B2 (en) * | 2018-10-31 | 2023-06-13 | Advanced Micro Devices, Inc. | Selectively enabled result lookaside buffer based on a hit rate |
US11294595B2 (en) * | 2018-12-18 | 2022-04-05 | Western Digital Technologies, Inc. | Adaptive-feedback-based read-look-ahead management system and method |
US11327891B2 (en) * | 2019-09-20 | 2022-05-10 | Samsung Electronics Co., Ltd. | Prefetching operations in storage devices |
US11720364B2 (en) | 2020-03-27 | 2023-08-08 | Intel Corporation | Methods and apparatus to dynamically enable and/or disable prefetchers |
US11442864B2 (en) | 2020-06-29 | 2022-09-13 | Marvell Asia Pte, Ltd. | Managing prefetch requests based on stream information for previously recognized streams |
KR20220117747A (ko) | 2021-02-17 | 2022-08-24 | 삼성전자주식회사 | 데이터 프리페치 제어 기능을 갖는 스토리지 컨트롤러, 스토리지 컨트롤러의 동작 방법, 및 스토리지 장치의 동작 방법 |
KR20220120016A (ko) * | 2021-02-22 | 2022-08-30 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
US11853220B2 (en) * | 2021-10-14 | 2023-12-26 | Arm Limited | Prefetcher training |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07105092A (ja) * | 1993-09-30 | 1995-04-21 | Sharp Corp | 記憶装置 |
US20040221111A1 (en) * | 2003-04-30 | 2004-11-04 | Sun Microsystems, Inc. | Computer system including a memory controller configured to perform pre-fetch operations |
US20050076181A1 (en) * | 2003-10-07 | 2005-04-07 | Wenchi Hsu | Pre-fetch controller and method thereof |
WO2005114427A2 (en) * | 2004-05-14 | 2005-12-01 | Micron Technology, Inc. | Memory hub and method for memory sequencing |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5367656A (en) * | 1992-03-13 | 1994-11-22 | Bull Hn Information Systems Inc. | Controlling cache predictive prefetching based on cache hit ratio trend |
US5983324A (en) * | 1996-03-28 | 1999-11-09 | Hitachi, Ltd. | Data prefetch control method for main storage cache for protecting prefetched data from replacement before utilization thereof |
US6247107B1 (en) * | 1998-04-06 | 2001-06-12 | Advanced Micro Devices, Inc. | Chipset configured to perform data-directed prefetching |
US20020073406A1 (en) * | 2000-12-12 | 2002-06-13 | Darryl Gove | Using performance counter profiling to drive compiler optimization |
US6983356B2 (en) * | 2002-12-19 | 2006-01-03 | Intel Corporation | High performance memory device-state aware chipset prefetcher |
US6978349B1 (en) * | 2003-01-09 | 2005-12-20 | Hewlett-Packard Development Company, L.P. | Adaptive cache memory management |
US7237068B2 (en) * | 2003-01-28 | 2007-06-26 | Sun Microsystems, Inc. | Computer system employing bundled prefetching and null-data packet transmission |
WO2005076181A1 (en) | 2004-02-05 | 2005-08-18 | Dal-Hyun Cho | Information buying and selling system |
US7313654B2 (en) * | 2004-10-27 | 2007-12-25 | Xiv Ltd | Method for differential discarding of cached data in distributed storage systems |
US20060174228A1 (en) * | 2005-01-28 | 2006-08-03 | Dell Products L.P. | Adaptive pre-fetch policy |
US20070239940A1 (en) * | 2006-03-31 | 2007-10-11 | Doshi Kshitij A | Adaptive prefetching |
-
2007
- 2007-07-10 US US11/775,320 patent/US7917702B2/en not_active Expired - Fee Related
-
2008
- 2008-03-25 EP EP08005493.5A patent/EP2015189B1/en not_active Not-in-force
- 2008-07-10 JP JP2010516253A patent/JP5095820B2/ja not_active Expired - Fee Related
- 2008-07-10 WO PCT/US2008/069710 patent/WO2009009704A1/en active Application Filing
- 2008-07-10 CN CN2008800240012A patent/CN101689147B/zh not_active Expired - Fee Related
- 2008-07-10 KR KR1020107000480A patent/KR101095217B1/ko not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07105092A (ja) * | 1993-09-30 | 1995-04-21 | Sharp Corp | 記憶装置 |
US20040221111A1 (en) * | 2003-04-30 | 2004-11-04 | Sun Microsystems, Inc. | Computer system including a memory controller configured to perform pre-fetch operations |
US20050076181A1 (en) * | 2003-10-07 | 2005-04-07 | Wenchi Hsu | Pre-fetch controller and method thereof |
WO2005114427A2 (en) * | 2004-05-14 | 2005-12-01 | Micron Technology, Inc. | Memory hub and method for memory sequencing |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015079524A (ja) * | 2009-02-13 | 2015-04-23 | マイクロン テクノロジー, インク. | メモリシステムおよび方法 |
JP2014232369A (ja) * | 2013-05-28 | 2014-12-11 | 富士通株式会社 | 変数更新装置、変数更新システム、変数更新方法、変数更新プログラム、変換プログラム、及びプログラム変更検証システム |
JP2017509998A (ja) * | 2014-04-04 | 2017-04-06 | クアルコム,インコーポレイテッド | キャッシュ汚染を低減するために専用キャッシュセットにおける専用プリフェッチポリシーを競合させることに基づいた適応キャッシュプリフェッチング |
JP2017191503A (ja) * | 2016-04-14 | 2017-10-19 | 富士通株式会社 | 演算処理装置、および演算処理装置の制御方法 |
JP2019525330A (ja) * | 2016-07-20 | 2019-09-05 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated | キャッシュテスト領域に基づくプリフェッチデータに対するキャッシュ転送ポリシーの選択 |
JP2021506026A (ja) * | 2017-12-12 | 2021-02-18 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated | メモリ帯域幅利用を抑制するメモリ要求スロットル |
US12026097B2 (en) | 2022-07-21 | 2024-07-02 | Fujitsu Limited | Arithmetic processing apparatus and arithmetic processing method |
Also Published As
Publication number | Publication date |
---|---|
KR101095217B1 (ko) | 2011-12-20 |
JP5095820B2 (ja) | 2012-12-12 |
WO2009009704A1 (en) | 2009-01-15 |
US20090019229A1 (en) | 2009-01-15 |
EP2015189A1 (en) | 2009-01-14 |
US7917702B2 (en) | 2011-03-29 |
CN101689147A (zh) | 2010-03-31 |
KR20100022518A (ko) | 2010-03-02 |
EP2015189B1 (en) | 2015-07-29 |
CN101689147B (zh) | 2013-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5095820B2 (ja) | データプリフェッチスロットル | |
EP3769226B1 (en) | Prefetcher based speculative dynamic random-access memory read request technique | |
US11675703B2 (en) | Memory request throttling to constrain memory bandwidth utilization | |
US10552160B2 (en) | Handling stalling event for multiple thread pipeline, and triggering action based on information access delay | |
US8839429B2 (en) | Methods, devices, and systems for detecting return-oriented programming exploits | |
KR101902651B1 (ko) | 이용 트렌드에 기초한 다중 세트 그룹들 내의 통로에 의한 캐시 메모리의 동적 전력 공급 | |
US11586944B2 (en) | Allocation filter for prediction storage structure | |
CN109446112B (zh) | 用于预取流量的改进控制的方法和系统 | |
US8103832B2 (en) | Method and apparatus of prefetching streams of varying prefetch depth | |
JP2005316842A (ja) | キャッシュメモリおよびキャッシュ制御方法 | |
KR20210035311A (ko) | 프로세서의 필터링된 분기 예측 구조 | |
US9965023B2 (en) | Apparatus and method for flushing dirty cache lines based on cache activity levels | |
US11204878B1 (en) | Writebacks of prefetched data | |
US20120072632A1 (en) | Deterministic and non-Deterministic Execution in One Processor | |
US10901742B2 (en) | Apparatus and method for making predictions for instruction flow changing instructions | |
JP2007207039A (ja) | メモリシステムおよびメモリアクセス制御方法 | |
JPH0353357A (ja) | キャッシュメモリ制御用集積回路 | |
OnurMutlu et al. | DRAM-Aware Last-Level Cache Replacement | |
JP2004127031A (ja) | メモリ切り替え回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120424 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120719 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120821 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120919 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150928 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |