10.6.2.キャッシュ・デバイス:Quantitative System Performance

10.6.1.共用ディスク」の続きです。(目次はこちら

10.6.2. キャッシュ・デバイス


 キャッシュ・メモリはデータのステージング・エリア(中間準備エリア)として使用される、比較的小さく、比較的高速のメモリである。何年もの間メモリはプロセッサと主メモリの間に入れられてきた。最近になってそれらはI/Oサブシステムに導入されてきた。通常それらはコントローラを(数百万バイトのオーダーの)保管キャパシティと処理キャパシティで増強することによって導入された。このサブセクションではキャッシュ・デバイスをモデル化することに一瞥を与えておく。
 キャッシュはディスク滞在データの若干のコピーを含んでいる。もしキャッシュがうまく管理されているならば、I/Oオペレーションによって参照されるデータの圧倒的多数はキャッシュ内に滞在していることになる。キャッシュの効率を決定する際に2つのパラメータが重要である。1つ目はヒット率、つまりキャッシュに滞在しているデータを参照するI/Oオペレーションの比率である。2番目はリード率、つまり書込みではなく読み取りであるI/Oオペレーションの比率である。リード・ヒット(キャッシュに滞在するデータを参照する読み取りオペレーション)はディスクへのアクセスなしに処理出来るので、これらのパラメータは重要である。よって、それは大体、データ転送時間に等しいサービス時間を持ち、シーク要素やレイテンシー要素は持たない。他方、リード・ミスライト・ヒットライト・ミスはそれぞれディスクのアクセスを必要とする。さらに、キャッシュを管理することに含まれるオーバヘッドのため、キャッシュ環境でのディスク・アクセスは標準の環境でのディスク・アクセスよりも若干遅い。よって、もしリード率が低いならばヒット率にかかわらずキャッシュ付きのI/Oサブシステムに置き換えることは性能悪化を引き起こし得る。もしヒット率とリード率が高ければ性能改善がもたらされる。
 その目的が既存システムをキャッシュのついたI/Oサブシステムに変換することの考課を見積もることであるようなスタディをモデル化することを考察しよう。我々は以前のいくつかのセクションで用いた基本的なモデル構造と見積り技法に固執し、妥当性を確認されたベースライン・モデルが存在することを仮定する。

  • 我々は、単純な仕方で、デバイス特性によるシーク時間やレイテンシー時間、転送時間の任意の変化を反映出来る。
  • リード・ヒットがディスク・アクセスなしでサービス出来るという事実を考慮に入れるために、明白な仕方でディスクの実効サービス要求時間を調整する。
    • D_k=V_k\left[(1-(hit\;ratio{\times}read\;ratio)){\times}(seek_k+latency_k)
      • \left\;+transfer_k+contention_k\right]
    • ヒット率は顕著な仕方でサイト依存性がある傾向がないので、典型的な値をメーカのデータから得ることが出来る。リード率は置き換えの結果で変化する傾向がないので、既存システムからの測定データを利用することが出来る。
  • キャッシュを管理することによるオーバヘッドはさまざまなパス要素で、特にコントローラで稼動率増加を引き起こす。これらの稼動率増加はパス競合に影響をあたえるので表現されなければならない。基本転送時間を所与として、このオーバヘッドを見積もるために使用される乗数を提供するメーカのデータが利用可能である。これらの乗数はパス・ビジー確率を計算する際にモデル内で使用出来る。


10.7.実施上の配慮」に続きます。