Elastic High Performance Computing (E-HPC) クラスターの各コンピュートノードは、Elastic Compute Service (ECS) インスタンスです。デフォルトでは、各 ECS インスタンスでハイパースレッディング (HT) が有効になっています。一部の高性能コンピューティング (HPC) シナリオでは、HT を無効にしてインスタンスのパフォーマンスを向上させることができます。このトピックでは、コンピュートノードの HT を無効にする方法について説明します。
背景情報
CPU は中央処理装置です。 1 つの CPU には複数の物理コアが含まれている場合があります。HT テクノロジーを使用すると、CPU の各物理コアに対して 2 つの仮想処理コアを作成できます。ECS は、HT に基づくマルチスレッディングをサポートしており、2 つのスレッドを単一の物理コアで同時に実行できます。各スレッドは仮想 CPU (vCPU) と見なすことができます。vCPU は、ECS インスタンスの仮想処理コアです。一部の HPC シナリオでは、コンピュートノードで HT を無効にしてパフォーマンスを向上させることができます。
注意事項
インスタンスタイプによって、HT の無効化に関する制限が異なります。
HT は、一部のエンタープライズレベル x86 コンピュート最適化 ECS インスタンスでのみ無効にできます。詳細については、「インスタンスタイプの制限」をご参照ください。
HT は ECS ベアメタルインスタンスでは直接無効にすることはできませんが、ソフトウェアレベルで無効にすることができます。
HT は、Super Computing Cluster (SCC) インスタンスではデフォルトで無効になっています。
エンタープライズレベル x86 コンピュート最適化 ECS インスタンスで HT を無効にする
作成済みのクラスターにコンピュートノードを追加する必要がある場合は、これらのインスタンスで HT を有効にするかどうかを指定できます。
エンタープライズレベル x86 コンピュート最適化 ECS インスタンスでは、作成後に HT を無効にすることはできません。
手動スケールアウト
自動スケーリング
ECS ベアメタルインスタンスで HT を無効にする
ECS ベアメタルインスタンスでは、インスタンスの作成後にソフトウェアレベル(ゲスト OS 内)で HT を無効にすることができます。そのためには、nr_cpus を設定するか、vCPU のステータスを変更します。各物理コアは 2 つの仮想処理コアに対応しています。ゲスト OS 内で HT を無効にするということは、実際には各物理コアの仮想処理コアの 1 つを無効にするということです。このようにして、1 つの物理コアは 1 つの仮想処理コアのみに対応します。
ベアメタルサーバーで HT を物理的に無効にするには、マザーボードの BIOS を管理する必要があります。このプロセスではハードウェアの再起動が必要になり、複雑でリスクを伴います。したがって、このトピックで説明する 2 つの方法を使用することをお勧めします。HT をソフトウェアレベルで管理することで、無効化と同様の効果を得ることができます。
方法 | メリット | デメリット |
nr_cpu を設定する |
|
|
vCPU ステータスを変更する | インスタンスを再起動せずに、コマンドを実行して vCPU のステータスを変更できます。この方法で HT を無効にした後、 |
|
これらの 2 つの方法が実際にビジネスに影響を与えるかどうかは保証できません。実際の運用環境でビジネスへの影響を十分に評価することをお勧めします。







