JPH0247746A - 記憶装置管理装置及び方法 - Google Patents

記憶装置管理装置及び方法

Info

Publication number
JPH0247746A
JPH0247746A JP1123042A JP12304289A JPH0247746A JP H0247746 A JPH0247746 A JP H0247746A JP 1123042 A JP1123042 A JP 1123042A JP 12304289 A JP12304289 A JP 12304289A JP H0247746 A JPH0247746 A JP H0247746A
Authority
JP
Japan
Prior art keywords
footprint
access
function
time
logic block
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
JP1123042A
Other languages
English (en)
Other versions
JPH06100986B2 (ja
Inventor
Harold S Stone
ハロルド・スチュワート・ストーン
Joel L Wolf
ジヨエル・レオナード・ウルフ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0247746A publication Critical patent/JPH0247746A/ja
Publication of JPH06100986B2 publication Critical patent/JPH06100986B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3485Performance evaluation by tracing or monitoring for I/O devices
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/885Monitoring specific for caches
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A6産業上の利用分野 本発明は、ディスク制御装置の分野に属し、具体的には
参照された個々のディスク・セクタの数を時間の関数と
して計算することを対象とする。
B、従来技術 キャッシュ式ディスク制御装置は1.そのキャッシュ・
メモリを最適の性能が得られるように適切に管理しなけ
ればならない。物理ディスクにアクセスする必要から生
じる非常に大きな不利益を避けるため、活動データをで
きるだけ多くキャッシュ中に確保しておくことが、その
目的である。ディスク制御装置を特徴とする特許が多数
あるが、それぞれい(つかの利点と欠点を有する。
米国特許第4101969号明細書は、セクタ・パルス
を監視する手段を備えた2次記憶機構を対象としている
。上記特許によって解決される問題は、1個の応答側を
もつバス・トランザクシeンに対する複数の応答側の検
出である。データを読み取るためにあるディスクを選択
したとき、ディスフは、まずヘッドを選択したトラック
に移動し、次いで、選択したセクタが回転してヘッド下
方の位置にくるのを待つ。セクタがヘッドに達すると、
読取りヘッドの下方を通過する情報がフィルタされ、整
形されてパルスになり、それがバスを介してホスト・コ
ンピュータへ報告される。2個以上のディスクが1個の
データ読取りコマンドに応答するときに、問題が生じる
。これは決して起こらないはずであるが、装置が故障し
た場合、あるいはバス上の雑音のために複数のディスク
が選ばれた場合には、起こることがあり得る。上記特許
は、2台以上の駆動装置がトランザクシロンに応答して
バスを介してパルスを報告しようと試みるのを監視して
この状態を検出する機構を記載している。
1つのディスクまたはディスクの集まりに対する参照の
アクティビティを記録することに関する教示はない。
米国特許第3577185号明細書は、記憶階層の制御
及び測定における置換アルゴリズムの効率を測定するオ
ンライン・システムを対象とじている。この特許では、
障害、すなわち階層の高速メモリ内にないデータ・ブロ
ックに対する参照だけを測定する。上記特許では、測定
期間中に実際に使用した制御アルゴリズムではなく最適
の制御アルゴリズムを使用してもやはり起こったはずの
どんな障害が発生したかを決定する。最適の制御アルゴ
リズムは、将来に関する完全な知識を必要とし、したが
って原理上実現不可能である。上記の発明は、実現可能
なアルゴリズムが理論上の最適形にどれだけ近づけるか
を決定するのに必要な情報を提供する。この方法では、
障害の数及び障害の発生する率だけを記録する。障害が
いつ起こるかは重要ではなく、シたがって記録されない
情報は、置換アルゴリズムを評価するために使用され、
性能分析のため専用である・と想定される。
ディスクへのアクセスのアクティビティの測定に関する
示唆はない。
米国第4542452号明細書は、いわゆるファイル割
当て問題を解く試みを対象としている。換言すると、こ
れはファイルを最適な形で装置(たとえば直接アクセス
記憶装置)上に配置しようと試みたものである。最大許
容アクセス速度及び最大許容利用率が各装置ごとに既知
であるものと仮定されている。これらの数値を決める方
法は、示されていない。上記発明の最も簡単なパージヨ
ンでは、ファイルをアクセス速度の頻度別に配列し直し
、装置を処理速度(すなわち、推定名目応答時間)別に
配列し直す。始めのn−1個(n=1という最初のケー
スを含めて)のファイルがアルゴリズムによって装置に
割り当てられる。次いで、倉欲なアルゴリズムが、n番
目のファイル用に、アクセス速度及び利用度の制約に反
しない装置のうちから、できるだけ高速の装置を選び出
す。次いで、制約方程式が更新され、n+1番目のファ
イルで処理が続行する。このアルゴリズムに対する機能
拡張は、装置故障率やファイル形式別の応答時間優先順
位など、追加の制約をもつ。
米国特許第44293Et号明細書は、キャッシュの動
的操作を助けるものである。これは、キャッシュ・ミス
、書込み操作、及び最後に参照されたトラック(LTR
)に関するある種の状況情報を監視することを探索して
いる。次いで、この情報を使って、直接アクセス記憶装
置の記録をいつキャッシュに入れるか、また時には、直
接アクセス記憶装置の記録をいつキャッシュからはずす
かを決定する助けとする。簡単な例を挙げると、−連の
要求中にトラックへの書込みがない場合、最後に参照さ
れたトラックの内容がキャッシュに入れられる。書込み
がある場合、最後に参照されたトラックの内容はキャッ
シュに入れられない。絃取りの際のキャッシュ・ミス率
を減少させるために、ある種のキャッシュ転送が禁止さ
れる。同様な目的のために、さらに一連のキャッシュに
入れるまたはキャッシュからはずす決定が行なわれる。
C0発明が解決しようとする問題点 本発明の目的は、改良されたディスク制御装置を提供す
ることにある。
本発明のもう1つの目的は、ディスク上で参照されたセ
クタ数を時間の関数として計算する改良された方法を提
供することにある。
本発明のもう1つの目的は、一連のディスク・アクセス
のフットプリント関数を測定する改良された方法を提供
することにある。
本発明のもう1つの目的は、複数のサブセットを選択し
、各サブセットごとに別々のフットプリント関数を計算
するためにディスク・アクセスをフィルタする改良され
た方法を提供することにある。
本発明のもうJ、つの目的は、ディスク・アクセスが長
期的挙動と異なる現挙動を示すときに、必要に応じて再
計算を行なうためにフットプリント関数を初期設定し直
す改良された方法を提供することにある。
本発明のもう1つの目的は、新しい処理がフットプリン
ト測定を必要とし、旧処理がちはやフットプリント測定
を必要としないときに、必要に応じてアクセス・フィル
タを変更する改良された方法を提供することにある。
本発明のもう1つの目的は、フットプリント関数を時間
の関数として測定することにある。
本発明のもう1つの目的は、フットプリント関数をアク
セス・カウントの関数として測定することにある。
D2問題点を解決するための手段 本発明によると、ディスク制御装置は参照された個々の
セクタの数を時間の関数として計算する。
この計算は、ディスク・キャッシュを最適化するために
キャッシュ管理アルゴリズムが使用する。
ディスク制御装置内の機構が、参照された個々のセクタ
の数を実時間または仮想時間の関数として計算する。こ
れを、「フットプリント」関数と呼び、キャッシュ性能
の最適化を試みるアルゴリズムに対する入力として、デ
ィスク制御装置が使用する。
E、実施例 本発明は、ディスク・セクタへのアクセスを記録するこ
とにより、フットプリント関数を計算する機構からなる
。本発明では、ディスク・セクタとは、ディスク・シス
テムにおける情報アクセスの基本単位(区画)である。
ディスク・システムの読み書きの度に、ディスク記憶空
間でセクタが指定される。書込み操作では、セクタを充
填すべき情報がディスク記憶域に流れ、読取り操作では
、セクタに記憶された情報がディスク域から流れてくる
。ディスク記憶システムによっては、それぞれ多数のセ
クタから構成される、シリンダやトラックと呼ばれるよ
り大きな領域が、個々の操作によって読み書きできる。
本発明の説明では、セクタ、クラスタ、シリンダ、トラ
ック、その他のディスク記憶空間の単位を区別しないこ
とにする。フットプリント関数は、任意の記憶域単位で
定義することができ、フットプリントの計算は、複合区
域へのアクセスをその複合区域内に含まれるより小さな
区域への一組の順次アクセスとして扱うだけで、様々な
記憶域単位に対する混合アクセスをサポートするシステ
ムに直接−膜化することができる。
本発明によって作成されるフットプリント関数は、フッ
トプリント関数を時間の関数として指定する形状数の対
(時間11サイズi)の数列である。フットプリントの
サイズとは、時間O以降にアクセスした個々のセクタの
数である。
記憶管理にとって最大の利益を得るには、記憶システム
全体に対するすべてのアクセスの集合体の挙動を記述す
るフットプリント関数とは全く別に、個々のデータ・セ
ットへのアクセス、または特定の処理によってもたらさ
れるアクセスに対するフットプリント関数を決定する必
要がある。したがって、本発明は参照ストリームから特
定のものを処理すべく選択するために、アクセス要求を
フィルタする手段を提供する。選択されなかった参照は
、フットプリントの計算には関与しない。
フットプリント関数は時間の関数として定義されるが、
ディスクへのアクセス合計数の関数として扱うことも可
能である。ディスク・アクセスが一様の率で行なわれる
場合には、この2つの形のフットプリントの測定で、ス
ケール・ファクタだけが異なる結果が得られる。時間を
基準にとると、本発明はX軸情報を供給する実時間クロ
ックを必要とする。アクセス・カウントを基準として使
用する場合、本発明はアキュムレータが累積アクセスを
カウントすることを必要とする。以下では、フットプリ
ント関数が時間の関数として生成されると仮定するが、
時間または合計カウントあるいはその両方がどれも容易
に生成できることに留意されたい。
本発明の概要を、第1図に示す。この図は、フットプリ
ントを計算する装置がアドレスのストリームを入力の1
つとして受は取り、その出力側でアドレス・ストリーム
のフットプリントを作成することを示している。この図
は、ディスク・キャッシュを管理する装置が使用する出
力を示す。これは、フットプリント・データの1つの可
能な使用法である。この図は、制御情報の入力をも示す
モジュールを最初に始動させる際にそれをリセットする
のに制御情報が必要であり、任意選択で、モジュールが
フットプリント・データを集める際にその挙動を支配す
る他の制御機能を含むこともできる。
第2図は、フットプリント・モジュールの内部構造を示
す。この図では、モジュールを、通常のマイクロプロセ
ッサ技術を用いて作成されたものとして記載しているが
、通常の形の制御装置、メモリ、演算装置を有するどの
実施態様を用いてもよく、本明細書ではこれ以上詳しく
は述べない。
論理ブロック2及び3は、データをディスク・システム
中で外部モジュールと交換するための、フットプリント
・プロセッサ1の入力バッファと出力バッファである。
アドレス・ストリームは、入力バッファ2を通過し、フ
ットプリント関数の計算は出力バッファ3に渡され、そ
こから他のモジュールに報告される。
論理ブロック4は、フットプリント関数の記録専用のメ
モリである。これは、通常のランダム・アクセス・コン
ピュータ・メモリとして実現することができる。アドレ
ス・ストリーム内に含まれるフットプリント情報を記録
するのに必要な情報を保持するのに充分な空間をプロセ
ッサ・メモリ・システム内で専用に使用する場合、フッ
トプリント・メモリ4は、フットプリント・プロセッサ
1内に含まれるメモリとは別のメモリである必要がない
論理ブロック5は、情報を使ってアドレスのフィルタリ
ングを制御するフィルタ制御装置である。
フットプリント・プロセッサ1は、アドレスのサブセッ
トを調べ、そのアドレスのサブセットに対するフットプ
リント、ならびにアドレス・ストリーム全体に対するフ
ットプリントを計算することができる。この計算の目的
は、アドレス・ストリームの各主要構成要素の挙動の個
別の特徴付けが行なえるようにすることである。論理ブ
ロック5は、フットプリント・プロセッサ1がアドレス
・ストリームをフィルタするのに使用する情報を記録す
る。これは通常のコンピュータ・メモリでもよく、また
フットプリント・プロセッサ1のメモリ・システム内に
組み込むこともできる。
論理ブロック8は、メモリを含み、アドレス・ストリー
ムに関連するクロック・カウンタを保持する。フットプ
リントは、仮想時間の関数として計算される。時間基準
は、論理ブロック6に記録される。時間は、いくつかの
方式で維持できる。
■、実時間。この場合、論理ブロック内の実時間クロッ
クの各刻時ごとにクロック・カウンタが増分される。
2、アドレス・ストリーム参照カウント。この場合、全
アドレス・ストリーム中の各アドレスごとにカウンタが
増分される。
3、フィルタされたアドレス・ストリームの参照カウン
ト。この場合、全アドレス・ストリームに対するフィル
タ操作によって生成されるアドレスのサブセットにおけ
る各アドレスごとにカウンタが増分される。
クロック・カウンタ論理ブロック6は、計算中の各フッ
トプリント関数ごとに専用のカウンタを有する。このモ
ジュールは、多数のフットプリント関数を、現に活動中
の各アドレス・ストリーム・フィルタごとに1つずつ、
同時に記録することが可能である。この論理ブロックは
、通常のメモリとして実現できる。カウンタの値を増加
させるため、クロックがフットプリント・プロセッサ1
によって検索され、カウンタ・メモリで増分され復元さ
れる。別法として、論理ブロック6を、論理ブロック中
にカウンタ論理機能を組み込んだカウンタの集合体とし
て実現することもできる。このような実施態様のフット
プリント・プロセッサ1は、カウンタをリセットし、増
分し、任意の値をカウンタにロードし、カウンタの内容
を読み取る能力を備えていなければならない。
フットプリント・モジュールの基本動作を第3図に示す
。この図は、最高レベルの内部の制御流れを示す。この
図は、各アクセスがフットプリント計算装置に達すると
き、この装置が論理ブロック10中で、フットプリント
計算をこの時点で初期設定すべきかどうか決定すること
を示している。
論理ブロック10の結果が初期設定を行なわせる応答の
場合には、論理ブロック20で、フットプリント関数が
初期設定される。論理ブロック20が必要でない場合に
は、それはスキップされる。
どちらの場合でも、次に論理ブロック30でアドレス・
フィルタ動作が実行される。各要求を解析して、その要
求が特定の処理に対するフットプリントの計算に関与す
るのか、それともその要求が無視できるのかを判定する
。その要求が関与する場合、論理ブロック40で、それ
を使ってフットプリントを更新する。
論理ブロック50では、アクセスの履歴を解析して、ア
ドレス・フィルタを変更すべきかどうか判定する。本発
明では、このブロックで、それらがシステムにとって新
しいものであるため、その挙動が最近サンプリングされ
ていないため、あるいはフットプリント関数の新たなサ
ンプリングを特徴とする特徴的な処理の挙動に関する他
の何らかの理由から、さらに処理を解析する必要がある
かどうか決定する。そのような理由の1つは、処理挙動
が最近のアクセスで、過去に観察された挙動から変更さ
れている可能性があることである。
新しいプロセスに対するフットプリント関数を収集しな
ければならない場合、アドレス・フィルタが変更される
アドレス・フィルタの考えられるもう1つの変更は、あ
る処理がフットプリント解析から除去されることによる
ものである。それが起こるのは、一定数のアクセスが観
察された後、または他の何らかの類似の条件が事実とな
った後、解析の開始から一定の時間後である。
第4図ないし第9図は、第3図の論理ブロック1012
0.30.40150の動作の拡大詳細図を示す。
第4図に、第3図の論理ブロック10の機能を詳しく示
す。フットプリント計算をいつ初期設定するかの決定が
、ブロック11.12.13.14で行なわれる。第4
図に示した各論理ブロックの目的は、現特性が長期平均
特性から、フットプリント収集の再初期設定が妥当とな
るのに充分なほど、異なっているかどうか判定すること
である。
たとえば、長期平均は、参照ストリームが1分間に10
個ないし20個の異なる処理識別子を含むことを示す。
現履歴は、最近の1分間に30個の異なる処理識別子が
存在することを示す。これは、ディスク・アクセスの特
性が最近に変化し、システムの現挙動を記述するために
新しいフットプリントを得るべきことを示唆している。
第4図の論理ブロック11で、ディスク・アクセス要求
のストリームの1つまたは複数の特性の値を計算する。
ここに示した例では、ブロック11は1分間当たりの異
なる処理識別子の数を計算し、短期平均と長期平均の両
方ならびに両者の差を生成する。両者の差は、ディスク
・アクセス特性の定常性の推定値である。現アクセスが
長期平均と基本的に類似している場合には、アクセス要
求は時間が経過しても定常的であり、定常性推定値は小
さい。現アクセスが長期平均とかなり異なる場合には、
アクセス・ストリームが非定常的になり、定常性推定値
は大きな値をとってこのことを示す。論理ブロック12
で、定常性推定値をしきい値と比較する。推定値がしき
い値よりも大きい場合には、論理ブロック13で、初期
設定が必要だとの表示が生成され、第3図の論理ブロッ
ク20に進む。推定値がしきい値よりも小さい場合には
、論理ブロック14で、正常脱出の表示が生成され、第
3図の論理ブロック30に進む。
第5図は、第3図の論理ブロック20を拡大して初期設
定処理を示す。論理ブロック21で、第4図の論理ブロ
ック13から初期設定が必要であるとの報告を受は取る
。報告に応答して、論理ブロック21で、全セクタ・ビ
ットが0にセットされる。これは、対応するセクタがア
クセスされていないことを示す。論理ブロック22で、
指標iがOにセットされる。この指標を使って、フット
プリント内でアクセスの合計数がカウントされる。
指数がiからi+Lに変化するとき、フットプリント時
間は時間、から時間1+l に変わり、時間1の値に関
連づけられ、フットプリント機構は、時間、までにアク
セスされたフットプリント中の異なるセクタ数であるサ
イズ1の値を捕捉する。
論理ブロック23で、クロックがリセットされ、フット
プリントが実時間または仮想時間に基づき、かつアクセ
ス合計数によって測定できるようになる。論理ブロック
24で、フットプリント・カウントが0に初期設定され
る。フットプリント・カウントとは、初期設定以降にア
クセスされた独自セクタの数である。
フットプリント関数を、必ずしも時間の関数として測定
する必要はない。それをアクセス数の関数として測定す
ることも意味がある。その場合、アクセス・カウントを
フットプリント機構が維持しなければならない。アクセ
ス・カウントは、論理ブロック25でゼロに初期設定さ
れる。
第3図の論理ブロック30中のアドレス・フィルタ機構
を、第6図に示す。この図の各ブロックは、みな類似し
ている。たとえば論理ブロック31など典型的なブロッ
クでは、アドレス・ストリーム中の次のアクセス要求を
調べる。その要求があるフットプリント測定を特徴づけ
るい(つかのテストを滴定している場合、この処理から
出て、この要求を使ってフットプリント計算を更新する
論理ブロックに進む。
フィルタの1例として、特定のユーザの行なう全ディス
ク・アクセスのフットプリントを計算して、フィルタで
アクセス要求に関連するユーザIDを調べるようにする
ことが望ましい。また、特定のファイルまたはデータベ
ースへのアクセスのフットプリントを計算することも望
ましい。この場合、フィルタは、各ディスク・アクセス
をより大きな何らかのデータ・オブジェクトと関連づけ
、特定のデータ・オブジェクトに対するアクセスを抽出
する。
第6図は、各アクセスがせいぜい1個のフィルタに関与
するという状況を示す。たとえば、ある要求がフィルタ
1(属性テスト#1)によって除去される場合、この図
にはその要求をフィルタ2(属性テスト#2)に送る経
路は示されていない。
本発明では、各属性テストが共通要素をもたないことは
不可欠でない。あるアクセスが複数の属性テストを滴定
し、またあるアクセスがそのアクセスによってフィルタ
・テストが滴定されるすべてのフットプリント更新の成
分となることも許容される。その場合、第6図で、ある
アクセスが特定のフィルタ・テスト、たとえば論理ブロ
ック31を滴定するとき、それが対応するフットプリン
トを更新するのに使用され、追加のテスト及び処理のた
めに、次の論理ブロック、この場合は論理ブロック32
に戻される。
特定のフットプリントに対するあるアクセスの処理を、
第7図に示す。フットプリント・データをアクセス・カ
ウントの関数として収集する場合、ブロック41でアク
セス・カウントが更新される。
フットプリント・データを時間の関数として収集する場
合には、この更新のための適切な手段が第8図の説明で
示してあり、第7図の論理ブロック41は不要である。
第7図の説明を続けると、論理ブロック42で、アクセ
スされたセクタのセクタ・ビットをテストして、それが
新しいアクセスかどうか判定する。
そうでない場合には、処理から出る。新しいアクセスで
ある場合は、セクタ・ビットが1にセットされて、後続
のアクセスが新しいものでないことを示す。これは、論
理ブロック43で行なわれる。
ブロック44でフットプリント・カウンタが増分され、
フットプリントの合計サイズが増大したことを示す。
第7図に示した処理は、第6図に示した各フィルタごと
に行なわれる。セクタ・アクセスが複数のアクセス・フ
ィルタを満足する場合は、セクタは各フィルタに関連す
る異なるセクタ・ビットを有するはずであり、セクタ・
ビットを別々に初期設定すべきである。特定のフィルタ
に関連する全セクタ・ビットが同時に初期設定され、様
々なフィルタが異なる時に初期設定できる。
第8図は、フットプリントを時間の関数として捕捉する
方法を示す。この図は、たとえば周期的割込みの発生に
よって強制されるなど、周期的に発生する処理ステップ
を示す。論理ブロック45では、初期設定以降または最
後の臨界時間を経過して以降の経過時間を示す、クロッ
ク・カウントが増分される。論理ブロック46で、カウ
ンタをテストして、次の臨界時間に達したかどうか判定
する。このブロックの目的は、フットプリント関数の完
全な詳細を生成するのではなく、フットプリント関数を
不連続な時点で抽出することである。
その意図は、セーブすべきデータ数を減少させることに
あるが、データを減少させると、関数を選択可能な時間
にわたって平均することにより、データの統計的変動が
滑らかになる傾向がある。
クロック・カウントの現在値が臨界時間でない場合、論
理ブロック46で強制的に処理から出る。
クロック・カウントが臨界時間の場合は、論理ブロック
47で、フットプリント・カウンタの現在値がサイズ、
の値として記憶される。論理ブロック49で、フットプ
リント関数を捕捉すべき次の臨界時間の値が計算される
フットプリント関数を時間の関数としてではなく、アク
セス数として捕捉する場合には、第8図をこの目的に合
わせて簡単に修正できる。論理ブロック4.6で、アク
セス・カウントをテストして、それが次の臨界アクセス
・カウントであるかどうか判定し、論理ブロック49で
次の臨界アクセス・カウントの値をセットする。この場
合、論理ブロック46.47.48.49に示した処理
は、第7図の論理ブロック41の処理の直後に完了する
ただし、その処理は、ブロック割込みの存在によってで
なく、アクセスの存在によってトリガされる。
以上説明したフットプリント機構は、アクセス・ストリ
ーム上の当該フィルタによって決定される複数のアクセ
ス処理に対するフットプリントを、測定できる能力をも
つ。さらに、この機構は、各フィルタごとに定常性を測
定し、フィルタされたアクセス・ストリームが挙動の変
化を示す場合には、フットプリント関数を再初期設定す
る能力をもつ。
このフットプリント機構は、また、第9図に示すように
、測定処理にフィルタを加えたり、そこから取り除いた
りできる能力をもつ。当該のアドレス・ストリームが非
常に長時間にわたって不活動状態になるかまたは安定性
を示す場合には、長期にわたってフィルタを取り除くこ
とが必要となることがある。論理ブロック51で、フィ
ルタが引続き必要かどうかを判定するために使用する推
定値を計算する。論理ブロック52で、この推定値をし
きい値と比較し、推定値がしきい値より上の場合には論
理ブロック53でフィルタを変更するかまたは取り除く
。そうでない場合は、論理ブロック54で正常脱出を行
なう。
第9図は、また、新しいフィルタを加える方法の構造を
も示す。論理ブロック51で、アクセス要求を解析して
、いずれかのサブセットをフィルタによって追跡すべき
かどうかを決定する。
アクセス要求の当該のどのサブセットについても、論理
ブロック51で生成された推定値がしきい値と比較され
る。推定値がしきい値を超えた場合、論理ブロック53
でフィルタを加える。推定値がしきい値より小さい場合
には、論理ブロック54で正常脱出が行なわれる。
第9図に示した機構の使用例として、メモリ中の特定の
ファイルまたはデータ・オブジェクトに対するアクセス
のフットプリントを測定することが、興味がある。論理
ブロック51で、新たに参照されたオブジェクトに対す
るアクセスの発生を観察することができる。アクセス率
が充分なしきい値に達したとき、またはアクセス合計数
が充分なしきい値に達したとき、このオブジェクトに対
するアドレス・フィルタをフットプリント機構中に設け
ることができる。
多くの可能な用途の1つを示すため、異なる時刻に2種
の異なる作業負荷で使用されるディスク・システムを考
える。その1つは、たとえば、照会作業負荷であり、も
う1つは主に逐次的な作業負荷である。照会作業負荷の
特徴は、頻繁に使用されるディレクトリ及び指標に対す
るアクセスがクラスタ化され、アクセスの小部分がラン
ダムに補助記憶機構全体にわたって分散される傾向があ
ることである。逐次的作業負荷では、ファイル全体がラ
ンダムに選択され、各ファイルが順次処理される傾向が
ある。
上記2種の作業負荷では、ディスク・キャッシュの最適
管理が異なる。本発明の目的は、どの作業負荷が現に実
行中かを決定するのに使用できるデータを作成し、また
システム負荷が互いに変化するとき、現作業負荷が2つ
の混合となる期間を指示することにある。
フットプリント関数は、周期的に計算でき、ディスク・
キャッシュ管理装置から問い合わせることができる。フ
ットプリント関数が急速増加している場合、現作業負荷
は、各セクタをただ一度だけ調べる傾向のある逐次的作
業負荷であると仮定される。フットプリント関数が緩慢
に増加する場合には、現作業負荷は、あるディレクトリ
及び指標に繰り返しアクセスする傾向のある照会作業負
荷であると仮定される。フットプリント関数の値を使っ
て、所与の時間にどのディスク・キャッシュ管理方針を
呼び出すべきかを決定することができる。
F0発明の効果 本発明によれば、アクセスされた単位区画の数に応じて
きめ細かに記憶装置を制御することができる。
【図面の簡単な説明】
第1図は、フットプリント・モジュールの構成図である
。 第2図は、ディスク・アクセスのフットプリントを計算
するシステムの構成図である。 第3図は、本発明の全般的な流れ図である。 第4図は、いつ初期設定すべきかの決定を示す流れ図で
ある。 第5図は、初期設定機能の流れ図である。 第6図は、アドレス・ストリームのフィルタリングの流
れ図である。 第7図は、フィルタされたセクタ・アクセスでフットプ
リントを更新する機能の流れ図である。 第8図は、時間にフットプリントを更新する機能の流れ
図である。 第9図は、いつアドレス・フィルタを変更すべきかを決
定する機能の流れ図である。 第2図 出願人  インターナショナル・ビジネス・マシーンズ
・コーポレーション 代理人  弁理士  頓  宮  孝 (外1名) 第4図 第8図 第9図

Claims (1)

  1. 【特許請求の範囲】 記憶媒体を含む記憶装置の複数の制御方式をあらかじめ
    利用可能にしておき、 上記記憶媒体の記憶空間の単位区画ごとに、当該単位区
    画の所定のビットを、当該単位区画がまだアクセスされ
    ていないことを示す第1の状態にセットし、 カウンタを基準カウントにセットし、 記憶空間の単位区画をアクセスし、その際、当該単位区
    画の上記所定のビットが上記第1の状態にあるならば、
    上記所定のビットを当該単位区間がアクセスされたこと
    を示す第2の状態に変更し、上記所定のビットの状態の
    変更に応答して上記カウンタを増分し、 上記カウンタのカウントの関数として、上記複数の制御
    方式のいずれを利用するかを決定することを特徴とする
    、記憶装置の制御方法。
JP1123042A 1988-07-26 1989-05-18 記憶装置管理装置及び方法 Expired - Lifetime JPH06100986B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/224,845 US5142670A (en) 1988-07-26 1988-07-26 Method and apparatus for calculating disk-access footprints for use in selecting a storage management method
US224845 1988-07-26

Publications (2)

Publication Number Publication Date
JPH0247746A true JPH0247746A (ja) 1990-02-16
JPH06100986B2 JPH06100986B2 (ja) 1994-12-12

Family

ID=22842475

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1123042A Expired - Lifetime JPH06100986B2 (ja) 1988-07-26 1989-05-18 記憶装置管理装置及び方法

Country Status (4)

Country Link
US (1) US5142670A (ja)
EP (1) EP0352462B1 (ja)
JP (1) JPH06100986B2 (ja)
DE (1) DE68924013T2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5410691A (en) * 1990-05-07 1995-04-25 Next Computer, Inc. Method and apparatus for providing a network configuration database
US5345584A (en) * 1991-03-11 1994-09-06 Laclead Enterprises System for managing data storage based on vector-summed size-frequency vectors for data sets, devices, and residual storage on devices
JPH0727442B2 (ja) * 1991-09-11 1995-03-29 インターナショナル・ビジネス・マシーンズ・コーポレイション データ記憶装置階層構造におけるヒット率を向上させる方法およびそのための装置
US6088767A (en) * 1993-04-30 2000-07-11 International Business Machines Corporation Fileserver buffer manager based on file access operation statistics
US5754889A (en) * 1993-12-22 1998-05-19 Adaptec, Inc. Auto write counter for controlling a multi-sector write operation in a disk drive controller
US5566317A (en) * 1994-06-14 1996-10-15 International Business Machines Corporation Method and apparatus for computer disk drive management
US5727167A (en) * 1995-04-14 1998-03-10 International Business Machines Corporation Thresholding support in performance monitoring
US5845318A (en) * 1996-10-28 1998-12-01 International Business Machines Corporation Dasd I/O caching method and application including replacement policy minimizing data retrieval and storage costs
US6065100A (en) * 1996-11-12 2000-05-16 Micro-Design International Caching apparatus and method for enhancing retrieval of data from an optical storage device
KR102737427B1 (ko) * 2019-10-31 2024-12-04 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55154648A (en) * 1979-05-22 1980-12-02 Nec Corp Disc cash control system
JPS6014360A (ja) * 1983-07-04 1985-01-24 Fujitsu Ltd デイスク・キヤツシユ制御装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3577185A (en) * 1969-10-02 1971-05-04 Ibm On-line system for measuring the efficiency of replacement algorithms
US3893084A (en) * 1973-05-01 1975-07-01 Digital Equipment Corp Memory access control system
US4092732A (en) * 1977-05-31 1978-05-30 International Business Machines Corporation System for recovering data stored in failed memory unit
US4101969A (en) * 1977-06-06 1978-07-18 Digital Equipment Corporation Secondary storage facility with means for monitoring sector pulses
US4110830A (en) * 1977-07-05 1978-08-29 International Business Machines Corporation Channel storage adapter
US4195340A (en) * 1977-12-22 1980-03-25 Honeywell Information Systems Inc. First in first out activity queue for a cache store
USRE31407E (en) * 1978-05-10 1983-10-04 Tesdata Systems Corporation Computer monitoring system
US4276595A (en) * 1978-06-30 1981-06-30 International Business Machines Corporation Microinstruction storage units employing partial address generators
US4509118A (en) * 1982-05-25 1985-04-02 Honeywell Information Systems Inc. Method and apparatus for defining magnetic disk track field lengths using a programmable counter
US4700294A (en) * 1982-10-15 1987-10-13 Becton Dickinson And Company Data storage system having means for compressing input data from sets of correlated parameters
US4631699A (en) * 1982-11-30 1986-12-23 Honeywell Information Systems Inc. Firmware simulation of diskette data via a video signal
US4641207A (en) * 1983-03-22 1987-02-03 Green George D Diagnostic device and method for examining the operation of a disk drive
US4623988A (en) * 1983-05-20 1986-11-18 Dictaphone Corporation Apparatus for monitoring and displaying activity of an information processing system
JPS60108964A (ja) * 1983-11-17 1985-06-14 Toshiba Corp 振込処理方式
JPH06100981B2 (ja) * 1983-12-28 1994-12-12 株式会社日立製作所 記憶階層制御方式
US4805090A (en) * 1985-09-27 1989-02-14 Unisys Corporation Peripheral-controller for multiple disk drive modules having different protocols and operating conditions
US4796220A (en) * 1986-12-15 1989-01-03 Pride Software Development Corp. Method of controlling the copying of software

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55154648A (en) * 1979-05-22 1980-12-02 Nec Corp Disc cash control system
JPS6014360A (ja) * 1983-07-04 1985-01-24 Fujitsu Ltd デイスク・キヤツシユ制御装置

Also Published As

Publication number Publication date
DE68924013D1 (de) 1995-10-05
US5142670A (en) 1992-08-25
EP0352462A2 (en) 1990-01-31
DE68924013T2 (de) 1996-04-18
JPH06100986B2 (ja) 1994-12-12
EP0352462B1 (en) 1995-08-30
EP0352462A3 (en) 1991-07-17

Similar Documents

Publication Publication Date Title
KR100655358B1 (ko) 디스크 어레이 기억장치에서의 볼륨 교환 방법
US6442650B1 (en) Maximizing sequential output in a disk array storage device
US5345584A (en) System for managing data storage based on vector-summed size-frequency vectors for data sets, devices, and residual storage on devices
US8181161B2 (en) System for automatically collecting trace detail and history data
US6189071B1 (en) Method for maximizing sequential output in a disk array storage device
CN101292220A (zh) 用于管理存储装置的系统、方法和程序
CA2442188A1 (en) Methods and mechanisms for proactive memory management
JP2001524711A (ja) 大型データベースシステムのディスクパーフォーマンス分析方法
TWI747199B (zh) 用以異常行為偵測或分析的共用儲存系統的方法與計算機儲存節點
JPH0524533B2 (ja)
EP0352462B1 (en) Method and apparatus for calculating disk-access footprints
US20170017575A1 (en) Apparatus and Method of Performing Agentless Remote IO Caching Analysis, Prediction, Automation, and Recommendation in a Computer Environment
US7257684B1 (en) Method and apparatus for dynamically altering accessing of storage drives based on the technology limits of the drives
CN115220655A (zh) 一种以预测优化数据分类的分层存储方法
CN120909529B (zh) 存储硬件设备的缓存动态分配方法及装置
CN118535436A (zh) 一种实时操作系统内存管理算法性能测试方法
JP2001184175A (ja) ストレージ管理システム
US7962692B2 (en) Method and system for managing performance data
KR20250062362A (ko) 인공지능 결합 모델을 통한 실시간 디스크 장애 예측 방법
US9354820B2 (en) VSAM data set tier management
JP2019046407A (ja) 性能管理システム、管理装置および性能管理方法
US6345337B1 (en) Method and system for determining a cache single reference residency time
CN120276943B (zh) 一种数据采样方法、存储介质、电子设备及程序产品
US20160196074A1 (en) Data arrangement apparatus, storage medium, and data arrangement method
Abhijith et al. The efficient use of Storage Resources in SAN for Storage Tiering and Caching