AWS EFA(Elastic Fabric Adapter)は、高性能コンピューティング(HPC)や機械学習などの低レイテンシ・高スループット通信を必要とするワークロード向けのネットワークインターフェースです。
🧠 ざっくり一言でいうと?
**「EC2インスタンス間で、超高速・低遅延なネットワーク通信を可能にする機能」**です。
✅ 主な特徴
項目 |
内容 |
超低レイテンシ |
インスタンス間通信の遅延を大幅に低減(RDMAにより) |
高スループット |
数十Gbpsクラスのネットワーク性能 |
OSバイパス |
通常のTCP/IPスタックを通らず、NICを直接操作(RDMA) |
対応プロトコル |
**MPI(Message Passing Interface)**など |
EC2専用 |
通常の ENI とは別のネットワークインターフェース |
💡 どんなときに使う?
EFA は主に以下のような高性能・並列処理を行うシステムに適しています:
- CFD(数値流体力学)
- FEM(有限要素法シミュレーション)
- 天体物理学や量子力学などの科学シミュレーション
- 大規模機械学習(分散学習)
- MPIベースのアプリケーション
🚀 対応インスタンスタイプ(一例)
インスタンスファミリー |
特徴 |
c5n , c6gn , p4 , p5 , g4ad など |
高速ネットワークをサポート |
hpc6id , hpc6a など |
HPC 専用設計で EFA 対応 |
🛠 使用に必要な設定(概要)
- EFA対応インスタンスを選ぶ
-
AMIがEFAに対応していることを確認(EFA対応のAmazon Linux 2やUbuntuなど)
- セキュリティグループ/SGでEFA通信ポートを許可
- MPIライブラリ(例:Open MPI)をEFA対応版に入れ替える
- EFAドライバと
efa-installer
をインストール
- 起動時に
--efa
オプションを付けてEC2を作成する
📦 ソフトウェア構成イメージ(MPIアプリ)
[Node1] EFA-enabled EC2 ─── RDMA ─── [Node2] EFA-enabled EC2
↑ MPI (OpenMPI, IntelMPI)
🆚 通常のENIとの違い
項目 |
通常のENI |
EFA |
レイテンシ |
数百μs〜ms |
数十μs以下 |
スループット |
最大25 Gbps |
最大100 Gbps超 |
通信方式 |
TCP/UDP |
RDMA(OSバイパス) |
用途 |
汎用通信 |
HPC・MPI専用 |
✍ まとめ
特性 |
内容 |
対象 |
HPC・科学技術計算・大規模機械学習など |
特徴 |
RDMAにより低レイテンシかつ高スループット |
要件 |
EFA対応のインスタンスとAMIが必要 |
注意点 |
通常のTCP/IPアプリでは効果が出ない場合もある |