自動スケーリング設定の負荷テスト - Amazon SageMaker

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

自動スケーリング設定の負荷テスト

ロードテストを実行して、希望する方法で機能するスケーリング設定を選択します。

負荷テストの次のガイドラインでは、事前定義されたターゲットメトリクス を使用するスケーリングポリシーを使用していることを前提としていますSageMakerVariantInvocationsPerInstance

パフォーマンス特性を明確にする

負荷テストを実行し、モデルの本番稼働用バリアントが処理できる InvocationsPerInstance のピーク、および同時実行数の増加に伴うリクエストのレイテンシーを探し出します。

この値は選択したインスタンスタイプ、モデルのクライアントが通常送信するペイロード、モデルのすべての外部依存関係のパフォーマンスに依存します。

モデルの本番稼働用バリアントが処理できるピーク requests-per-second (RPS) とリクエストのレイテンシーを見つけるには
  1. 単一のインスタンスを使用してモデルにエンドポイントを設定します。エンドポイントの設定方法の詳細については、「 SageMaker ホスティングサービスにモデルをデプロイする」を参照してください。

  2. ロードテストツールを使用して、並列リクエストの数を増やし、ロードテストツールから離れた で RPS および モデルレイテンシーをモニタリングします。

    注記

    の代わりにモニタリング requests-per-minuteすることもできますRPS。その場合、式に 60 を乗算して以下に示す SageMakerVariantInvocationsPerInstance を計算しないでください。

    モデルのレイテンシーが増加するか、成功したトランザクションの割合が低下すると、これはモデルRPSが処理できるピークになります。

ターゲットの負荷を計算する

バリアントのパフォーマンス特性がわかったら、インスタンスへの送信RPSを許可する最大数を決定できます。スケーリングに使用されるしきい値はこの最大値より小さくする必要があります。次の式を負荷テストと組み合わせて使用して、スケーリング設定のSageMakerVariantInvocationsPerInstanceターゲットメトリクスの正しい値を決定します。

SageMakerVariantInvocationsPerInstance = (MAX_RPS * SAFETY_FACTOR) * 60

ここで、 MAX_RPS は以前に決定RPSした最大値であり、 SAFETY_FACTORはクライアントが最大 を超えないようにするために選択した安全係数ですRPS。60 を掛けると、 から に変換RPS invocations-per-minuteされ、 SageMaker が自動スケーリングを実装するために使用する分単位の CloudWatch メトリクスと一致します ( requests-per-minuteの代わりに を測定する場合は、これを行う必要はありません requests-per-second)。

注記

SageMaker では、0.5 SAFETY_FACTORの でテストを開始することをお勧めします。スケーリング設定をテストして、エンドポイントでの顧客トラフィックの増加と減少の両方について、モデルで期待どおりに動作することを確認します。