PERF02-BP06 最適化されたハードウェアベースのコンピューティングアクセラレーターを使用する
ハードウェアアクセラレーターを使用すると、CPU ベースの代替手段よりも効率的に特定の機能を実行できます。
一般的なアンチパターン:
-
現在のワークロードで、より高いパフォーマンスとより低いコストを実現できる専用のインスタンスに対する汎用インスタンスのベンチマーキングを行ったことがない。
-
CPU ベースのコンピューティングアクセラレーターを使用した方が効率的なタスクに、ハードウェアベースのコンピューティングアクセラレーターを使用している。
-
GPU の使用状況を監視していない。
このベストプラクティスを活用するメリット: GPU (グラフィックス処理ユニット) や FPGA (フィールドプログラマブルゲートアレイ) などのハードウェアベースのアクセラレーターを使用することで、特定の処理機能をより効率的に実行できます。
このベストプラクティスを活用しない場合のリスクレベル: 中
実装のガイダンス
高速コンピューティングインスタンスを使用すると、GPU や FPGA などのハードウェアベースのコンピューティングアクセラレーターにアクセスできます。これらのハードウェアアクセラレーターは、グラフィック処理やデータパターンマッチングなどの特定の機能を、CPU ベースの代替手段よりも効率的に実行します。レンダリング、トランスコーディング、機械学習など、多くの高速ワークロードは、リソースの使用量に大きなばらつきがあります。このハードウェアは必要な時間だけ実行し、必要のない場合は自動で廃止することで、全体的なパフォーマンス効率を向上させることができます。
実装手順
-
どの 高速コンピューティングインスタンスが お客様の要件に対応できるかを特定します。
-
機械学習のワークロードには、 AWS Trainium
、 AWS Inferentia 、 Amazon EC2 DL1 など、ワークロードに特化した専用ハードウェアを利用します 。Inf2 インスタンスなどの AWS Inferentia インスタンスは、 Amazon EC2 インスタンスと比較して、ワットあたりのパフォーマンスが最大 50% 向上します 。 -
高速コンピューティングインスタンスの使用状況メトリクスを収集します。例えば、CloudWatch エージェントを使用して、GPU の
utilization_gpu
およびutilization_memory
などのメトリクスを収集できます ( 「Amazon CloudWatch で NVIDIA GPU メトリクスを収集する」を参照)。 -
ハードウェアアクセラレーターのコード、ネットワーク操作、設定を最適化し、基盤となるハードウェアが十分に活用されるようにします。
-
最新の高性能ライブラリと GPU ドライバーを使用します。
-
使用しないときは、自動化を使用して GPU インスタンスを解放します。
リソース
関連するドキュメント:
関連動画: