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

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

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

負荷テストを実行して、意図した通りに動作する自動スケーリング設定を選択します。

Amazon のオートスケーリングを最適化するための負荷テストの例については、 SageMaker エンドポイント、を参照してください。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 (1 分ごとの値) CloudWatch というメトリクス SageMaker を使用して、自動スケーリングを実装します(測定した場合、これを実行する必要はありません。 requests-per-minute の代わりにリクエスト/秒).

注記

SageMaker では、SAFETY_FACTOR を 0.5 に設定してテストを始めることをお勧めします。自動スケーリング設定をテストし、エンドポイント上のお客様のトラフィックの増減がモデルで期待したとおりに動作することを確認します。