23.4. CPU の割り当て


<domain>
  ...
  <vcpu placement='static' cpuset="1-4,^3,6" current="1">2</vcpu>
  ...
</domain>

図23.6 CPU の割り当て

<vcpu> 要素は、ゲスト仮想マシン OS に割り当てられる仮想 CPU の最大数を定義します。この値は、ハイパーバイザーによってサポートされる最大数以下で 1 以上の値にする必要があります。この要素には、ドメインプロセスと仮想 CPU がデフォルトで固定される物理 CPU 数のコンマ区切りのリストである、オプションの cpuset 属性を含めることができます。
ドメインプロセスのピニングポリシーと仮想 CPU は、cputune 属性を使用して個別に指定することができます。emulatorpin 属性が <cputune> に指定された場合、<vcpu>によって指定された cpuset は無視されます。
同様に、vcpupin の値を設定している仮想 CPU では、cpuset 設定は無視されます。vcpupin が指定されていない仮想 CPU の場合、これは cpuset によって指定される物理 CPU に固定されます。cpuset 一覧の各要素は単一の CPU 番号、CPU 番号の範囲、またはキャレット (^)の後に以前の範囲から除外される CPU 番号が続く値のいずれかになります。属性 current は、最大数より少ない数の仮想 CPU を有効にするかどうかを指定するために使用することができます。
オプションの placement 属性は、ドメインプロセスの CPU 配置モードを示すために使用できます。値は static または auto のいずれかに設定できます。static の場合、cpuset 属性によって定義される物理 CPU に仮想 CPU を固定します。cpuset が定義されていない場合、ドメインプロセスは利用可能な物理 CPU すべてに固定されます。auto の場合、ドメインプロセスはクエリーする numad からアドバイザリーノードセットへ固定されます。これが指定された場合は、cpuset 属性の値は無視されます。placement とともに cpuset 属性が使用された場合、placement のデフォルト値は numatune の値 (使用されている場合) または static になります。