SUS05-BP04 ハードウェアベースのコンピューティングアクセラレーターの使用を最適化する
高速コンピューティングインスタンスの使用を最適化することで、ワークロードの物理インフラストラクチャの需要を低減します。
一般的なアンチパターン:
-
GPU の使用状況を監視していない。
-
専用インスタンスがより高い性能、低コスト、ワットあたりの性能を実現できるのに対し、ワークロードに汎用インスタンスを使用している。
-
CPU ベースのコンピューティングアクセラレーターを使用した方が効率的なタスクに、ハードウェアベースのコンピューティングアクセラレーターを使用している。
このベストプラクティスを活用するメリット: ハードウェアベースのアクセラレーターの使用を最適化することで、ワークロードの物理インフラストラクチャの需要を低減できます。
このベストプラクティスを活用しない場合のリスクレベル: 中
実装のガイダンス
高い処理能力が必要な場合、高速コンピューティングインスタンスを使用すると、グラフィック処理ユニット (GPU) やフィールドプログラマブルゲートアレイ (FPGA) などのハードウェアベースのコンピューティングアクセラレーターを利用できるというメリットが得られます。これらのハードウェアアクセラレーターは、グラフィック処理やデータパターンマッチングなどの特定の機能を、CPU ベースの代替手段よりも効率的に実行します。レンダリング、トランスコーディング、機械学習など、多くの高速ワークロードは、リソースの使用量に大きなばらつきがあります。このハードウェアは必要な時間だけ実行し、不要になったら自動で廃止することで、消費されるリソースを最小化します。
実装手順
-
要件に対応できる高速コンピューティングインスタンスを特定します。
-
機械学習のワークロードには、AWS Trainium
、AWS Inferentia 、Amazon EC2 DL1 などのワークロード専用ハードウェアを活用してください。AWSInf2 インスタンスなどの Inferentia インスタンスは、同等の Amazon EC2 インスタンスと比較してワットあたりのパフォーマンスが最大 50% 向上します 。 -
高速コンピューティングインスタンスの使用状況メトリクスを収集します。例えば、「Amazon CloudWatch で NVIDIA GPU メトリクスを収集する」のように、CloudWatch エージェントを使用して GPU の
utilization_gpu
やutilization_memory
などのメトリクスを収集できます。 -
ハードウェアアクセラレーターのコード、ネットワーク操作、設定を最適化し、基盤となるハードウェアが十分に活用されるようにします。
-
最新の高性能ライブラリと GPU ドライバーを使用します。
-
使用しないときは、自動化を使用して GPU インスタンスを解放します。
リソース
関連ドキュメント:
関連動画:
-
AWS re:Invent 2021 - How to select Amazon EC2 GPU instances for deep learning
-
AWS Online Tech Talks - Deploying Cost-Effective Deep Learning Inference
-
AWS re:Invent 2022 - [NEW LAUNCH!] Introducing AWS Inferentia2-based Amazon EC2 Inf2 instances
-
AWS re:Invent 2022 - Accelerate deep learning and innovate faster with AWS Trainium
-
AWS re:Invent 2022 - Deep learning on AWS with NVIDIA: From training to deployment