JP2008293111A - データアクセス処理方法及び記憶制御装置 - Google Patents

データアクセス処理方法及び記憶制御装置 Download PDF

Info

Publication number
JP2008293111A
JP2008293111A JP2007135602A JP2007135602A JP2008293111A JP 2008293111 A JP2008293111 A JP 2008293111A JP 2007135602 A JP2007135602 A JP 2007135602A JP 2007135602 A JP2007135602 A JP 2007135602A JP 2008293111 A JP2008293111 A JP 2008293111A
Authority
JP
Japan
Prior art keywords
access
command
data
area
access command
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
JP2007135602A
Other languages
English (en)
Other versions
JP4558003B2 (ja
Inventor
Kyoichi Sasamoto
享一 笹本
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.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions Corp
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 Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2007135602A priority Critical patent/JP4558003B2/ja
Publication of JP2008293111A publication Critical patent/JP2008293111A/ja
Application granted granted Critical
Publication of JP4558003B2 publication Critical patent/JP4558003B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

【課題】ホスト計算機からのアクセスが同時期に多種多様に混在して存在する場合におけるアクセスの性能を向上させる。
【解決手段】類似コマンド抽出部320は、現アクセスコマンドと同一アクセス種別、同一転送サイズの全てのアクセスコマンドのログを類似コマンドのログとしてアクセスコマンドログテーブル119から抽出する。アクセス傾向判定部330は、抽出された全ての類似コマンドのログに基づき、アクセスの傾向を判定する。データアクセス処理決定部340は、判定されたアクセスの傾向に基づき、現アクセスコマンドによって指定される読み出し/書き込みデータを対象とするキャッシュメモリへのアクセスを伴う処理及び現アクセスコマンドの指定する領域の近傍の領域のデータを対象とするキャッシュメモリへのアクセスを伴う処理の少なくとも一方を含むデータアクセス処理を決定する。
【選択図】 図3

Description

本発明は、ホスト計算機と記憶装置との間のデータ転送処理を行う記憶制御装置に係り、特にホスト計算機からのアクセスの性能を向上させるためのキャッシュメモリを有する記憶装置制御装置におけるデータアクセス方法及び記憶制御装置に関する。
ホスト計算機と記憶装置との間のデータ転送処理を行う記憶制御装置は、ホスト計算機からのアクセスの性能を向上させるためのキャッシュメモリを有しているのが一般的である。近年、この種の記憶制御装置では、キャッシュメモリの効率的な運用のための技術が適用されている。例えば、特許文献1に記載された記憶制御装置は、記憶装置を複数の記憶領域に分割し、分割された記憶領域毎にアクセスに関する統計情報を採取することにより、その統計情報に基づいて記憶領域毎にキャッシュメモリの動作モード(キャッシュメモリーのデータ先読み処理の有無)を切り替える技術を適用している。この特許文献1に記載の技術は、オンライン処理とバッチ処理とで、各々の記憶領域に対するアクセスの傾向が画一的に変化するような場合に有効である。
また、例えば特許文献2にも、キャッシュメモリへのデータ先読みに関する技術が記載されている。この特許文献2に記載の技術では、同一論理記憶装置の連続した領域に対するホスト計算機からのリード要求を一定回数以上受信した場合に、シーケンシャルなリードアクセスと判断し、キャッシュメモリへの先読みが行われる。
特開平2−50236号公報 特開平3−102443号公報
上記したように特許文献1に記載の技術は、オンライン処理とバッチ処理とで、分割された各々の記憶領域に対するアクセスの傾向が画一的に変化するような場合には有効な方法である、しかし、同一記憶領域に対し同時期に多様な傾向のアクセスが混在するような場合には、特許文献1に記載の技術のように各記憶領域へのアクセスを画一的に評価するのでは、キャッシュメモリの運用の最適化は難しい。例えば、比較的サイズの大きなファイルと、そのファイルを管理するサイズの小さな管理情報、双方へのアクセスの傾向は一般に大きく異なり、これらのアクセスは混在する。
そこで、傾向の異なるアクセスの混在の可能性をより低くするために、例えば記憶装置に対する分割の粒度を極めて小さくすることが考えられる。しかし特許文献1に記載の技術では、分割された記憶領域毎に統計情報を保持する必要があることから、分割の粒度を極めて小さくすると、即ち分割数を極めて多くすると、統計情報を保持するのに必要となるメモリ容量が増大する。メモリ容量の増大は、装置の価格の上昇を招く。最近のハードディスク装置(HDD)に代表される記憶装置の大容量化を考慮すると、この方法は現実的ではない。
一方、上記特許文献2に記載の技術では、リード要求がシーケンシャル性のある要求であると判断できるまでに、一定の回数(先読み閾値回数)以上のホスト計算機からのリード要求の受信が必要となる。この先読み閾値回数に達するまでの間は、リード要求の都度、記憶装置からの読み出し処理が発生してしまう。一般に上記先読み閾値回数は2乃至3回以上である。したがって、ホスト計算機からのリード要求が2乃至3回で完結するような、回数の少ないシーケンシャルなリード要求の場合には、特許文献2に記載の技術では先読みの効果は得られ難い。また、特許文献2に記載の技術において、2乃至3回のリード要求を受信した結果、それがシーケンシャルアクセス性のあるリード要求と判断されると、後続のデータのキャッシュメモリへの先読みが行われる。ところが、上述のような回数の少ないシーケンシャルなリード要求の場合には、先読みしたデータは結局使用されず無駄となり、装置のスループット性能を悪化させる可能性もある。
本発明は上記事情を考慮してなされたものでその目的は、ホスト計算機からのアクセスが同時期に多種多様に混在して存在する場合におけるアクセスの性能を向上させることができるデータアクセス処理方法及び記憶制御装置を提供することにある。
本発明の1つの観点によれば、ホスト計算機及び少なくとも1つの記憶装置と接続され、前記記憶装置の一部または全ての領域を使用して前記ホスト計算機に対して論理記憶装置を提供すると共に、前記ホスト計算機と前記記憶装置との間のデータ転送を処理し、前記ホスト計算機からのアクセスコマンドによって指定された読み出し/書き込みデータを一時的に保持するための前記記憶装置よりも高速なキャッシュメモリと、前記アクセスコマンドの指定するアクセス種別、並びに前記アクセスコマンドの指定する前記論理記憶装置内の領域を示す先頭アドレス及び転送サイズまたは当該転送サイズが属する転送サイズ範囲の情報を当該アクセスコマンドのログとして保持するためのアクセスコマンドログテーブルとを有する記憶制御装置において実行される、前記ホスト計算機からのアクセスコマンドに従うデータアクセスを処理するデータアクセス処理方法が提供される。この方法は、前記ホスト計算機から前記記憶制御装置に与えられる今回処理されるべき現アクセスコマンドに基づき前記アクセスコマンドログテーブルを参照することにより、当該現アクセスコマンドと同一アクセス種別で、且つ当該現アクセスコマンドと同一転送サイズまたは同一転送サイズ範囲の全てのアクセスコマンドのログを、当該現アクセスコマンドと特徴が類似した類似コマンドのログとして抽出するステップと、前記抽出された全ての類似コマンドのログに基づき、アクセスの傾向を判定するステップと、前記判定されたアクセスの傾向に基づき、前記現アクセスコマンドに対応するデータアクセス処理であって、前記現アクセスコマンドによって指定される読み出し/書き込みデータを対象とする前記キャッシュメモリへのアクセスを伴う処理及び前記現アクセスコマンドの指定する領域の近傍の領域のデータを対象とする前記キャッシュメモリへのアクセスを伴う処理の少なくとも一方を含むデータアクセス処理を決定するステップと、前記決定されたデータアクセス処理を実行するステップと、前記現アクセスコマンドのログを前記アドレスコマンドログテーブルに追加するステップとを具備する。
本発明によれば、現アクセスコマンドそれ自体を含むコマンド列の指定するアクセスの傾向ではなくて、アクセスコマンドテーブルから抽出された現アクセスコマンドに類似のコマンドのアクセス傾向が判定され、判定されたアクセスの傾向に基づき、現アクセスコマンドによって指定される読み出し/書き込みデータを対象とするキャッシュメモリへのアクセスを伴う処理及び現アクセスコマンドの指定する領域の近傍の領域のデータを対象とするキャッシュメモリへのアクセスを伴う処理の少なくとも一方を含む、現アクセスコマンドに対応するデータアクセス処理が決定される。これにより、ホスト計算機からのアクセスが同時期に多種多様に混在して存在する場合であっても、少ないアクセスコマンド列で完結するようなシーケンシャルアクセスであっても、キャッシュメモリへのアクセスを伴う、現アクセスコマンドに対応する最適なデータアクセス処理を決定することができ、アクセス性能を向上させることが可能となる。
以下、本発明の実施の形態につき図面を参照して説明する。
図1は本発明の一実施形態に係る計算機システムの構成を示すブロック図である。この計算機システムは、記憶制御装置11と、少なくとも1つの記憶装置、例えば複数の磁気ディスク装置(HDD)12と、ホスト計算機13とから構成される。
記憶制御装置11は、HDD12へのアクセスを制御して、ホスト計算機13とHDD12との間のデータ転送を行う。
HDD12は、ホスト計算機13に提供する(ホスト計算機13からアクセス可能な)少なくとも1つの論理的な記憶装置(論理記憶装置)を構成するのに用いられる。論理記憶装置は、1つまたは複数のHDD12の一部の記憶領域または全ての記憶領域を使用して構成される。本実施形態では図1に示されるように、3つのHDD12の全ての記憶領域を使用して1つの論理記憶装置120が構成されるものとする。
ホスト計算機13は、論理記憶装置120へのアクセスのための要求(アクセスコマンド)を、記憶制御装置11に対して送出する。通常、アクセスコマンドは、ライト/リードの種別、先頭アドレス(開始アドレス)及びサイズの情報を含む。先頭アドレスは、論理記憶装置120内のアクセスされるべき領域の先頭位置(開始位置)を示す。転送サイズは、転送されるデータ(ライト/リードデータ)のサイズ、即ちアクセスされるべき領域のサイズを示す。本実施形態では、先頭アドレスには、アクセスされるべき領域の先頭ブロック位置(先頭論理ブロック位置)を示す先頭ブロックアドレス(先頭論理ブロックアドレス)が用いられ、転送サイズには、転送されるデータ(ライト/リードデータ)のブロック数(アクセスされるべき領域のブロック数)を示す転送ブロックサイズサイズが用いられる。
記憶制御装置11は、インタフェース制御回路111及び112と、キャッシュメモリ113と、チップセット114と、マイクロプロセッサ115と、メモリ(ローカルメモリ)116と、ROM117とを含む。
インタフェース制御回路111は、記憶制御装置11をホスト計算機13と接続するための、SCSI(Small Computer System Interface)或いはファイバチャネル(Fibre Channel)のようなホスト接続インタフェース21を制御する。
インタフェース制御回路112は、記憶制御装置11を複数のHDD12と接続するための、SCSI或いはファイバチャネルのような記憶装置接続インタフェース22を制御する。
キャッシュメモリ113は、ホスト計算機13によって要求された読み出し/書き込みデータ及び論理記憶装置120(を構成するHDD12)から先読みされたデータを一時的に保持するための、HDD12よりも高速なバッファメモリである。本実施形態において、キャッシュメモリ113はバッテリバックアップされている。
チップセット114は、マイクロプロセッサ115及び周辺回路(メモリ116、ROM117のような周辺回路)を接続するためのブリッジ回路である。チップセット114には、内部バス23を介して、インタフェース制御回路111及び112並びにキャッシュメモリ113も接続される。内部バス23は、例えば、PCI(Peripheral Component Interconnect)−X或いはPCI Expressのような、記憶制御装置11内部で使用されるバスである。
マイクロプロセッサ115は、ROM117からメモリ116にコピー(ロード)されたプログラム118(に含まれているプログラムコード)を実行することにより、記憶制御装置11内の他の要素の制御及び各種の処理を行う。
メモリ116は、記憶制御装置11のローカルメモリとして用いられる。メモリ116は、ROM117に格納されているプログラム118がマイクロプロセッサ115による実行のためにコピーされる領域、及びマイクロプロセッサ115の各種処理で使用されるワーク領域を提供する。メモリ116はまた、アクセスコマンドログテーブル119及び当該テーブル119内の次にログが保持されるべきエントリ(次エントリ)を指し示すポインタ(次ポインタ)Pが格納される領域も提供する。アクセスコマンドログテーブル119は、複数の論理記憶装置がホスト計算機13に提供される場合、論理記憶装置毎に用意される。本実施形態では、1つの論理記憶装置120がホスト計算機13に提供されるものとする。
アクセスコマンドログテーブル119は、当該テーブル119に対応する論理記憶装置120内の記憶領域へのアクセスを要求するホスト計算機13からのアクセスコマンドのログを保持するのに用いられる。図2は、アクセスコマンドログテーブル119のデータ構造例を次ポインタPと対応付けて示す。
アクセスコマンドログテーブル119は、第0エントリ(エントリ番号が0のエントリ)乃至第Nエントリ(エントリ番号がNのエントリ)のN+1個のエントリを有する。テーブル119の各エントリは、フィールド201,202及び203から構成される。フィールド201,202及び203は、それぞれ、ホスト計算機13からのアクセスコマンド(ライト/リード要求)の指定するアクセス種別であるライト/リードの種別(W/R種別)、先頭アドレス(先頭ブロックアドレス)及び転送サイズ(転送ブロックサイズ)の情報を保持するのに用いられる。
アクセスコマンドログテーブル119のエントリ数N+1、つまりアクセスコマンドログテーブル119に保持可能なログの最大個数N+1は、準備できるメモリ116のメモリ容量やアクセスコマンドの処理頻度などに応じて決定すれば良い。
アクセスコマンドのログは、記憶制御装置11がホスト計算機13からアクセスコマンドを受信した際に、その受信コマンドに基づいて、次ポインタPの指し示す、アクセスコマンドログテーブル119内のエントリに保持される。ここでは、受信コマンドのW/R種別、先頭アドレス(先頭ブロックアドレス)及び転送サイズ(転送ブロックサイズ)が、アクセスコマンドログテーブル119のエントリ内の、それぞれフィールド201,202び203に保持される。また、アクセスコマンドのログは、アクセスコマンドログテーブル119の先頭エントリ(第0エントリ)から順に保持される。ログが最終エントリ(第Nエントリ)まで保持されると、先頭エントリに戻り、改めて先頭エントリから保持される。このように本実施形態では、アクセスコマンドのログ情報がラウンドロビン方式でアクセスコマンドログテーブル119に保持される。つまりアクセスコマンドログテーブル119は、リングバッファとして用いられる。
次ポインタPは、当該次ポインタPで指し示されるアクセスコマンドログテーブル119内のエントリにアクセスコマンドのログが保持されると、次のエントリを示すように更新される。即ち次ポインタPは、第0乃至第N−1エントリの何れかにアクセスコマンドのログが保持された場合には1インクリメントされ、第Nエントリにアクセスコマンドのログが保持された場合には0に戻される。
図3は、記憶制御装置11内に実現されるデータアクセス処理装置30の構成を示すブロック図である。データアクセス処理装置30は、キャッシュメモリ113へのアクセスを含むデータアクセス処理を行うもので、データアクセス処理ユニット300及びアクセスコマンドログテーブル119から構成される。
データアクセス処理ユニット300は、図1に示される記憶制御装置11内のマイクロプロセッサ115がROM117からメモリ(ローカルメモリ)116にコピーされたプログラム118を読み取って実行することにより実現される。データアクセス処理ユニット300は、キャッシュヒット判定部310、類似コマンド抽出部320、アクセス傾向判定部330、データアクセス処理決定部340、データアクセス部350及びテーブル管理部360から構成される。
キャッシュヒット判定部310は、ホスト計算機13から送信されたアクセスコマンド(現アクセスコマンド)でデータのリードが要求されている場合に、要求されたデータがキャッシュメモリ113に存在しているか否か、つまりキャッシュヒット/ミスヒットを判定する。類似コマンド抽出部320は、アクセスコマンドログテーブル119から現アクセスコマンドに類似したコマンド(類似コマンド)のログを抽出する。
アクセス傾向判定部330は、類似コマンド抽出部320によって抽出された類似コマンドのログに基づき、当該類似コマンドに関するホスト計算機13からのアクセスの傾向を判定する。アクセス傾向判定部330は、アクセス再出現率算出部331、アクセス出現率算出部332及び近傍領域決定部333を含む。
アクセス再出現率算出部331は、上記類似コマンドのログに基づき、当該類似コマンドの指定する記憶領域(同一領域)へのアクセスが再度出現する割合、つまり同一領域へのアクセスの再出現率(同一領域アクセス再出現率)をアクセスの傾向を表す指標として算出する。同一領域アクセス再出現率が高い場合、現アクセスコマンドで指定される記憶領域(指定領域)へのアクセスの再現率も高いこと、つまり指定領域と同一の領域に対するアクセスが近い将来発生する可能性が高いことが予測される。
アクセス出現率算出部332は、上記類似コマンドのログに基づき、当該類似コマンドの指定する記憶領域(指定領域)の近傍の領域(近傍領域)へのアクセスが出現する割合、つまり近傍領域へのアクセスの出現率(近傍領域アクセス出現率)をアクセスの傾向を表す指標として算出する。近傍領域アクセス出現率が高い場合、現アクセスコマンドで指定される記憶領域(指定領域)の近傍領域へのアクセスの出現率も高いこと、つまり指定領域の近傍領域に対するアクセスが近い将来発生する可能性が高いことが予測される。
近傍領域決定部333は、上記類似コマンドのログ及び現アクセスコマンドに基づき、当該現アクセスコマンドで指定される記憶領域の近傍領域を決定する。
データアクセス処理決定部340は、アクセス傾向判定部330によって判定されたアクセスの傾向、即ちアクセス再出現率算出部331によって算出された同一領域アクセス再出現率、アクセス出現率算出部332によって算出された近傍領域アクセス出現率及び近傍領域決定部333によって決定された近傍領域の情報に基づき、現アクセスコマンドに対応するデータアクセス処理を決定する。データアクセス処理は、現アクセスコマンドによって指定される読み出し/書き込みデータを対象とするキャッシュメモリ113へのアクセスを伴う処理、及び現アクセスコマンドの指定する領域(指定領域)の近傍領域のデータを対象とするキャッシュメモリ113へのアクセスを伴う処理の少なくとも一方の処理を含む。
データアクセス処理決定部340は、キャッシュ実行決定部341、先読み決定部342及びデステージング遅延決定部343を含む。
キャッシュ実行決定部341は、現アクセスコマンドの指定するアクセス種別(W/R種別)がリード(R)で、且つアクセス再出現率算出部331によって算出された同一領域アクセス再出現率が予め定められた一定値(第1の閾値)以上である場合に、現アクセスコマンドで指定されたデータをキャッシュメモリ113に保持することを決定する。先読み決定部342は、現アクセスコマンドの指定するW/R種別がリード(R)で、且つアクセス出現率算出部332によって算出された近傍領域アクセス出現率が予め定められた一定値(第2の閾値)以上である場合に、現アクセスコマンドの指定する記憶領域の近傍領域(近傍領域決定部333によって決定された近傍領域)のデータをキャッシュメモリ113に先読みすることを決定する。デステージング遅延決定部343は、現アクセスコマンドの指定するW/R種別がライト(W)で、且つアクセス再出現率算出部331によって算出された同一領域アクセス再出現率またはアクセス出現率算出部332によって算出された近傍領域アクセス出現率が閾値(第1の閾値または第2の閾値)以上である場合に、現アクセスコマンドで指定されたデータをキャッシュメモリ113から当該現アクセスコマンドの指定する記憶領域に書き込む処理(デステージング)のタイミングを遅延することを決定する。
データアクセス部350は、データアクセス処理決定部340(内のキャッシュ実行決定部341、先読み決定部342及びデステージング遅延決定部343)によって決定されたデータアクセス処理を実行する。テーブル管理部360は、アクセスコマンドログテーブル119及び次ポインタPを管理し、ホスト計算機13から送信されたアクセスコマンドのログを次ポインタPの指し示すアクセスコマンドログテーブル119内のエントリに追加する。
次に、図3に示されるデータアクセス処理ユニット300により実行されるデータアクセス処理について、リードアクセス処理とライトアクセス処理とに分けて、順次説明する。
まず、データアクセス処理ユニット300において実行されるリードアクセス処理について、図4乃至図7を参照して説明する。図4はリードアクセス処理の手順を示すフローチャート、図5は図4のフローチャートにおける近傍領域決定処理の手順を示すフローチャート、図6は図4のフローチャートにおける第1乃至第4のデータアクセス処理の手順を示すフローチャートである。図7は、近傍領域決定部333による近傍領域決定処理を説明するための図である。
今、ホスト計算機30から記憶制御装置11にホスト接続インタフェース21を介してW/R種別がリード(R)であるアクセスコマンド(リードアクセスコマンド、つまりリード要求)が送信されたものとする。このリードアクセスコマンドが記憶制御装置11によって受信されると、当該記憶制御装置11内に実現されるデータアクセス処理ユニット300では、次のようなリードアクセス処理が行われる。
まずデータアクセス処理ユニット300内のキャッシュヒット判定部310は、記憶制御装置11によって受信されたリードアクセスコマンド(現リードアクセスコマンド)で要求されたデータがキャッシュメモリ113に存在するか、つまりキャッシュヒットであるかを判定する(ステップS1)。もし、キャッシュヒットであるならば、データアクセス部350は、現リードアクセスコマンドで要求されたデータをキャッシュメモリ113から直ちに読み出してホスト計算機13に転送する(ステップS2)。するとテーブル管理部360は、現リードアクセスコマンドのログ、即ち現リードアクセスコマンドの指定するW/R種別であるリード(R)、先頭アドレス(先頭ブロックアドレス)及び転送サイズ(転送ブロックサイズ)の各情報を、次ポインタPの指し示すアクセスコマンドログテーブル119内のエントリに追加する(ステップS3)。このステップS3において、テーブル管理部360は次ポインタPを1インクリメントする。これにより、現リードアクセスコマンドに対応するリードアクセス処理は終了する。
これに対し、キャッシュヒットでないならば、つまりキャッシュミスヒットならば(ステップS1)、データアクセス処理ユニット300内の類似コマンド抽出部320が動作する。類似コマンド抽出部320は、アクセスコマンドログテーブル119から現リードアクセスコマンドに類似したコマンド(リードアクセスコマンド)のログを抽出する(ステップS3)。
本実施形態では、現リードアクセスコマンドに類似したコマンド(類似コマンド)の判定のための評価尺度として転送サイズが用いられる。ここでは、類似コマンドとして、例えば、W/R種別が同一(R)で、且つ転送サイズが同一のコマンド(第1のタイプの類似コマンド)、或いはW/R種別が同一(R)で、且つ転送サイズが同じ範囲内にあるコマンド(第2のタイプの類似コマンド)を予め定義することが可能である。転送サイズの範囲(転送サイズ範囲)としては、例えば、2KB(キロバイト)未満、2KB以上8KB未満、8KB以上16KB未満、16KB以上64KB未満及び64KB以上等である。また、第1のタイプの類似コマンドの判定のための評価尺度に用いられる転送サイズを、例えば2KB、8KB、16KB及び64KBのみとし、第2のタイプの類似コマンドの判定のための評価尺度に用いられる転送サイズ範囲を、例えば2KB未満、2KB超8KB未満、8KB超16KB未満、16KB超64KB未満及び64KB超とすることにより、第1及び第2のタイプの両類似コマンドを定義することも可能である。
類似コマンドの定義は、例えば図1の記憶制御装置11と直接または(ネットワーク等を介して)間接に接続されている端末から当該記憶制御装置11(内のデータアクセス処理ユニット300)に対し、管理者の操作に従って行うことができる。また、ROM117に格納されているプログラム118によって、類似コマンドを定義しても良い。
本実施形態では、類似コマンドの判定のための評価尺度として、W/R種別及び転送サイズの一致が定義されているものとする。つまり、本実施形態では類似コマンドとして第1のタイプの類似コマンドが定義されているものとする。
今、現アクセスコマンドのW/R種別がリード(R)、転送サイズが4h(単位はブロック)であるものとする。この場合、類似コマンド抽出部320は、図2に示すアクセスコマンドログテーブル119の例では、当該テーブル119から、W/R種別がリード(R)で、且つ転送サイズが4hの情報を含むコマンドのログ、即ちエントリ番号が「0,3,5,8,10,13」のアクセスコマンドログテーブル119内のエントリに格納されている各コマンドのログを、類似コマンドのログとして抽出する(ステップS4)。以下では、説明の簡略化のために、このようなコマンド(類似コマンド)を、エントリ番号が「0,3,5,8,10,13」のアクセスコマンド(またはコマンド)と表現する。他のエントリ番号のアクセスコマンドログテーブル119内のエントリに格納されているアクセスコマンドについても同様である。
類似コマンド抽出部320によって抽出された類似コマンドのログはアクセス傾向判定部330に渡される。するとアクセス傾向判定部330内のアクセス再出現率算出部331は、抽出された類似コマンドのログに基づき同一領域アクセス再出現率を算出する(ステップS5)。即ちアクセス再出現率算出部331は、抽出された類似コマンドのログに基づき、当該類似コマンドの指定する記憶領域(同一領域)へのアクセスの再現率を同一領域アクセス再出現率として算出する。この例では、エントリ番号「0」と「8」のアクセスコマンド及びエントリ番号「3」と「13」のアクセスコマンドが同一領域へのアクセスを指定している。したがって、同一領域へのアクセスの再出現率(同一領域アクセス再出現率)は、2/6=33%となる。
一方、アクセス傾向判定部330内のアクセス出現率算出部332は、抽出された類似コマンドのログに基づき、近傍領域アクセス出現率を算出する(ステップS6)。即ちアクセス出現率算出部332は、抽出された類似コマンドのログに基づき、当該類似コマンドの指定する記憶領域(同一領域)の近傍の領域(近傍領域)へのアクセスの出現率を近傍領域アクセス出現率として算出する。本実施形態では、近傍領域を、類似コマンドの判定のための評価尺度と同様にして、予め定義することが可能である。ここでは近傍領域として、ある類似コマンドの指定する記憶領域に対して連続している領域が定義されているものとする。このように近傍領域が定義されている場合、図2のアクセスコマンドログテーブル119の例では、エントリ番号が「0,3,5,8,10,13」の何れのコマンドも、互いに同一領域または大きく離れた領域へのアクセスであるため、近傍領域アクセス出現率は0%となる。
もし、上記の例とは異なり、ホスト計算機13からのW/R種別がリード(R)であるアクセスコマンドの転送サイズが100hであったならば、類似コマンド抽出部320は図2に示すアクセスコマンドログテーブル119から、エントリ番号が「2,9,12,14」の各コマンドのログを、類似コマンドのログとして抽出する(ステップS4)。この類似コマンドのログの例では、何れのコマンドの指定する記憶領域も一致しないため、同一領域アクセス再出現率は0%となる(ステップS5)。一方、近傍領域アクセス出現率は、エントリ番号が「2」,「9」,「14」のアクセスコマンドが連続した領域へのアクセスであることから、2/4=50%となる(ステップS6)。なお、ステップS5,S6の処理の順序は本実施形態の逆であっても構わない。
アクセス傾向判定部330内の近傍領域決定部333は、抽出された類似コマンドのログ及び現アクセスコマンドに基づき、当該現リードアクセスコマンドの指定する記憶領域(指定領域)の近傍領域を決定(推定)するための近傍領域決定処理(ステップS7)を実行する。この近傍領域決定部333による近傍領域決定処理(ステップS7)の手順について、図5のフローチャートを参照して説明する。
まず近傍領域決定部333は、抽出された類似コマンドのログに基づき、現リードアクセスコマンドの指定する転送サイズと一致するサイズの記憶領域の群の中から、連続する記憶領域の群(の組)を特定する(ステップS7a)。このステップS7aの処理では、まず抽出された類似コマンド群の中から、互いに近接した記憶領域(近傍領域)へのアクセスを指定するコマンド群への絞り込みが行われる。そして、絞り込まれたコマンド群によってそれぞれ指定される記憶領域に基づき、連続する記憶領域の群が特定される。
次に近傍領域決定部333は、特定された記憶領域の群に対応する類似コマンド群の中で最初に実行された類似コマンド(先頭の類似コマンド)を特定する(ステップS7b)。そして近傍領域決定部333は、特定された記憶領域の群と、当該記憶領域の群のうちの特定された先頭の類似コマンドに対応する記憶領域と、現リードアクセスコマンドの指定する記憶領域(指定領域)とに基づき、当該指定領域の近傍領域を決定する(ステップS7c)。このステップS7cにおいて近傍領域決定部333は、特定された記憶領域の群のうち特定された先頭の類似コマンドに対応する記憶領域(第1の記憶領域)が上記指定領域と対応していることを前提に、当該指定領域の近傍領域を次のように決定する。
まず近傍領域決定部333は、特定された記憶領域の群のうちの第1の記憶領域が指定領域と対応するように、当該特定された記憶領域の群からなる領域を論理記憶装置120内の記憶領域(第2の記憶領域)に対応させる。そして近傍領域決定部333は、第2の記憶領域のうち指定領域を除く領域を当該指定領域の近傍領域(現リードアクセスコマンドの指定する記憶領域の近傍領域)として決定する。
近傍領域決定部333によって決定される近傍領域は、特定された記憶領域の群における第1の記憶領域の位置によって3種に分類される。もし、第1の記憶領域が、特定された記憶領域の群の先頭位置の場合、近傍領域は指定領域の後方(アドレスが大きい側)に隣接する記憶領域となる。第1の記憶領域が、特定された記憶領域の群の最終位置の場合、近傍領域は指定領域の前方(アドレスが小さい側)に隣接する記憶領域となる。第1の記憶領域が、特定された記憶領域の群の先頭位置及び最終位置の何れでもない場合、近傍領域は、指定領域の前方に隣接する記憶領域と後方に隣接する記憶領域の2つの領域となる。
ここで、特定された記憶領域の群のうちの上記第1の記憶領域(先頭の類似コマンドに対応する記憶領域)が指定領域と対応していることを前提とする理由について説明する。本実施形態では、指定領域のデータがキャッシュメモリ113に保持されていないキャッシュミスヒットの場合で、且つアクセス出現率算出部332によって算出された近傍領域アクセス出現率が予め定められた一定値(第2の閾値)以上の場合、後述するように当該指定領域の近傍領域のデータがキャッシュメモリ113に先読みされる。このため、もしも特定された記憶領域の群のうちの第1の記憶領域以外の領域(第3の領域)が指定領域と対応しているならば、現リードアクセスコマンドの実行時には、当該指定領域を含む近傍領域のデータが既にキャッシュメモリ113に先読みされていることとなって、キャッシュヒットとなるはずである。したがって、現リードアクセスコマンドの実行時にキャッシュミスヒットとなるのは、特定された記憶領域の群のうちの第1の記憶領域が指定領域と対応していることを意味する。
ここで、近傍領域決定部333によって決定される近傍領域について、図7を参照して詳細に説明する。図7(a)乃至(c)に示される連続する記憶領域71、記憶領域72及び記憶領域73は同一サイズであり、上記特定された記憶領域の群を表す。図7では、記憶領域71、記憶領域72及び記憶領域73の順でアドレスが大きくなるものとする。
図7(a),(b)及び(c)において、それぞれハッチングが施されていない記憶領域71,72及び73は、その記憶領域に対応する類似コマンドが、3つの記憶領域71乃至73に対応する類似コマンドの群の中で最初に実行されていることを示す。つまり、記憶領域71,72及び73のうちのハッチングが施されていない記憶領域は上記第1の記憶領域を示す。
また、図7(a),(b)及び(c)には、記憶領域71,72及び73と対応付けられる記憶領域710,720及び730が示されている。図7(a),(b)及び(c)において、それぞれハッチングが施されていない記憶領域710,720及び730は指定領域を示す。図7(a),(b)及び(c)では、特定された記憶領域71乃至73のうちのハッチングが施されていない記憶領域(第1の記憶領域)が、記憶領域710,720及び730のうちのハッチングが施されていない指定領域と対応するように、記憶領域71乃至73からなる記憶領域74が、記憶領域710,720及び730からなる記憶領域(第2の記憶領域)740に対応付けられている。
図7(a)では、記憶領域720及び730が、記憶領域71乃至73のうち記憶領域(第1の記憶領域)71を除く記憶領域72及び73に対応する。そこで図7(a)の場合、記憶領域720及び730からなる記憶領域(ハッチングが施された記憶領域)が近傍領域750として決定される。図7(b)では、記憶領域710及び730が、記憶領域71乃至73のうち記憶領域(第1の記憶領域)72を除く記憶領域71及び73に対応する。そこで図7(b)の場合、記憶領域(ハッチングが施された記憶領域)710及び730がそれぞれ近傍領域760及び770として決定される。図7(c)では、記憶領域710及び720が、記憶領域71乃至73のうち記憶領域(第1の記憶領域)73を除く記憶領域71及び72に対応する。そこで図7(c)の場合、記憶領域710及び720からなる記憶領域(ハッチングが施された記憶領域)が近傍領域780として決定される。
ここで、近傍領域決定部333による近傍領域決定処理の具体例について説明する。ここでは、上述のように、エントリ番号が「2,9,12,14」の各コマンドのログが類似コマンドのログとして抽出されたものとする。この場合、エントリ番号が「2,9,14」の各コマンドで指定された連続する3つの記憶領域、即ち先頭アドレスが2800h、サイズが100hの記憶領域、先頭アドレスが2900h、サイズが100hの記憶領域、及び先頭アドレスが3A00h、サイズが100hの記憶領域が特定される(ステップS7a)。また、エントリ番号が「2,9,14」の各コマンドのうち、エントリ番号が「2」のコマンドが先頭類似コマンドとして特定される(ステップS7b)。
そして、特定された3つの記憶領域のうち、先頭類似コマンドに対応する先頭アドレスが2800h、サイズが100hの記憶領域(第1の記憶領域)が、現リードアクセスコマンドの指定するサイズ100hの領域(指定領域)と対応するように、当該特定された3つの記憶領域からなるサイズ300hの記憶領域(つまり先頭アドレスが2800h、サイズが300hの記憶領域)が、現リードアクセスコマンドの指定するサイズ100hの領域(指定領域)を含むサイズ300hの記憶領域(第2の記憶領域)に対応させられる。この場合、図7(c)と同様に、指定領域の後方で当該指定領域に隣接するサイズ200hの記憶領域が近傍領域として決定される(ステップS7c)。
なお、上記の例では、抽出された類似コマンドのログに基づいて特定される連続する記憶領域の群の組が1つである。しかし、このような連続する記憶領域の群の組が複数特定されることもある。このような場合、これらの複数の組のサイズの平均値を連続する記憶領域の群及び第2の記憶領域のサイズとすれば良い。
また、W/R種別が同一で、且つ転送サイズが同じ転送サイズ範囲内にあるコマンドを類似コマンド(第2のタイプの類似コマンド)として抽出する場合には、図7に示される記憶領域71乃至73及び710乃至730に代えて、当該記憶領域71乃至73及び710乃至730がそれぞれ属する転送サイズ範囲に対応する記憶領域を用いれば良い。
さて、近傍領域決定部333によって決定された近傍領域の先頭アドレス及びサイズは、それぞれ近傍領域の情報をなす先読み先頭アドレス及び先読みサイズとして、データアクセス処理決定部340に通知される。先読み先頭アドレス及び先読みサイズは、後述する第1のデータアクセス処理(ステップS11)または第3のデータアクセス処理(ステップS13)が実行される場合に、当該データアクセス処理で用いられる。
アクセス再出現率算出部331及びアクセス出現率算出部332によってそれぞれ算出された同一領域アクセス再出現率及び近傍領域アクセス出現率、並びに近傍領域決定部333によって決定された近傍領域の情報(先読み先頭アドレス及び先読みサイズの情報)は、データアクセス処理決定部340に通知される。するとデータアクセス処理決定部340内のキャッシュ実行決定部341は、現アクセスコマンドのW/R種別がリード(R)の場合、同一領域アクセス再出現率が予め定められた第1の閾値以上であるかを判定する(ステップS8)。キャッシュ実行決定部341は、この判定結果に基づき、現アクセスコマンドで指定されてキャッシュメモリ113に格納されたデータを当該キャッシュメモリ113に保持するか否か(削除するか)を決定する。
一方、データアクセス処理決定部340内の先読み決定部342は、同一領域アクセス再出現率が第1の閾値未満である場合または第1の閾値以上である場合のそれぞれにおいて、近傍領域アクセス出現率が予め定められた第2の閾値以上であるかを判定する(ステップS9またはS10)。先読み決定部342は、この判定結果に基づき、現アクセスコマンドの指定する記憶領域の近傍領域のデータをキャッシュメモリ113に先読みするか否かを決定する。
以上のキャッシュ実行決定部341及び先読み決定部342の決定結果(判定結果)は、データアクセス処理決定部340によってデータアクセス部350に通知される。するとデータアクセス部350は、通知された決定結果に基づき、第1のデータアクセス処理(ステップS11)、第2のデータアクセス処理(ステップS12)、第3のデータアクセス処理(ステップS13)及び第4のデータアクセス処理(ステップS14)の何れか1つを実行する。
まず、同一領域アクセス再現率が第1の閾値未満(ステップS8がNO)で、近傍領域アクセス出現率が第2の閾値以上(ステップS9がYES)であるために、現アクセスコマンドで指定されたデータ(指定データ)のキャッシュメモリ113からの削除と近傍領域のデータの先読みとが決定された場合、第1のデータアクセス処理(ステップS11)が実行される。次に、同一領域アクセス再出現率が第1の閾値未満(ステップS8がNO)で、近傍領域アクセス出現率が第2の閾値未満(ステップS9がNO)であるために、指定データのキャッシュメモリ113からの削除と近傍領域のデータの先読み無しとが決定された場合、第2のデータアクセス処理(ステップS12)が実行される。次に、同一領域アクセス再出現率が第1の閾値以上(ステップS8がYES)で、近傍領域アクセス出現率が第2の閾値以上(ステップS10がYES)であるために、指定データのキャッシュメモリ113への保持と近傍領域のデータの先読みとが決定された場合、第3のデータアクセス処理(ステップS13)が実行される。そして、同一領域アクセス再出現率が第1の閾値以上(ステップS8がYES)で、近傍領域アクセス出現率が第2の閾値未満(ステップS10がNO)であるために、指定データのキャッシュメモリ113への保持と近傍領域のデータの先読み無しとが決定された場合、第4のデータアクセス処理(ステップS14)が実行される。
ここで、第1及び第2の閾値が何れも30%であるとすると、前述の転送サイズが4hのリードアクセスコマンドの場合、同一領域アクセス再出現率は第1の閾値以上、近傍領域アクセス出現率は第2の閾値未満となる。この場合、第4のデータアクセス処理(ステップS14)が実行される。これに対して、前述の転送サイズが100hのリードアクセスコマンド場合、同一領域アクセス再出現率は第1の閾値未満、近傍領域アクセス出現率は第2の閾値以上となる。この場合、第1のデータアクセス処理(ステップS11)が実行される。
ステップS11〜S14のデータアクセス処理の何れか1つが実行されると、テーブル管理部360はステップS2が実行された場合と同様に、前記ステップS3を実行する。
次に上記各データアクセス処理(ステップS11〜S14)について順次説明する。
まず、第1のデータアクセス処理(ステップS11)について、図6(a)のフローチャートを参照して説明する。第1のデータアクセス処理は、同一領域アクセス再出現率が低く、近傍領域アクセス出現率が高い場合の処理である。
同一領域アクセス再出現率が低い場合、現リードアクセスコマンドに基づいて論理記憶装置120から読み出されたデータが、ホスト計算機13から新たに送信されるリードアクセスコマンドで再度読み出される可能性は低いと予測される。したがって、現リードアクセスコマンドに基づいて読み出されたデータをキャッシュメモリ113に保持しておいたとしても、近い将来当該データにキャッシュヒットすることは期待できない。
一方、近傍領域アクセス出現率が高い場合、現リードアクセスコマンドの指定する記憶領域(指定領域)の近傍領域へのアクセスが発生する可能性が高いと予測される。したがって、指定領域の近傍領域のデータをキャッシュメモリ113に先読みして当該キャッシュメモリ113に保持するならば、近い将来当該近傍領域のデータにキャッシュヒットすることが期待できる。
そこでデータアクセス部350は、第1のデータアクセス処理において、現リードアクセスコマンドによって指定された論理記憶装置120内の記憶領域(指定領域)のデータ(ホスト計算機13から要求されたデータ)をキャッシュメモリ113に読み込むと共に、近傍領域決定部333によって決定された(先読み先頭アドレス及び先読みサイズで示される)近傍領域のデータ(先読みサイズ分のデータ)をキャッシュメモリ113に先読みする(ステップS11a)。即ちデータアクセス部350は、「ホスト計算機13からの要求サイズ+先読みサイズ」分のデータをキャッシュメモリ113に読み込む。
次に、データアクセス部350は、キャッシュメモリ113に読み込まれたデータのうち、ホスト計算機13から要求されたデータを当該ホスト計算機13に転送する(ステップS11b)。データアクセス部350は、このデータの転送後、直ちに当該データをキャッシュメモリ113から削除して、当該データが保持されていたキャッシュメモリ113内の領域を解放する(ステップS11c)。これにより第1のデータアクセス処理は終了する。
ステップS11cの処理の結果、再度読み出される可能性が低いデータによってキャッシュメモリ113内の領域が占有される無駄を無くすことができる。一方、キャッシュメモリ113に先読みされた、ホスト計算機13からのアクセスが発生する可能性が高い近傍領域のデータは当該キャッシュメモリ113に保持されているため、当該データがホスト計算機13から要求された場合に、直ちに当該データをホスト計算機13に転送することができる。
このように本実施形態においては、キャッシュメモリ113の限られた領域(キャッシュメモリリソース)を、より効果の高いアクセスに対し優先的に割り当てることにより、当該キャッシュメモリ113の最良の効果を得ることができる。しかも、より効果の高いアクセスである(つまり、同一領域アクセス再出現率、或いは近傍領域アクセス出現率が高い)かの判定には、現アクセスコマンドそれ自体を含むコマンド列の指定するアクセスの傾向ではなくて、アクセスコマンドログテーブル119から抽出された現アクセスコマンドに類似のコマンドのアクセス傾向が用いられる。このため、ホスト計算機13からのアクセスが同時期に多種多様に混在して存在する場合であっても、少ないアクセスコマンド列(特許文献2に記載された先読み閾値より少ない回数)で完結するようなシーケンシャルアクセスであっても、キャッシュメモリ113へのアクセスを伴う、現アクセスコマンドに対応する最適なデータアクセス処理を簡単に決定することができる。また、ホスト計算機13からのアクセスが同時期に多種多様に混在して存在する場合に容易に対応できるため、論理記憶装置が大容量化しても、特許文献1に記載の技術で適用される統計情報に相当するアクセスコマンドのログを保持するアクセスコマンドログテーブルに必要な記憶容量の増加を抑えることができる。
次に、第2のデータアクセス処理(ステップS12)について、図6(b)のフローチャートを参照して説明する。第2のデータアクセス処理は、同一領域アクセス再出現率が低く、且つ近傍領域アクセス出現率も低い場合の処理である。同一領域アクセス再出現率が低い場合、前述したように現リードアクセスコマンドに基づいて読み出されたデータが近い将来再度読み出される可能性は低い。また、近傍領域アクセス出現率が低い場合、指定領域の近傍領域へのアクセスが近い将来発生する可能性も低い。
そこでデータアクセス部350は、第2のデータアクセス処理において、現リードアクセスコマンドによって指定された論理記憶装置120内の記憶領域(指定領域)のデータ(ホスト計算機13から要求されたデータ)のみをキャッシュメモリ113に読み込む(ステップS12a)。
次に、データアクセス部350は、キャッシュメモリ113に読み込まれたデータ(ホスト計算機13から要求されたデータ)をホスト計算機13に転送する(ステップS12b)。データアクセス部350は、このデータの転送後、直ちに当該データをキャッシュメモリ113から削除して、当該データが保持されていたキャッシュメモリ113内の領域を解放する(ステップS12c)。これにより第2のデータアクセス処理は終了する。
次に、第3のデータアクセス処理(ステップS13)について、図6(c)のフローチャートを参照して説明する。第3のデータアクセス処理は、同一領域アクセス再出現率が高く、且つ近傍領域アクセス出現率も高い場合の処理である。同一領域アクセス再出現率が高い場合、現リードアクセスコマンドに基づいて読み出されたデータが近い将来再度読み出される可能性が高い。また、近傍領域アクセス出現率が高い場合、前述したように指定領域の近傍領域へのアクセスが近い将来発生する可能性も高い。
そこでデータアクセス部350は、第3のデータアクセス処理において、先の第1のデータアクセス処理と同様に、現リードアクセスコマンドによって指定された論理記憶装置120内の記憶領域(指定領域)のデータをキャッシュメモリ113に読み込むと共に、近傍領域決定部333によって決定された(先読み先頭アドレス及び先読みサイズで示される)近傍領域のデータをキャッシュメモリ113に先読みする(ステップS13a)。
次に、データアクセス部350は、キャッシュメモリ113に読み込まれたデータのうち、ホスト計算機13から要求されたデータを当該ホスト計算機13に転送する(ステップS13b)。これにより第3のデータアクセス処理は終了する。このように第3のデータアクセス処理では、ホスト計算機13から要求された指定領域のデータがキャッシュメモリ113に保持されると共に、その近傍領域のデータが当該キャッシュメモリ113に先読みされる。
次に、第4のデータアクセス処理(ステップS14)について、図6(d)のフローチャートを参照して説明する。第4のデータアクセス処理は、同一領域アクセス再出現率が高く、近傍領域アクセス出現率が低い場合の処理である。このような場合、指定領域から読み出されたデータが近い将来再度読み出される可能性は高いものの、その近傍領域へのアクセスが近い将来発生する可能性は低い。
そこでデータアクセス部350は、第4のデータアクセス処理において、現リードアクセスコマンドによって指定された論理記憶装置120内の記憶領域(指定領域)のデータ(ホスト計算機13から要求されたデータ)のみをキャッシュメモリ113に読み込む(ステップS14a)。
次に、データアクセス部350は、キャッシュメモリ113に読み込まれたデータ(ホスト計算機13から要求されたデータ)をホスト計算機13に転送する(ステップS14b)。これにより第4のデータアクセス処理は終了する。
上述のように本実施形態においては、キャッシュヒットの期待できるデータを優先的にキャッシュメモリ113に保持し、また、後にアクセスされることが期待されるデータを先行して論理記憶装置120から読み出し、キャッシュメモリ113に保持しておくことにより、キャッシュメモリ113の限られた記憶領域(キャッシュメモリリソース)を有効活用し、キャッシュヒット率を向上させ、その結果アクセス性能を向上させることができる。
次に、データアクセス処理ユニット300において実行されるライトアクセス処理について、図8のフローチャートを参照して説明する。
今、ホスト計算機30から記憶制御装置11にホスト接続インタフェース21を介してW/R種別がライト(W)であるアクセスコマンド(ライトアクセスコマンド、つまりライト要求)が送信されたものとする。このライトアクセスコマンドが記憶制御装置11によって受信されると、データアクセス処理ユニット300では、次のようなライトアクセス処理が行われる。
まず類似コマンド抽出部320が、先に述べたリードアクセスコマンドの場合と同様に、アクセスコマンドログテーブル119から現ライトアクセスコマンドに類似したコマンド(ライトアクセスコマンド)のログを抽出する(ステップS21)。
するとアクセス傾向判定部330内のアクセス再出現率算出部331は、抽出された類似コマンドのログに基づき同一領域アクセス再出現率を算出する(ステップS22)。一方、アクセス傾向判定部330内のアクセス出現率算出部332は、抽出された類似コマンドのログに基づき、近傍領域アクセス出現率を算出する(ステップS23)。これらのステップS22及びS23は、前述のリードアクセス処理におけるステップS5及びS6と同様に行われる。
データアクセス処理決定部340内のデステージング遅延決定部343は、現アクセスコマンドのW/R種別がライト(W)の場合、アクセス再出現率算出部331によって算出された同一領域アクセス再出現率またはアクセス出現率算出部332によって算出された近傍領域アクセス出現率が、それぞれ第1の閾値または第2の閾値(ここでは、第1の閾値=第2の閾値)以上であるかを判定する(ステップS24)。
もし、同一領域アクセス再出現率または近傍領域アクセス出現率が閾値(第1の閾値または第2の閾値)以上の場合、現アクセスコマンドで指定される記憶領域(指定領域)と同一の領域または近傍領域に対するアクセスが近い将来発生する可能性が高いことが予測される。
そこでデステージング遅延決定部343は、ステップS24での判定結果に基づき、ホスト計算機13からの現ライトアクセスコマンドで指定されたライトデータをキャッシュメモリ113に格納した後に当該ライトデータを論理記憶装置120(を構成するHDD12)に書き込む処理(デステージング)を、遅延させるか直ちに実行させるかを決定する。具体的には、同一領域アクセス再出現率または近傍領域アクセス出現率が閾値以上の場合(テップS24のYES)、デステージング遅延決定部343は、デステージングの遅延を決定する。これに対して、同一領域アクセス再出現率または近傍領域アクセス出現率が閾値未満の場合(ステップS24のNO)、デステージング遅延決定部343は、デステージングを直ちに実行させることを決定する。
デステージング遅延決定部343による決定結果(判定結果)はデータアクセス部350に通知される。するとデータアクセス部350は、通知された決定結果に基づき、ステップS25及びS26の何れか一方を次のように実行する。
まず、同一領域アクセス再出現率が閾値(第1の閾値)以上であると判定された結果、デステージングの遅延が決定されたものとする。この場合、データアクセス部350は、論理記憶装置120へのデステージングを遅延するモード(第1のモード)で、ホスト計算機13からの現ライトアクセスコマンドで指定されたライトデータをキャッシュメモリ113に格納する(ステップS25)。これにより、現ライトアクセスコマンドで指定された記憶領域(指定領域)と同一の領域に対するライトアクセスが発生する可能性が高いために、キャッシュメモリ113から論理記憶装置120内の当該同一の領域へのデータのデステージングの回数(書き込み回数)が増加するのを防止できる。
同様に、近傍領域アクセス出現率が閾値以上であると判定された結果、デステージングの遅延が決定されたものとする。この場合も、データアクセス部350は、上記第1のモード(論理記憶装置120へのデステージングを遅延するモード)で、ホスト計算機13からの現ライトアクセスコマンドで指定されたライトデータをキャッシュメモリ113に格納する(ステップS25)。これにより、現ライトアクセスコマンドで指定された記憶領域(指定領域)の近傍領域に対するライトアクセスが発生した場合に、キャッシュメモリ113から論理記憶装置120内の当該指定領域及び近傍領域へ一括してデータを書き込むことが可能となり、デステージングの回数(書き込み回数)を削減することができる。
一般に論理記憶装置120(を構成するHDD12)はホスト計算機13やキャッシュメモリ113に比べ性能が低いため、アクセスの負荷が高くなると、当該記憶装置120へのアクセスがボトルネックとなることが多い。このため、論理記憶装置120への書き込み回数を削減することは、アクセス性能の向上に寄与する。また、ライトデータがキャッシュメモリ113に保持される期間が長くなるため、当該データのリードを要求するリードアクセスコマンドがホスト計算機13から送られた場合にはキャッシュヒットとなって、当該ホスト計算機13に対して高速に応答できる効果もある。
これに対し、同一領域アクセス再出現率及び近傍領域アクセス出現率の何れも閾値以下であると判定された結果、デステージングを直ちに行うことが決定されたものとする。この場合、データアクセス部350は、論理記憶装置120へのデステージングを直ちに行うモード(第2のモード)で、ホスト計算機13からの現ライトアクセスコマンドで指定されたライトデータをキャッシュメモリ113に格納する(ステップS26)。第2のモードでは、キャッシュメモリ113に格納されたライトデータのデステージングが直ちに行われた後に、当該データがキャッシュメモリ113から削除されて、当該データが保持されていたキャッシュメモリ113内の領域が解放される。
同一領域アクセス再出現率及び近傍領域アクセス出現率の何れも閾値以下の場合、近い将来に同一領域または近傍領域へのアクセスが発生することは期待できない。このような場合に、現ライトアクセスコマンドで指定されたライトデータをキャッシュメモリ113に保持しておくことは当該キャッシュメモリ113の利用効率を低下させる。しかし本実施形態では、上記第2のモードでライトデータがキャッシュメモリ113に格納される(ステップS26)。このため、キャッシュメモリ113に格納されたライトデータのデステージングが直ちに行われ、しかる後に当該データがキャッシュメモリ113から削除されて、当該キャッシュメモリ113内の対応する領域が解放される。これにより、キャッシュメモリ113の利用効率の低下を防止できる。
ステップS25及びS26の何れか一方が実行されると、テーブル管理部360は、現ライトアクセスコマンドのログ、即ち現ライトアクセスコマンドの指定するW/R種別であるライト(W)、先頭アドレス及び転送サイズの各情報を、次ポインタPの指し示すアクセスコマンドログテーブル119内のエントリに追加する(ステップS27)。このステップS27において、テーブル管理部360は次ポインタPを1インクリメントする。これにより、現ライトアクセスコマンドに対応するライトアクセス処理は終了する。
なお、アクセス傾向判定部330がアクセス再出現率算出部331及びアクセス出現率算出部332のいずれか一方のみを有していても構わない。もし、アクセス傾向判定部330がアクセス再出現率算出部331のみを有している場合のリードアクセス処理では、データアクセス処理決定部340は、同一領域アクセス再出現率に応じて第2のデータアクセス処理または第4のデータアクセス処理を決定すれば良い。同様に、アクセス傾向判定部330がアクセス出現率算出部332のみを有している場合のリードアクセス処理では、データアクセス処理決定部340は、近傍領域アクセス出現率に応じて第3のデータアクセス処理または第4のデータアクセス処理を決定すれば良い。
[変形例]
次に上記実施形態の変形例について説明する。この変形例の特徴は、論理記憶装置120の記憶領域を複数のゾーンに分割し、ゾーン毎に、上記実施形態で適用された、類似コマンドの抽出を含む処理を適用することにある。
図9は、複数のゾーンに分割された論理記憶装置120と当該複数のゾーンを管理するためのゾーン管理テーブル90とを示す。図9の例では、論理記憶装置120の記憶領域はM+1個のゾーンZ0(#0),Z1(#1),Z2(#2),…ZM(#M)に分割して管理される。ここでゾーンZ0〜ZMのサイズは均等でも均等でなくても構わない。もし、論理記憶装置120内の部分的な領域毎に予め用途が定められているならば、その領域毎にゾーンを定義すると良い。
ゾーン管理テーブル90は、論理記憶装置120のゾーン数に一致するM+1個のエントリを有する。ゾーン管理テーブル90のエントリ番号i(i=0〜M)のエントリは、当該エントリ番号iに一致するゾーン番号iのゾーンZiの情報(ゾーン情報)を保持するのに用いられる。ゾーン管理テーブル90の各エントリは、フィールド91及び92から構成される。テーブル90のエントリ番号i(i=0〜M)のエントリのフィールド91及び92は、それぞれゾーン番号iのゾーンZiの先頭アドレス(先頭ブロックアドレス)及びサイズ(ブロックサイズ)の情報を保持するのに用いられる。
上述のように、ゾーン管理テーブル90のエントリ番号iのエントリは、当該エントリ番号iに一致するゾーン番号iのゾーンZiの情報を保持するのに用いられる。したがって、ゾーン管理テーブル90の各エントリに、対応するゾーンZiのゾーン番号を保持するフィールドが確保されていなくても、当該エントリのエントリ番号iから対応するゾーンZiを特定できる。勿論、ゾーン管理テーブル90の各エントリに、対応するゾーンZiのゾーン番号を保持するフィールドが確保されていても構わない。
本変形例では、ゾーンZ0〜ZM毎に、図2に示される構造のアクセスコマンドログテーブル119が用意される。類似コマンド抽出部320は、ホスト計算機13からのアクセスコマンドに基づいて類似コマンドのログを抽出する場合、ゾーン管理テーブル90を参照して、当該アクセスコマンドで指定されるアクセスコマンドログテーブル119内の記憶領域(指定領域)がゾーンZ0〜ZMのうちの何れのゾーンに属しているかを判定する。類似コマンド抽出部320は、判定されたゾーンに対応するアクセスコマンドログテーブル119に基づいて、類似コマンドのログを抽出する。
このように、ゾーン毎に、上記実施形態で適用された、類似コマンドの抽出を含む処理を適用することにより、アクセスの傾向に局所性のあるような場合は、同一領域アクセス再出現率及び近傍領域アクセス出現率の判定の精度を向上させる効果が期待できる。
なお、ホスト計算機13に複数の論理記憶装置が提供される場合には、論理記憶装置毎にゾーン管理テーブル90を用意して、論理記憶装置毎で且つゾーン毎にアクセスコマンドログテーブル119を用意すれば良い。
本発明は、上記実施形態またはその変形例そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態またはその変形例に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態またはその変形例に示される全構成要素から幾つかの構成要素を削除してもよい。
本発明の一実施形態に係る計算機システムの構成を示すブロック図。 図1に示されるアクセスコマンドログテーブルのデータ構造例を次ポインタと対応付けて示す図。 図1に示される記憶制御装置内に実現されるデータアクセス処理装置の構成を示すブロック図。 同実施形態におけるリードアクセス処理の手順を示すフローチャート。 図4のフローチャートにおける近傍領域決定処理の手順を示すフローチャート。 図4のフローチャートにおける第1乃至第4のデータアクセス処理の手順を示すフローチャート。 上記近傍領域決定処理を説明するための図。 同実施形態におけるライトアクセス処理の手順を示すフローチャート。 同実施形態の変形例で適用される、複数のゾーンに分割された論理記憶装置と当該複数のゾーンを管理するためのゾーン管理テーブルとを示す図。
符号の説明
11…記憶制御装置、12…HDD(記憶装置)、13…ホスト計算機、30…データアクセス処理装置、90…ゾーン管理テーブル、113…キャッシュメモリ、115…マイクロプロセッサ、116…メモリ(ローカルメモリ)、117…ROM、118…プログラム、119…アクセスコマンドログテーブル、120…論理記憶装置、300…データアクセス処理ユニット、310…キャッシュヒット判定部、320…類似コマンド抽出部、330…アクセス傾向判定部、331…アクセス再出現率算出部、332…アクセス出現率算出部、333…近傍領域決定部、340…データアクセス処理決定部、341…キャッシュ実行決定部、342…先読み決定部、343…デステージング遅延決定部、350…データアクセス部、360…テーブル管理部。

Claims (11)

  1. ホスト計算機及び少なくとも1つの記憶装置と接続され、前記記憶装置の一部または全ての領域を使用して前記ホスト計算機に対して論理記憶装置を提供すると共に、前記ホスト計算機と前記記憶装置との間のデータ転送を処理し、前記ホスト計算機からのアクセスコマンドによって指定された読み出し/書き込みデータを一時的に保持するための前記記憶装置よりも高速なキャッシュメモリと、前記アクセスコマンドの指定するアクセス種別、並びに前記アクセスコマンドの指定する前記論理記憶装置内の領域を示す先頭アドレス及び転送サイズまたは当該転送サイズが属する転送サイズ範囲の情報を当該アクセスコマンドのログとして保持するためのアクセスコマンドログテーブルとを有する記憶制御装置において実行される、前記ホスト計算機からのアクセスコマンドに従うデータアクセスを処理するデータアクセス処理方法であって、
    前記ホスト計算機から前記記憶制御装置に与えられる今回処理されるべき現アクセスコマンドに基づき前記アクセスコマンドログテーブルを参照することにより、当該現アクセスコマンドと同一アクセス種別で、且つ当該現アクセスコマンドと同一転送サイズまたは同一転送サイズ範囲の全てのアクセスコマンドのログを、当該現アクセスコマンドと特徴が類似した類似コマンドのログとして抽出するステップと、
    前記抽出された全ての類似コマンドのログに基づき、アクセスの傾向を判定するステップと、
    前記判定されたアクセスの傾向に基づき、前記現アクセスコマンドに対応するデータアクセス処理であって、前記現アクセスコマンドによって指定される読み出し/書き込みデータを対象とする前記キャッシュメモリへのアクセスを伴う処理及び前記現アクセスコマンドの指定する領域の近傍の領域のデータを対象とする前記キャッシュメモリへのアクセスを伴う処理の少なくとも一方を含むデータアクセス処理を決定するステップと、
    前記決定されたデータアクセス処理を実行するステップと、
    前記現アクセスコマンドのログを前記アドレスコマンドログテーブルに追加するステップと
    を具備することを特徴とするデータアクセス処理方法。
  2. 前記アクセスの傾向を判定するステップは、前記抽出された類似コマンドのログに基づき、当該類似コマンドの指定する同一領域へのアクセスが再度出現する割合である同一領域アクセス再出現率を前記アクセスの傾向を表す指標として算出するステップを含み、
    前記データアクセス処理を決定するステップでは、前記算出された同一領域アクセス再出現率が予め定められた閾値以上であるかに基づいて、前記データアクセス処理が決定される
    ことを特徴とする請求項1記載のデータアクセス処理方法。
  3. 前記データアクセス処理を決定するステップでは、前記現アクセスコマンドの指定するアクセス種別と、前記算出された同一領域アクセス再出現率が予め定められた閾値以上であるか否かとに基づいて、前記現アクセスコマンドの指定するデータを前記キャッシュメモリに保持するか否か、または前記現アクセスコマンドの指定するデータを前記キャッシュメモリから前記論理記憶装置へ書き込むデステージングのタイミングを遅延させるか否かが決定される
    ことを特徴とする請求項2記載のデータアクセス処理方法。
  4. 前記データアクセス処理を決定するステップでは、前記現アクセスコマンドの指定するアクセス種別がリードの場合、前記算出された同一領域アクセス再出現率が予め定められた閾値以上であるかに基づいて、前記現アクセスコマンドの指定するデータを前記キャッシュメモリに保持するかが決定される
    ことを特徴とする請求項3記載のデータアクセス処理方法。
  5. 前記データアクセス処理を決定するステップでは、前記現アクセスコマンドの指定するアクセス種別がライトの場合、前記算出された同一領域アクセス再出現率が予め定められた閾値以上であるかに基づいて、前記現アクセスコマンドの指定するデータを前記キャッシュメモリから前記論理記憶装置へ書き込むデステージングのタイミングを遅延させるかが決定されることを特徴とする請求項3記載のデータアクセス処理方法。
  6. 前記アクセスの傾向を判定するステップは、前記抽出された類似コマンドのログに基づき、当該類似コマンドの指定する領域の近傍の領域へのアクセスが出現する割合である近傍領域アクセス出現率を前記アクセスの傾向を表す指標として算出するステップを含み、
    前記データアクセス処理を決定するステップでは、前記算出された近傍領域アクセス出現率が予め定められた閾値以上であるかに基づいて、前記データアクセス処理が決定される
    ことを特徴とする請求項1記載のデータアクセス処理方法。
  7. 前記データアクセス処理を決定するステップでは、前記現アクセスコマンドの指定するアクセス種別と、前記算出された近傍領域アクセス出現率が予め定められた閾値以上であるか否かとに基づいて、前記現アクセスコマンドの指定する領域の近傍の領域のデータを前記キャッシュメモリに先読みするか否か、または前記現アクセスコマンドの指定するデータを前記キャッシュメモリから前記論理記憶装置へ書き込むデステージングのタイミングを遅延させるか否かが決定される
    ことを特徴とする請求項6記載のデータアクセス処理方法。
  8. 前記データアクセス処理を決定するステップでは、前記現アクセスコマンドの指定するアクセス種別がリードの場合、前記算出された近傍領域アクセス出現率が予め定められた閾値以上であるかに基づいて、前記現アクセスコマンドの指定する領域の近傍の領域のデータを前記キャッシュメモリに先読みするかが決定される
    ことを特徴とする請求項7記載のデータアクセス処理方法。
  9. 前記データアクセス処理を決定するステップでは、前記現アクセスコマンドの指定するアクセス種別がライトの場合、前記算出された近傍領域アクセス出現率が予め定められた閾値以上であるかに基づいて、前記現アクセスコマンドの指定するデータを前記キャッシュメモリから前記論理記憶装置へ書き込むデステージングのタイミングを遅延させるかが決定されることを特徴とする請求項7記載のデータアクセス処理方法。
  10. 前記論理記憶装置の記憶領域全体は複数のゾーンに分割して管理され、
    前記記憶制御装置は前記アクセスコマンドログテーブルを前記ゾーン毎に有し、
    前記抽出するステップでは、前記現アクセスコマンドの指定する領域が属するゾーンに対応する前記アクセスコマンドログテーブルが参照され、
    前記追加するステップでは、前記現アクセスコマンドのログが当該現アクセスコマンドの指定する領域が属するゾーンに対応する前記アクセスコマンドログテーブルに追加される
    ことを特徴とする請求項1乃至9のいずれかに記載のデータアクセス処理方法。
  11. ホスト計算機及び少なくとも1つの記憶装置と接続され、前記記憶装置の一部または全ての領域を使用して前記ホスト計算機に対して論理記憶装置を提供すると共に、前記ホスト計算機と前記記憶装置との間のデータ転送を処理する記憶制御装置において、
    前記ホスト計算機からのアクセスコマンドによって指定された読み出し/書き込みデータを一時的に保持するための前記記憶装置よりも高速なキャッシュメモリと、
    前記アクセスコマンドの指定するアクセス種別、並びに前記アクセスコマンドの指定する前記論理記憶装置内の領域を示す先頭アドレス及び転送サイズまたは当該転送サイズが属する転送サイズ範囲の情報を当該アクセスコマンドのログとして保持するためのアクセスコマンドログテーブルと、
    前記ホスト計算機から前記記憶制御装置に与えられる今回処理されるべき現アクセスコマンドに基づき前記アクセスコマンドログテーブルを参照することにより、当該現アクセスコマンドと同一アクセス種別で、且つ当該現アクセスコマンドと同一転送サイズまたは同一転送サイズ範囲の全てのアクセスコマンドのログを、当該現アクセスコマンドと特徴が類似した類似コマンドのログとして抽出する類似コマンド抽出手段と、
    前記抽出された全ての類似コマンドのログに基づき、アクセスの傾向を判定するアクセス傾向判定手段と、
    前記判定されたアクセスの傾向に基づき、前記現アクセスコマンドに対応するデータアクセス処理であって、前記現アクセスコマンドによって指定される読み出し/書き込みデータを対象とする前記キャッシュメモリへのアクセスを伴う処理及び前記現アクセスコマンドの指定する領域の近傍の領域のデータを対象とする前記キャッシュメモリへのアクセスを伴う処理の少なくとも一方を含むデータアクセス処理を決定するデータアクセス処理決定手段と
    前記決定されたデータアクセス処理を実行するデータアクセス手段と、
    前記アクセスコマンドログテーブルを管理し、前記現アクセスコマンドのログを前記アドレスコマンドログテーブルに追加するテーブル管理手段と
    を具備することを特徴とする記憶制御装置。
JP2007135602A 2007-05-22 2007-05-22 データアクセス処理方法及び記憶制御装置 Active JP4558003B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007135602A JP4558003B2 (ja) 2007-05-22 2007-05-22 データアクセス処理方法及び記憶制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007135602A JP4558003B2 (ja) 2007-05-22 2007-05-22 データアクセス処理方法及び記憶制御装置

Publications (2)

Publication Number Publication Date
JP2008293111A true JP2008293111A (ja) 2008-12-04
JP4558003B2 JP4558003B2 (ja) 2010-10-06

Family

ID=40167794

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007135602A Active JP4558003B2 (ja) 2007-05-22 2007-05-22 データアクセス処理方法及び記憶制御装置

Country Status (1)

Country Link
JP (1) JP4558003B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014229144A (ja) * 2013-05-23 2014-12-08 富士通株式会社 情報処理装置、情報処理システム、情報処理装置の制御方法および情報処理装置の制御プログラム
JP2016035687A (ja) * 2014-08-04 2016-03-17 日本電気株式会社 ディスクアレイ装置およびディスクアレイ装置の制御方法
US9594519B2 (en) 2014-04-18 2017-03-14 Fujitsu Limited Prefetching monitored areas in a storage apparatus

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01319821A (ja) * 1988-05-05 1989-12-26 Internatl Business Mach Corp <Ibm> データ記憶階層システム
JPH086859A (ja) * 1994-06-20 1996-01-12 Internatl Business Mach Corp <Ibm> 記憶サブシステムにおける拡張データ管理のための方法及び関連するシステム
JPH08147216A (ja) * 1994-11-17 1996-06-07 Hitachi Ltd データ処理装置
JPH09330185A (ja) * 1996-06-13 1997-12-22 Oki Electric Ind Co Ltd ディスクアレイ装置
JPH10187537A (ja) * 1996-12-20 1998-07-21 Matsushita Electric Ind Co Ltd データ管理装置及びネットワークデータ管理システム
JPH10301847A (ja) * 1997-04-30 1998-11-13 Nec Corp データ記憶装置
JPH11191037A (ja) * 1997-12-26 1999-07-13 Hitachi Ltd データ記憶装置
JP2003044358A (ja) * 2001-07-31 2003-02-14 Mitsubishi Electric Corp キャッシュメモリ制御装置
JP2004078755A (ja) * 2002-08-21 2004-03-11 Hitachi Ltd 情報処理システム
JP2006072789A (ja) * 2004-09-03 2006-03-16 Hitachi Ltd ストレージシステム及びストレージシステムのデータ管理装置
JP2007058728A (ja) * 2005-08-26 2007-03-08 Hitachi Ltd データ移行方式

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01319821A (ja) * 1988-05-05 1989-12-26 Internatl Business Mach Corp <Ibm> データ記憶階層システム
JPH086859A (ja) * 1994-06-20 1996-01-12 Internatl Business Mach Corp <Ibm> 記憶サブシステムにおける拡張データ管理のための方法及び関連するシステム
JPH08147216A (ja) * 1994-11-17 1996-06-07 Hitachi Ltd データ処理装置
JPH09330185A (ja) * 1996-06-13 1997-12-22 Oki Electric Ind Co Ltd ディスクアレイ装置
JPH10187537A (ja) * 1996-12-20 1998-07-21 Matsushita Electric Ind Co Ltd データ管理装置及びネットワークデータ管理システム
JPH10301847A (ja) * 1997-04-30 1998-11-13 Nec Corp データ記憶装置
JPH11191037A (ja) * 1997-12-26 1999-07-13 Hitachi Ltd データ記憶装置
JP2003044358A (ja) * 2001-07-31 2003-02-14 Mitsubishi Electric Corp キャッシュメモリ制御装置
JP2004078755A (ja) * 2002-08-21 2004-03-11 Hitachi Ltd 情報処理システム
JP2006072789A (ja) * 2004-09-03 2006-03-16 Hitachi Ltd ストレージシステム及びストレージシステムのデータ管理装置
JP2007058728A (ja) * 2005-08-26 2007-03-08 Hitachi Ltd データ移行方式

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014229144A (ja) * 2013-05-23 2014-12-08 富士通株式会社 情報処理装置、情報処理システム、情報処理装置の制御方法および情報処理装置の制御プログラム
US9594519B2 (en) 2014-04-18 2017-03-14 Fujitsu Limited Prefetching monitored areas in a storage apparatus
JP2016035687A (ja) * 2014-08-04 2016-03-17 日本電気株式会社 ディスクアレイ装置およびディスクアレイ装置の制御方法

Also Published As

Publication number Publication date
JP4558003B2 (ja) 2010-10-06

Similar Documents

Publication Publication Date Title
US9996542B2 (en) Cache management in a computerized system
CN108920387B (zh) 降低读延迟的方法、装置、计算机设备及存储介质
TWI627536B (zh) 用於具有調適分割之一共用快取之系統及方法
TWI684099B (zh) 剖析快取替代
KR101361928B1 (ko) 스레드 이송 시의 캐시 프리필링
CN104572491B (zh) 一种基于固态硬盘的读缓存管理方法及装置
CN103019962A (zh) 数据缓存处理方法、装置以及系统
JP2019525330A (ja) キャッシュテスト領域に基づくプリフェッチデータに対するキャッシュ転送ポリシーの選択
US11853223B2 (en) Caching streams of memory requests
Bock et al. Concurrent page migration for mobile systems with OS-managed hybrid memory
WO2021062982A1 (zh) 管理hmb内存的方法、装置、计算机设备及存储介质
CN115794682A (zh) 缓存替换方法及装置、电子设备、存储介质
CN111639037A (zh) 一种缓存的动态分配方法、装置及DRAM-Less固态硬盘
JP4558003B2 (ja) データアクセス処理方法及び記憶制御装置
US8661169B2 (en) Copying data to a cache using direct memory access
US10083117B2 (en) Filtering write request sequences
JP6199782B2 (ja) 計算機システム
US10997077B2 (en) Increasing the lookahead amount for prefetching
WO2017031637A1 (zh) 一种内存访问方法、装置和系统
CN115712388A (zh) 固态盘的数据存储方法、装置、设备及存储介质
Lee et al. BAGC: Buffer-aware garbage collection for flash-based storage systems
TWI828307B (zh) 用於記憶體管理機會與記憶體交換任務之運算系統及管理其之方法
CN110658999B (zh) 一种信息更新方法、装置、设备及计算机可读存储介质
CN114168495A (zh) 存储设备的增强的预读能力
CN112579482A (zh) 一种非阻塞Cache替换信息表超前精确更新装置及方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100302

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100506

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: 20100622

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: 20100720

R150 Certificate of patent or registration of utility model

Ref document number: 4558003

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350