Elastic Fabric Adapter
Elastic Fabric Adapter (EFA) は、ハイパフォーマンスコンピューティング (HPC) アプリケーションを高速化するネットワークデバイスです。AWS Batch は、以下の条件が満たされている場合、EFA を使用するアプリケーションをサポートします。
-
EFA をサポートするインスタンスタイプのリストについては、「Amazon EC2 ユーザーガイド」の「サポートされるインスタンスタイプ」を参照してください。
ヒント
AWS リージョンで EFA をサポートするインスタンスタイプのリストを表示するには 、次のコマンドを実行します。次に、AWS Batchのコンソールで利用可能なインスタンスタイプの返されたリストと共に、返されたリストを相互参照します。
$aws ec2 describe-instance-types --regionus-east-1--filters Name=network-info.efa-supported,Values=true --query "InstanceTypes[*].[InstanceType]" --output text | sort -
EFAをサポートするオペレーティングシステムのリストについては、 サポート対象のオペレーティングシステムを参照してください。
-
AMI には EFA ドライバーがロードされています。
-
EFA のセキュリティグループは、セキュリティグループとの間で送受信されるすべてのトラフィックを許可する必要があります。
-
EFA を使用するすべてのインスタンスは、同じクラスタープレイスメントグループに属していなくてはなりません。
-
ジョブ定義には、
hostPathを/dev/infiniband/uverbs0に設定したdevicesメンバーを含めて、EFA デバイスがコンテナにパススルーされるようにする必要があります。containerPathが特定される場合は、それも/dev/infiniband/uverbs0に設定する必要があります。permissionsを設定する場合は、READ|WRITE|MKNODに設定する必要があります。LinuxParameters メンバーの場所は、マルチノードの並列ジョブと単一ノードのコンテナジョブとでは異なります。以下の例は、その違いを示すものですが、必要な値が不足しています。
例 マルチノードの並列ジョブの例
{ "jobDefinitionName": "EFA-MNP-JobDef", "type": "multinode", "nodeProperties": { ... "nodeRangeProperties": [ { ... "container": { ... "linuxParameters": { "devices": [ { "hostPath": "/dev/infiniband/uverbs0", "containerPath": "/dev/infiniband/uverbs0", "permissions": [ "READ", "WRITE", "MKNOD" ] }, ], }, }, }, ], }, }例 単一ノードのコンテナジョブの例
{ "jobDefinitionName": "EFA-Container-JobDef", "type": "container", ... "containerProperties": { ... "linuxParameters": { "devices": [ { "hostPath": "/dev/infiniband/uverbs0", }, ], }, }, }
EFA の詳細については、「Amazon EC2 ユーザーガイド」の「Elastic Fabric Adapter」を参照してください。