JP2020135499A - データ処理装置、ストレージ装置およびプリフェッチ方法 - Google Patents
データ処理装置、ストレージ装置およびプリフェッチ方法 Download PDFInfo
- Publication number
- JP2020135499A JP2020135499A JP2019029009A JP2019029009A JP2020135499A JP 2020135499 A JP2020135499 A JP 2020135499A JP 2019029009 A JP2019029009 A JP 2019029009A JP 2019029009 A JP2019029009 A JP 2019029009A JP 2020135499 A JP2020135499 A JP 2020135499A
- Authority
- JP
- Japan
- Prior art keywords
- prefetch
- storage unit
- data
- unit
- device driver
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- 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
-
- 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/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
- G06F3/0649—Lifecycle management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- 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/0877—Cache access modes
- G06F12/0882—Page mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/50—Control mechanisms for virtual memory, cache or TLB
- G06F2212/502—Control mechanisms for virtual memory, cache or TLB using adaptive policy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/6022—Using a prefetch buffer or dedicated prefetch cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
図2において、データ処理装置20は、プロセッサ101、通信制御デバイス102、通信インターフェース103、主記憶部104、主記憶拡張部105、補助記憶部106および補助記憶拡張部107を備える。プロセッサ101、通信制御デバイス102、通信インターフェース103、主記憶部104、主記憶拡張部105、補助記憶部106および補助記憶拡張部107は、内部バス108を介して相互に接続されている。
図3において、図1のSSD201の初期化処理として、デバイスドライバ23は、プリフェッチ専用のsubmitキューおよびcompletionキューをDRAM203に作成し(B11)、SSD201を初期化する(C11)。SSD201の初期化では、例えば、completionキューにリード/ライト完了通知が入ると、どの関数を呼ぶかなどを設定する。submitキューは、SSD201へのリード/ライト要求コマンドを保持する。completionキューは、SSD201からのリード/ライト完了通知を保持する。リード/ライト完了通知は、リード/ライトの正常終了通知または異常終了通知を含むことができる。
struct prfbf_user_pg{
int hmx_num_du;//プリフェッチバッファ面数
int lba_int_du;//プリフェッチバッファサイズ/面数
void **prfbf_du;//プリフェッチバッファ仮想アドレスの配列
};
struct prflba_param{
long prfssd_addr;//プリフェッチ対象となるSSD領域の位置
};
struct trdtbf_user{
int mxln_du;//取得するI/Oトレース数
long *trdbf_du;//I/Oトレースデータの長さ
};
struct subprf_user{
int src_du;//SSD高頻度アクセス領域を分割した領域番号
int dest_du;//分割して割当てたプリフェッチバッファの番号
};
struct dbgdtbf_user{
int mxln_du;//取得する性能モニタデータの数
long *dbgbf_du;//性能モニタデータの長さ
};
図4において、SSD201のプリフェッチ対象領域R1は、プリフェッチ対象となるSSD領域の位置prfssd_addrが設定され、プリフェッチバッファサイズlba_int_duで分割される。SSD201の各分割領域には、分割領域番号が付されている。SSD201の記憶領域はブロックアドレスが割り当てられる。
ただし、iは、プリフェッチバッファの各面の番号、prf_dt[i]は、プリフェッチ済のSSD分割領域番号、prfsv_dt[i]は、SSD201のリードが正常終了したことを示すコマンドの個数、prfdrt_dt[i]は、ダーティ状態を示すビットマップである。
図5において、デバイスドライバ23は、一定数のI/Oトレースデータを格納するデータ配列をDRAM203に割り当て、初期化する(S11)。次に、デバイスドライバ23は、プリフェッチに関する性能モニタデータを格納するデータ配列をDRAM203に割り当て、初期化する(S12)。次に、デバイスドライバ23は、プリフェッチバッファの割当て状態を示す変数を未割当に設定する(S13)。
図6において、図1のページ固定部D3は、プリフェッチバッファの面数およびサイズを引数の構造体から取得する(S31)。この引数の構造体は、上述したstruct prfbf_user_pgで定義される。
図7において、図1のプリフェッチ実行部D4は、sourceアドレスおよびdestinationアドレスを引数の構造体から取得する(S41)。この引数の構造体は、上述したstruct subprf_userで定義される。
図8において、データ処理装置20Aは、図1のHDD25が除去されている。データ処理装置20Aは、データ解析サーバ10およびストレージ装置40に接続されている。それ以外の構成については、データ処理装置20Aは、図1のデータ処理装置20と同様である。
図9において、このデータ処理装置は、図1のオペレーティングシステム22の代わりにオペレーティングシステム22Aを備える。オペレーティングシステム22Aは、デバイスドライバ23に加え、ブロックI/Oレイヤ23Aを備える。ブロックI/Oレイヤ23Aは、デバイスドライバ23に読み出しまたは書き込み要求を行う。
図10において、各データ処理装置20−1〜20−N(Nは2以上の整数)は、図1のデータ処理装置20および機械学習用サーバ30と同様の機能を備える。各データ処理装置20−1〜20−Nは、ネットワークを介して接続される。
Claims (15)
- 第1記憶部と、
前記第1記憶部より容量が大きく、アクセス速度が遅い第2記憶部と、
前記第1記憶部より容量が大きく、前記第2記憶部よりアクセス速度が遅い第3記憶部と、
前記第3記憶部に記憶されたデータを前記第2記憶部にプリフェッチし、前記第2記憶部にプリフェッチしたデータを前記第1記憶部にコピーするデバイスドライバと、
前記デバイスドライバの外部に設けられた推論部とを備え、
前記デバイスドライバは、
前記プリフェッチの指示を前記推論部から受け取る第1インターフェースと、
前記第1インターフェースで受け取られた前記プリフェッチの指示に基づいて、前記プリフェッチを実行するプリフェッチ実行部とを備え、
前記推論部は、前記第3記憶部からのプリフェッチに用いられるアドレスを予測し、前記予測結果に基づいて前記デバイスドライバに前記プリフェッチを指示するデータ処理装置。 - 前記第1記憶部はDRAM(Dynamic Random Access Memory)、前記第2記憶部はストレージクラスメモリ、前記第3記憶部はSSD(Solid State Drive)である請求項1に記載のデータ処理装置。
- 前記推論部は、I/Oトレースデータに基づいて、前記プリフェッチに用いられるアドレスを学習したニューラルネットワークである請求項1に記載のデータ処理装置。
- 前記デバイスドライバは、
前記第2記憶部にプリフェッチされたデータのヒット判定を実行し、前記データがヒットしないときに前記第3記憶部に記憶されたデータを前記第1記憶部にライトするヒット判定部と、
前記第2記憶部にプリフェッチされたデータがヒットしたときに前記第2記憶部にプリフェッチされたデータを前記第1記憶部にコピーするコピー部とを備える請求項1に記載のデータ処理装置。 - 前記デバイスドライバの外部に設けられ、前記第2記憶部にプリフェッチバッファを割り当てる割当て部をさらに備え、
前記デバイスドライバは、前記第2記憶部に割り当てられたプリフェッチバッファをページ固定するページ固定部をさらに備える請求項1に記載のデータ処理装置。 - 前記デバイスドライバは、
前記プリフェッチの対象とする前記第3記憶部のブロックアドレス領域の面数、位置およびサイズを設定し、
前記プリフェッチバッファの面数、位置およびサイズを指定する請求項5に記載のデータ処理装置。 - 前記デバイスドライバは、シーケンシャルリード性能に基づいて決定したデータサイズで前記プリフェッチバッファを分割し、前記プリフェッチバッファに対する前記第3記憶部からのリードコマンドをプリフェッチ専用に予め作成する請求項5に記載のデータ処理装置。
- 前記デバイスドライバは、
前記第2記憶部の記憶領域を一定のデータサイズで分割した分割領域を単位としてプリフェッチバッファを構成し、
前記プリフェッチバッファを構成する前記分割領域の個数を可変とすることで、前記プリフェッチバッファの面数およびサイズを可変とする請求項5に記載のデータ処理装置。 - 前記デバイスドライバは、I/Oトレースデータを取得する第2インターフェースをさらに備え、
前記I/Oトレースデータを取得する関数は、前記I/Oトレースデータの属性のうちから前記予測に使用する属性と、前記I/Oトレースデータの長さを選択する引数を含む請求項1に記載のデータ処理装置。 - 前記デバイスドライバは、前記プリフェッチに関する性能情報を取得する第3インターフェースをさらに備え、
前記推論部は、前記第3インターフェースから前記性能情報を取得し、前記プリフェッチに用いるI/O帯域の使用率に基づいて、前記プリフェッチのタイミングを決定する請求項1に記載のデータ処理装置。 - 前記プリフェッチに用いるI/O帯域の使用率を予測する予測モデルをさらに備え、
前記推論部は、前記予測モデルで予測された前記I/O帯域の使用率に基づいて、前記プリフェッチのタイミングを決定する請求項1に記載のデータ処理装置。 - 前記デバイスドライバは、
前記プリフェッチ専用のコマンドキューと完了通知キューを作成し、
前記デバイスドライバが前記コマンドキューにサブミットした数だけ、前記完了通知キューに正常完了通知が設定されると、前記第3記憶部からのリード処理を完了する請求項1に記載のデータ処理装置。 - 第1記憶部と、
前記第1記憶部より容量が大きく、アクセス速度が遅い第2記憶部と、
前記第1記憶部より容量が大きく、前記第2記憶部よりアクセス速度が遅い第3記憶部と、
前記第3記憶部に記憶されたデータを前記第2記憶部にプリフェッチするデバイスドライバとを備え、
前記デバイスドライバは、ヒット判定に基づいて、前記第2記憶部にプリフェッチされたデータを前記第1記憶部にコピーするか、前記第3記憶部に記憶されたデータを前記第1記憶部にライトするかを選択するストレージ装置。 - 前記デバイスドライバは、
前記プリフェッチの指示を外部から受け取るインターフェースと、
前記インターフェースで受け取られた前記プリフェッチの指示に基づいて、前記プリフェッチを実行するプリフェッチ実行部とを備える請求項13に記載のストレージ装置。 - ストレージデバイスに記憶されたデータをストレージクラスメモリにプリフェッチするプリフェッチ方法であって、
前記プリフェッチを実行するデバイスドライバが実装されたオペレーティングシステムの外部に前記プリフェッチを指示する推論部が設けられ、
前記推論部は、前記ストレージデバイスからのプリフェッチに用いられるアドレスを予測し、前記予測結果に基づいて前記デバイスドライバに前記プリフェッチを指示するプリフェッチ方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019029009A JP7261037B2 (ja) | 2019-02-21 | 2019-02-21 | データ処理装置、ストレージ装置およびプリフェッチ方法 |
US16/572,230 US11194723B2 (en) | 2019-02-21 | 2019-09-16 | Data processing device, storage device, and prefetch method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019029009A JP7261037B2 (ja) | 2019-02-21 | 2019-02-21 | データ処理装置、ストレージ装置およびプリフェッチ方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020135499A true JP2020135499A (ja) | 2020-08-31 |
JP7261037B2 JP7261037B2 (ja) | 2023-04-19 |
Family
ID=72141677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019029009A Active JP7261037B2 (ja) | 2019-02-21 | 2019-02-21 | データ処理装置、ストレージ装置およびプリフェッチ方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11194723B2 (ja) |
JP (1) | JP7261037B2 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11436041B2 (en) * | 2019-10-03 | 2022-09-06 | Micron Technology, Inc. | Customized root processes for groups of applications |
US11474828B2 (en) | 2019-10-03 | 2022-10-18 | Micron Technology, Inc. | Initial data distribution for different application processes |
US11599384B2 (en) | 2019-10-03 | 2023-03-07 | Micron Technology, Inc. | Customized root processes for individual applications |
US11429445B2 (en) | 2019-11-25 | 2022-08-30 | Micron Technology, Inc. | User interface based page migration for performance enhancement |
US11157285B2 (en) * | 2020-02-06 | 2021-10-26 | International Business Machines Corporation | Dynamic modification of instructions that do not modify the architectural state of a processor |
US11327883B2 (en) * | 2020-03-12 | 2022-05-10 | International Business Machines Corporation | Solid-state drive performance and lifespan based on data affinity |
US11366752B2 (en) | 2020-03-19 | 2022-06-21 | Micron Technology, Inc. | Address mapping between shared memory modules and cache sets |
US11943294B1 (en) * | 2020-09-30 | 2024-03-26 | Amazon Technologies, Inc. | Storage medium and compression for object stores |
US11836087B2 (en) | 2020-12-23 | 2023-12-05 | Micron Technology, Inc. | Per-process re-configurable caches |
US11625519B2 (en) * | 2021-04-05 | 2023-04-11 | Mythic, Inc. | Systems and methods for intelligent graph-based buffer sizing for a mixed-signal integrated circuit |
WO2022213736A1 (zh) * | 2021-04-08 | 2022-10-13 | 华为技术有限公司 | 一种将数据写入固态硬盘的方法 |
WO2023055462A1 (en) * | 2021-09-30 | 2023-04-06 | Micron Technology, Inc. | Delta predictions for page scheduling |
CN114065947B (zh) * | 2021-11-15 | 2022-07-22 | 深圳大学 | 一种数据访问推测方法、装置、存储介质及电子设备 |
US11989142B2 (en) * | 2021-12-10 | 2024-05-21 | Samsung Electronics Co., Ltd. | Efficient and concurrent model execution |
US11966597B1 (en) | 2022-09-29 | 2024-04-23 | Amazon Technologies, Inc. | Multi-domain configurable data compressor/de-compressor |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10171653A (ja) * | 1996-10-09 | 1998-06-26 | Nkk Corp | 情報処理装置の分岐予測方式及びそれを用いた装置 |
US20040003179A1 (en) * | 2002-06-28 | 2004-01-01 | Fujitsu Limited | Pre-fetch control device, data processing apparatus and pre-fetch control method |
JP2008159057A (ja) * | 2006-12-22 | 2008-07-10 | Intel Corp | ダイナミック・ランダムアクセスメモリからスタティック・ランダムアクセスメモリへのプリフェッチ |
JP2008269331A (ja) * | 2007-04-20 | 2008-11-06 | Media Logic Corp | デバイスドライバ |
JP2018022404A (ja) * | 2016-08-05 | 2018-02-08 | 富士通株式会社 | ストレージシステム、ストレージ制御装置およびストレージ制御プログラム |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8607005B2 (en) | 2006-02-17 | 2013-12-10 | International Business Machines Corporation | Monitoring program execution to learn data blocks accessed by software process for facilitating efficient prefetching |
US8112755B2 (en) | 2006-06-30 | 2012-02-07 | Microsoft Corporation | Reducing latencies in computing systems using probabilistic and/or decision-theoretic reasoning under scarce memory resources |
US7805580B2 (en) | 2007-01-08 | 2010-09-28 | International Business Machines Corporation | Method and system for determining optimal data layout using blind justice |
US8140746B2 (en) | 2007-12-14 | 2012-03-20 | Spansion Llc | Intelligent memory data management |
US9298633B1 (en) | 2013-09-18 | 2016-03-29 | Emc Corporation | Adaptive prefecth for predicted write requests |
JP2015192365A (ja) * | 2014-03-28 | 2015-11-02 | ソニー株式会社 | 通信制御装置、通信制御方法、およびプログラム |
US10397368B2 (en) | 2015-06-25 | 2019-08-27 | International Business Machines Corporation | Data prefetching for large data systems |
JP2017117179A (ja) * | 2015-12-24 | 2017-06-29 | 富士通株式会社 | 情報処理装置、キャッシュ制御プログラムおよびキャッシュ制御方法 |
JP7132491B2 (ja) * | 2018-05-14 | 2022-09-07 | 富士通株式会社 | メモリ制御装置、メモリ制御プログラムおよびメモリ制御方法 |
-
2019
- 2019-02-21 JP JP2019029009A patent/JP7261037B2/ja active Active
- 2019-09-16 US US16/572,230 patent/US11194723B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10171653A (ja) * | 1996-10-09 | 1998-06-26 | Nkk Corp | 情報処理装置の分岐予測方式及びそれを用いた装置 |
US20040003179A1 (en) * | 2002-06-28 | 2004-01-01 | Fujitsu Limited | Pre-fetch control device, data processing apparatus and pre-fetch control method |
JP2004038345A (ja) * | 2002-06-28 | 2004-02-05 | Fujitsu Ltd | プリフェッチ制御装置、情報処理装置及びプリフェッチ制御方法 |
JP2008159057A (ja) * | 2006-12-22 | 2008-07-10 | Intel Corp | ダイナミック・ランダムアクセスメモリからスタティック・ランダムアクセスメモリへのプリフェッチ |
JP2008269331A (ja) * | 2007-04-20 | 2008-11-06 | Media Logic Corp | デバイスドライバ |
JP2018022404A (ja) * | 2016-08-05 | 2018-02-08 | 富士通株式会社 | ストレージシステム、ストレージ制御装置およびストレージ制御プログラム |
US20180039439A1 (en) * | 2016-08-05 | 2018-02-08 | Fujitsu Limited | Storage system, storage control device, and method of controlling a storage system |
Also Published As
Publication number | Publication date |
---|---|
JP7261037B2 (ja) | 2023-04-19 |
US11194723B2 (en) | 2021-12-07 |
US20200272566A1 (en) | 2020-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7261037B2 (ja) | データ処理装置、ストレージ装置およびプリフェッチ方法 | |
Lagar-Cavilla et al. | Software-defined far memory in warehouse-scale computers | |
KR102371916B1 (ko) | 가상 머신을 지원하는 스토리지 장치, 그것을 포함하는 스토리지 시스템 및 그것의 동작 방법 | |
JP6248808B2 (ja) | 情報処理装置、情報処理システム、情報処理装置の制御方法、及び、情報処理装置の制御プログラム | |
US20180275899A1 (en) | Hardware based map acceleration using forward and reverse cache tables | |
US10282292B2 (en) | Cluster-based migration in a multi-level memory hierarchy | |
JP2007328734A (ja) | ストレージ装置及びストレージ装置の制御方法 | |
JP2019204335A (ja) | データ処理装置およびプリフェッチ方法 | |
US9858191B2 (en) | Electronic system with data management mechanism and method of operation thereof | |
Brown et al. | Taming the Memory Hogs: Using {Compiler-Inserted} Releases to Manage Physical Memory Intelligently | |
US11907129B2 (en) | Information processing device, access controller, information processing method, and computer program for issuing access requests from a processor to a sub-processor | |
KR20200121372A (ko) | 하이브리드 메모리 시스템 | |
US20230315309A1 (en) | Techniques to predict or determine time-to-ready for a storage device | |
WO2019032197A1 (en) | HYBRID DATA STORAGE MATRIX | |
US11561834B2 (en) | Methods and systems for adaptive memory-resource management | |
JP6800904B2 (ja) | モデル生成装置、情報処理装置、モデル生成方法およびプログラム | |
KR20200117032A (ko) | 하이브리드 메모리 시스템 | |
KR101456370B1 (ko) | 스토리지 관리 방법 및 장치 | |
Wu et al. | Reducing SSD access latency via NAND flash program and erase suspension | |
Xie et al. | Exploiting internal parallelism for address translation in solid-state drives | |
JP6988231B2 (ja) | 情報処理装置、情報処理システム、情報処理方法及び情報処理プログラム | |
JP6873942B2 (ja) | 推定装置、推定方法およびプログラム | |
JP6243884B2 (ja) | 情報処理装置、プロセッサ、および情報処理方法 | |
JP6254986B2 (ja) | 情報処理装置、アクセスコントローラ、および情報処理方法 | |
WO2017082323A1 (ja) | 分散処理システム、分散処理装置、方法および記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210705 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220316 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220329 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220524 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221011 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221205 |
|
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: 20230314 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230407 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7261037 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |