Oracle® Solaris 11.2 でのリソースの管理

印刷ビューの終了

更新: 2014 年 7 月
 
 

構成の目標

目標は制約と同様の方法で指定されます。目標の全一覧については、Table 12–1 を参照してください。

目標には 2 つのカテゴリがあります。

作業負荷に依存する目標

作業負荷に依存する目標とは、システムで実行される作業負荷の性質によって変化する目標です。たとえば、utilization 目標などがあります。リソースセットの使用効率の数値は、そのセットでアクティブになっている作業負荷の性質によって変化します。

作業負荷に依存しない目標

作業負荷に依存しない目標とは、システムで実行される作業負荷の性質によって変化しない目標です。たとえば、CPU の locality 目標などがあります。リソースセットの近傍性の評価値は、そのセットでアクティブになっている作業負荷の性質によって変化することはありません。

次の 3 種類の目標を定義できます。

名前
有効な要素
演算子
wt-load
system
なし
なし
locality
pset
なし
loose | tight | none
utilization
pset
< > ~
0100%

目標は、libpool 構成内のプロパティー文字列に格納されます。プロパティー名は、次のとおりです。

  • system.poold.objectives

  • pset.poold.objectives

目標の構文は次のとおりです。

  • objectives = objective [; objective]*

  • objective = [n:] keyword [op] [value]

どの目標にも、オプションで重要性を表す接頭辞を付けることができます。重要性の値は目標に乗算され、この目標が目標関数の評価に与える影響を高めます。指定できる範囲は、0 から INT64_MAX (9223372036854775807) までです。指定されていない場合、重要性のデフォルト値は 1 です。

一部の要素タイプでは、複数の種類の目標がサポートされています。pset などはその一例です。このような要素には、複数の種類の目標を指定できます。また、1 つの pset 要素に複数の使用効率目標を指定することもできます。

使用例については、構成の目標を定義する方法を参照してください。

wt-load 目標

wt-load 目標では、リソースの使用効率に合わせてリソースを割り当てるような構成が有利に導かれます。この目標が有効になっていると、より多くのリソースを使用するリソースセットには、より多くのリソースが与えられることになります。wt-load重み付けされた負荷 (weighted load) を意味します。

最小値と最大値のプロパティーを使って満足のいく制約を設定したあとで、これらの制約の範囲内でデーモンが自由にリソースを操作できるようにする場合に、この目標を使用してください。

locality 目標

locality 目標は、近傍性グループ (lgroup) データによって測定される近傍性が、選択された構成に対して与える影響を変化させます。近傍性は応答時間と定義することもできます。lgroup は、CPU リソースとメモリーリソースを表します。lgroup は、Oracle Solaris システムでリソースどうしの距離を調べるために使用されます。測定単位は時間です。

この目標には、次の 3 つの値のいずれかを指定できます。

tight

この値を設定すると、リソースの近傍性を最大にするような構成が有利に導かれます。

loose

この値を設定すると、リソースの近傍性を最小にするような構成が有利に導かれます。

none

この値を設定すると、どのような構成が有利になるかは、リソースの近傍性に依存しません。これは locality 目標のデフォルト値です。

一般に、locality 目標は tight に設定することをお勧めします。ただし、メモリー帯域幅を最大にする場合や、リソースセットに対する DR 操作の影響を最小にする場合は、この目標を loose に設定するか、デフォルト値の none にしておいてください。

utilization 目標

utilization 目標では、指定された使用効率目標を満たしていないパーティションにリソースを割り当てるような構成が有利に導かれます。

この目標は、演算子と値で指定されます。演算子は次のとおりです。

<

「小なり」演算子は、指定された値が最大のターゲット値であることを示します。

>

「大なり」演算子は、指定された値が最小のターゲット値であることを示します。

~

「ほぼ等しい」演算子は、指定された値がターゲット値であり、いくらかの変動が許容されることを示します。

pset には、演算子の種類ごとに使用効率目標を 1 つ設定できます。

  • ~ 演算子を設定した場合、< 演算子や > 演算子は設定できません。

  • < 演算子や > 演算子を設定した場合、~ 演算子は設定できません。< 演算子の設定と > 演算子の設定が互いに矛盾してはならないことに注意してください。

< 演算子と > 演算子の両方を設定すると、範囲を指定できます。これらの値は、重複しないように検証されます。

構成目標の例

次の例では、pset に対する次のような目標が poold によって評価されます。

  • utilization を 30% から 80% の範囲に保つ必要がある。

  • プロセッサセットの locality を最大にする必要がある。

  • 各目標の重要性はデフォルト値の 1 とする。

使用例 12-1  poold の目標の例

pset.poold.objectives "utilization > 30; utilization < 80; locality tight"

その他の使用例については、構成の目標を定義する方法を参照してください。