プロセッサーの割り振り

このセクションでは、専用プロセッサー論理区画と共用プロセッサー論理区画の両方について、プロセッサーの割り振りのガイドラインを示します。

1500 バイトの MTU サイズを実行するイーサネットは、ジャンボ・フレーム (MTU 9000) を実行するイーサネットより多くのプロセッサー・サイクルを消費するので、ガイドラインは各状態によって異なります。 一般に、ジャンボ・フレーム上の大きなパケット・ワークロードの場合の プロセッサー使用率は、MTU 1500 の場合に必要とされるプロセッサー使用率の約半分です。

MTU が 1500 に設定されている場合は、最大の処理能力を達成できるように、ギガビット・イーサネット・アダプター当たり 1 台のプロセッサー (1.65 Ghz) を用意します。 小さなネットワークを使用している場合、これは 100-Mb イーサネット・アダプター 10 個分に等しくなります。 小さいトランザクション・ワークロード の場合は、ギガビット・イーサネットのワークロードを最大のスループットで駆動するには 1 台のフル・プロセッサーを使用することを計画します。 例えば、2 つのギガビット・イーサネット・アダプターを使用する場合は、論理区画に最大 2 台のプロセッサーを割り振ります。

MTU が 9000 (ジャンボ・フレーム) に設定されている場合は、最大の処理能力に到達するためには、ギガビット・イーサネット・アダプター当たり 1 台のプロセッサーの 50% (1.65 Ghz) を用意します。 小さいパケットは、ギガビット・イーサネット・ワークロードを駆動するために 1 台のフル・プロセッサーを 使用するよう計画する必要があります。 ジャンボ・フレームは小さなパケット・ワークロードのケースには影響を及ぼしません。

専用プロセッサー論理区画を使用する 共用イーサネット・アダプター

提供されるサイジングは、TCP ストリーミングおよび TCP 要求と応答の 2 つのワークロード・タイプに分割されます。 サイジングでは MTU 1500 および MTU 9000 の両方のネットワークが使用されました。 サイジングは、ストリーミングの場合はスループットのバイト当たり、要求/応答ワークロードの場合はトランザクション当たりのマシン・サイクルに対して示されています。

以下の表のデータは下記の数式を使用して導き出されました。

(プロセッサーの数 × プロセッサー使用率 × プロセッサー・クロック周波数)/秒当たりのバイト数または秒当たりのトランザクション数でのスループット率 = バイトまたはトランザクション当たりのサイクル。

このテストの目的のために、数字は、同時マルチスレッド化 (SMT) が使用可能にされた状態で 1 台の 1.65 Ghz プロセッサーを持つ 1 つの論理区画で測定されました。

他のプロセッサー周波数の場合は、これらの表の数はプロセッサー周波数の比率に応じて、サイジングに使用する近似値に定めることができます。 例えば、1.5 Ghz のプロセッサー速度の場合は、 「1.65/1.5 × 表からのバイト値当たりのサイクル数」を使用します。 この例では、表の値の 1.1 倍の値になり、1.5 Ghz プロセッサーより 10% 遅いクロック速度に調整するのに 10% だけ 多いサイクルが必要になることになります。

これらの値を使用するには、要求されるスループット速度 (バイトまたはトランザクション数) に、以下の表のバイト値当たりのサイクル数を掛けます。 この結果により、1.65 Ghz の速度のワークロード に対して必要とされるマシン・サイクルが得られます。 次に、この値を、この 1.65 Ghz の速度に対する実際のマシン速度の比率によって調整します。 プロセッサーの台数を見つけるには、結果を 1,650,000,000 サイクル (または異なる速度のマシンに調整した場合は、そのサイクル速度) によって 割ります。 ワークロードを駆動するには、結果として得られたプロセッサー台数が必要になります。

例えば、 Virtual I/O Server が 200 MB のストリーミング・スループットを提供する必要がある場合は、以下の数式が使用されます。

200 × 1024 × 1024 × 11.2 = 2,348,810,240 サイクル/プロセッサーごと 1,650,000,000 サイクル = 1.42 プロセッサー。

丸め数の場合、このワークロードを処理するには、 Virtual I/O Server に 1.5 個のプロセッサーが必要になります。 その場合、そのようなワークロードは、2 つの専用プロセッサーを使用した論理区画、または 1.5 プロセッサー構成の共用プロセッサーを使用した論理区画のいずれかを使用して処理することができます。

以下の表は、TCP ストリーミング・ワークロードの場合のバイト当たりのマシン・サイクルを示しています。

