9.1.導入:Quantitative System Performance

8.8.演習」の続きです。(目次はこちら

9.1.導入


 メモリとその管理はおもに2つの仕方でコンピュータ・システムの性能に影響を与える。まず、ほぼ全てのシステムはメモリ制約、つまりメモリの使用可能性によって課せられた、同時にアクティブになり得る「コントロールのスレッド」の数の制限、を持っている。メモリ制約は、処理リソース(CPUやディスクなど)を同時に利用出来る程度に、よってシステムのスループットに上限を与える。2番目に、メモリ管理に関連するオーバヘッドが存在する。一例として、プライマリ・メモリとセカンダリ・ストレージの間のユーザのスワッピングはI/Oサブシステム(と同様にCPUに)処理要求時間を課す。オペレーティング・システムが処理リソースをメモリの管理に充てる範囲で、「役に立つ」作業の進みは邪魔される。
 パートIIIで、メモリはめったに明示的に言及されなかったが、個々の例では特定の暗黙の仮定がなされていた。

  • 作業負荷の強度をその個体数Nで記述した時(バッチ作業負荷を持つクローズドモデル)、我々はシステムがメモリ制約を持っており、この制約がジョブの特定の数で表現出来ると(つまり、全てのジョブが同じ量のメモリを必要とすると)、そして、システムがその最大マルチプログラミング・レベルで連続して稼働し続けるのに充分な作業のバックログが存在することを確信していた。
  • 作業負荷の強度をその個体数Nと平均考慮時間Zで記述した時(端末作業負荷を持つクローズドモデル)、我々はシステムが固定の数の会話ユーザを持つこと、そして同時にメモリを要求することが出来るだけのこれらのユーザに対応するのに充分なメモリが存在することを(つまり、メモリ制約がないことを)確信していた。
  • 作業負荷の強度をその到着レート\lambdaで記述した時(トランザクション作業負荷を持つオープンモデル)、我々はやはりメモリ制約がないことを確信していた。この場合の仮定は実際は端末作業負荷の場合に比べて若干極端である。というのはトランザクション作業負荷の中核サブシステムの個体数については限界がないからである。

個々の場合我々はメモリ管理によるオーバヘッドを無視するかあるいは個々の客の処理要求時間の平均値に含めるかのいずれかをしていた。
 システム動作に関するこれらの単純な仮定は待ち行列ネットワーク・モデルが分離可能であるために、つまりパートIIで記述された効率的な評価手法に直接従うことが出来るために要求される諸条件を満足するため、モデル化スタディの際にしばしば出会った。これらのスタディが成功しているという事実は、これらの諸仮定が、厳密には正しくないとしても、少なくとも丈夫であることを示している。

  • 実際のコンピュータ・システムではバッチ作業負荷のマルチプログラミング・レベルは多くの理由で時間の経過につれて変化する。つまり、バッチ作業負荷に使用可能なメモリの量は変化するかもしれず、あるいは個々のバッチ・ジョブのメモリ要求量は異なるかもしれず、作業のバックログ(積み残し)はメモリ制約より下に落ちるかもしれない。しかし、通常、観測されたマルチプログラミング・レベルの時間で重みづけした平均を表す1つのマルチプログラミング・レベルを用いるモデルの妥当性を立証することは可能である。作業負荷や構成の修正についての性能予測は、分析者が修正のこの平均マルチプログラミング・レベルへの影響を見積もることを要求する。
  • ほとんど全ての会話型システムではユーザがメモリへのアクセスを待たなければならない時があるが、これらの時はあまり頻繁ではないのでモデルを構築する際にメモリ制約の存在は無視出来る。作業負荷や構成の修正はメモリを要求するユーザの数の分布に影響を与えるかもしれないので、そのような修正をモデル化する際は諸仮定の妥当性を確認しなければならない。それを実行することは通常、難しくない。
  • 詳細なページング動作はモデル化が難しいが、多くのオペレーティング・システムは構成や負荷の変動に比較的影響されない平均ページング転送レートを維持することに成功している。そのような場合、ページング・デバイスでの客の処理要求時間を特徴づけることは困難ではない。

 もちろん、これらの単純な仮定は常に適切とは限らない。この章で我々は待ち行列ネットワーク・モデルでメモリとその管理を表現する際の柔軟性を拡張する。この章の構成は、メモリ制約のスループット制限効果はメモリの性能に対する主要効果であるが、メモリ管理に関連するオーバヘッドは顕著な副次効果であるという我々の意見を反映している。この章は5つの主要なセクションに分かれる。まず我々は既知の平均マルチプログラミング・レベルを持つシステムの単純な場合に発生する可能性のある微妙さの若干を調査する。次に、時々、しかし連続的にではないが、到達する、メモリ制約のシステム・スループットへの影響を表現する方法を示す。次に、スワッピング(セクション9.4)とページング(セクション9.5)によるオーバヘッドを表現する方法を説明する。最後に、ケーススタディを用いてこれらのテクニックを互いに関係付け、個々のセクションで提示した例を補足する。

9.2.既知の平均マルチプログラミング・レベルを持つシステム」に続きます。