Amazon EC2 Capacity Blocks for ML の Instance CB と UltraServer CB の違いを整理してみた
はじめに
Amazon EC2 Capacity Blocks for ML には、Instance Capacity Blocks と UltraServer Capacity Blocks の 2 種類があります。

どちらも将来の日時に GPU / Trainium インスタンスを予約するサービスです。予約するリソースの単位や、制約が少し異なります。この 2 種類の違いを整理します。
Instance / UltraServer Capacity Blocks の比較
両者の主な違いは「予約するリソースの単位」と「クロスアカウント共有の可否」です。Instance Capacity Blocks は個々のインスタンスを予約できます。AWS RAM によるクロスアカウント共有にも対応しています。一方、UltraServer Capacity Blocks は NVLink / NeuronLink で結合された UltraServer を 1 つの単位として予約します。
予約単位・上限・共有方法・ターミネーション動作など、主要な違いを一覧にまとめます。
| 項目 | Instance CB | UltraServer CB |
|---|---|---|
| 予約単位 | インスタンス数 | UltraServer 数 |
| 1 CB あたりの上限 | 最大 64 インスタンス | UltraServer 数で指定 |
| Organization 全体の上限 | 最大 256 インスタンス(1 日あたり) | 複数の UltraServer 予約可能 |
| 相互接続 | UltraClusters 内近接配置(EFA) | NVLink / NeuronLink(専用相互接続) |
| AWS RAM 共有 | 可能 | 不可 |
| リソースグループ | 不可 | 可能 |
| ターミネーション | 終了 30 分前に自動開始 | P6e-GB200: 終了 60 分前までにユーザーが手動終了 |
予約期間(共通)
予約期間の仕様は Instance Capacity Blocks・UltraServer Capacity Blocks ともに共通です。
| 項目 | 詳細 |
|---|---|
| 最小予約期間 | 1日 |
| 最大予約期間 | 182日(26週間) |
| 期間の刻み | 14日までは1日刻み、14日以降は7日刻み |
| 予約開始リードタイム | 最短 30 分後〜最大 8 週間先 |
| 延長 | 可能(合計 182 日まで) |
| キャンセル | 不可 |
Instance Capacity Blocks について
個々の EC2 インスタンスを単位として容量を予約するタイプです。1 Capacity Block あたり最大 64 インスタンスを予約できます。リージョンやインスタンスタイプによっては上限が異なります。
p4d / p4de / p5 / p5e / p6 / trn1 / trn2 系が対象で、東京リージョンでは p5 / p5e 系が利用可能です。
対応インスタンスタイプとリージョンの最新情報は公式ドキュメントを参照してください。
予約したインスタンスは Amazon EC2 UltraClusters 内に自動的に近接配置され、低遅延のネットワークが提供されます。

ターミネーション動作
予約終了の 30 分前に AWS がインスタンスのターミネーションを自動で開始します。ターミネーション開始の 10 分前に EventBridge イベントが発行されます。
You can use all the instances you reserved until 30 minutes (for instance types) [...] before the end time of the Capacity Block. With 30 minutes (for instance types) [...] left in your Capacity Block reservation, we begin terminating any instances that are running in the Capacity Block.
引用: How Amazon EC2 Capacity Blocks work - Amazon EC2 User Guide
UltraServer Capacity Blocks について
複数の EC2 インスタンスを専用の相互接続(NVLink / NeuronLink)で結合した UltraServer を予約するタイプです。

対応している UltraServer は、P6e-GB200、Trn2 UltraServer の 2 つのみです。
最新情報は公式ドキュメントを確認してください。
ターミネーション動作
UltraServer Capacity Blocks では、予約終了の 60 分前までにユーザー自身がインスタンスをターミネーションする必要があります。AWS による自動ターミネーションは行われません。Instance Capacity Blocks とは異なる動作 ですので認識しておきましょう。
For
P6e-GB200UltraServer Capacity Blocks, you must terminate your instances at least 60 minutes before the Capacity Block end time.
リソースグループ
UltraServer Capacity Blocks では、複数の Capacity Blocks を AWS Resource Groups でグループ化できます。インスタンス起動時にリソースグループをターゲット指定すると、属性と空き容量が一致する Capacity Block に自動マッチします。
You can use AWS Resource Groups to create logical collections of UltraServer Capacity Blocks. [...] you can target instances launches to the resource group instead of the individual Capacity Blocks.
引用: Create a resource group for UltraServer Capacity Blocks - Amazon EC2 User Guide
要は論理的なグループで Capacity Blocks を管理でき、インスタンス起動時のターゲット指定を簡略化できることが利点です。
補足: Trn2 UltraServer について

UltraServer を予約可能なバージニア北部リージョンでは、以下の様な画面です。

まとめ
Capacity Blocks for ML の 2 種類を整理しました。
Instance Capacity Blocks は個別インスタンス単位の予約です。AWS RAM によるクロスアカウント共有に対応しています。ターミネーションは予約終了 30 分前に AWS が自動で実行します。
UltraServer Capacity Blocks は UltraServer 単位の予約です。P6e-GB200 では予約終了 60 分前までにユーザー自身でターミネーションが必要です。リソースグループによる起動先の柔軟な管理が可能です。
おわりに
UltraServer Capacity Blocks も同じものだと思っていたら違ったので調べたことをまとめました。どなたかのお役に立てれば幸いです。
参考
- Capacity Blocks for ML - Amazon EC2 User Guide
- Purchase Capacity Blocks - Amazon EC2 User Guide
- Capacity Blocks pricing and billing - Amazon EC2 User Guide
- Amazon EC2 UltraServers
- Amazon EC2 P6e Instances
- Amazon EC2 Trn3 UltraServers
- Amazon EC2 Trn2 Instances
- Announcing Amazon EC2 Trn3 UltraServers(What's New)
- Amazon EC2 Capacity Blocks for ML Pricing