表 1. スレッド化オプションが使用可能での共用イーサネット
ストリーミングのタイプ MTU 1500 速度およびプロセッサー使用率 MTU 1500、バイト当たりのサイクル MTU 9000 速度およびプロセッサー使用率 MTU 9000、バイト当たりのサイクル
Simplex 112.8 MB (80.6% プロセッサーで) 11.2 117.8 MB (37.7% プロセッサーで) 5
二重 162.2 MB (88.8% プロセッサーで) 8.6 217 MB (52.5% プロセッサーで) 3.8
表 2. スレッド化オプションが使用不可での共用イーサネット
ストリーミングのタイプ MTU 1500 速度およびプロセッサー使用率 MTU 1500、バイト当たりのサイクル MTU 9000 速度およびプロセッサー使用率 MTU 9000、バイト当たりのサイクル
Simplex 112.8 MB (66.4% プロセッサーで) 9.3 117.8 MB (26.7% プロセッサーで) 3.6
二重 161.6 MB (76.4% プロセッサーで) 7.4 216.8 MB (39.6% プロセッサーで) 2.9

以下の表は、要求と応答のワークロードの場合のトランザクション当たりのマシン・サイクルを示しています。 トランザクションは、往復の要求と応答のサイズとして定義されます。

表 3. スレッド化オプションが使用可能での共用イーサネット
トランザクションのサイズ 1 秒当たりのトランザクションと Virtual I/O Server の使用率 MTU 1500 または 9000、トランザクション当たりのサイクル
小さなパケット (64 バイト) 59,722 TPS (83.4% プロセッサーで) 23,022
大きなパケット (1024 バイト) 51,956 TPS (80% プロセッサーで) 25,406
表 4. スレッド化オプションが使用不可での共用イーサネット
トランザクションのサイズ 1 秒当たりのトランザクションと Virtual I/O Server の使用率 MTU 1500 または 9000、トランザクション当たりのサイクル
小さなパケット (64 バイト) 60,249 TPS (65.6% プロセッサーで) 17,956
大きなパケット (1024 バイト) 53,104 TPS (65% プロセッサーで) 20,196

上記の各表は、共用イーサネットのスレッド化オプションにより、MTU 1500 ストリーミングの場合はトランザクション当たりのマシン・サイクル数が約 16% から 20% 増加し、MTU 9000 の場合はトランザクション当たりのマシン・サイクル数が約 31% から 38% 増加することを示しています。 スレッドはパケットごとに開始されるため、ワークロードが低いほど、スレッド化オプションによるトランザクション当たりのマシン・サイクル数の増加が大きくなります。 全二重または要求と応答のワークロードのような、より高いワークロード速度では、スレッドは待機したり、再ディスパッチされることなく より長く稼働できます。 Virtual I/O Server コマンドを使用して、各共用イーサネット・アダプターのスレッド・オプションを構成できます。 共用イーサネットが Virtual I/O Server 論理区画内で単独で (同じ論理区画内で仮想 Small Computer Serial Interface (SCSI) を使用せずに) 実行されている場合は、スレッド・オプションを使用不可にしてください。

mkvdev コマンドの -attr thread オプションを使用してスレッド化を使用可能または使用不可にすることができます。 スレッド化を使用可能にするには、-attr thread=1 オプションを使用します。 スレッド化を使用不可にするには、-attr thread=0 オプションを使用します。 例えば、次のコマンドは、 共用イーサネット・アダプター ent1のスレッド化を使用不可にします。

mkvdev -sea ent1 -vadapter ent5 -default ent5 -defaultid 1 -attr thread=0

共用プロセッサー論理区画上の共用イーサネット用の Virtual I/O Server のサイズ変更

Virtual I/O Server 用の共用プロセッサー論理区画の作成は、 Virtual I/O Server が低速ネットワーク (例えば、10/100 Mb) を実行しており、フル・プロセッサー論理区画が必要ない場合に実行できます。 これは、 Virtual I/O Server ワークロードがプロセッサーの半分未満の場合、またはワークロードが不整合の場合にのみ行うことをお勧めします。 Virtual I/O Server 論理区画を上限なしとして構成すると、不整合なスループットを処理するために必要に応じて、より多くのプロセッサー・サイクルを使用できるようになる可能性もあります。 例えば、他のプロセッサーがアイドル状態のときにのみネットワークが使用される場合、 Virtual I/O Server 論理区画は他のマシン・サイクルを使用できる可能性があり、日中の軽いワークロードを処理するために最小限のプロセッサーで作成される可能性がありますが、上限なしプロセッサーは夜間により多くのマシン・サイクルを使用する可能性があります。

共用プロセッサー論理区画内に Virtual I/O Server を作成する場合は、サイジングの緊急時対応策として、追加のライセンス済みプロセッサーを追加します。