对您的自动扩展配置进行负载测试 - Amazon SageMaker
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

对您的自动扩展配置进行负载测试

执行负载测试以选择按所需方式工作的自动扩展配置。

有关为 Amazon SageMaker 终端节点优化自动扩展的负载测试的示例,请参阅使用自动扩展对 Amazon SageMaker 终端节点进行负载测试和优化

以下负载测试准则假定您使用的是一个使用预定义目标指标 SageMakerVariantInvocationsPerInstance 的自动扩展策略。

确定性能特征

执行负载测试以便随并发度增加查找模型的生产变体可以处理的峰值 InvocationsPerInstance,以及请求的延迟。

此值取决于所选的实例类型、模型的客户端通常发送的有效负载以及模型具有的任何外部依赖项的性能。

查找模型的生产变体可以处理的峰值每秒请求数以及请求的延迟

  1. 使用单个实例为模型设置终端节点。有关如何设置终端节点的信息,请参阅将模型部署到 SageMaker 托管服务

  2. 使用负载测试工具可生成越来越多的并行请求,并在负载测试工具的输出中监控 RPS 和模型延迟。

    注意

    您还可以监控每分钟请求数,而不是 RPS。在这种情况下,不要在等式中乘以 60 来计算下面显示的 SageMakerVariantInvocationsPerInstance

    当模型延迟增加或成功事务的比例降低时,这是您的模型可以处理的峰值 RPS。

计算目标负载

在您找到变体的性能特征后,您可以确定应允许发送到实例的最大 RPS。用于扩展的阈值必须小于此最大值。将以下公式与负载测试结合使用可确定自动缩放扩配置中 SageMakerVariantInvocationsPerInstance 目标指标的正确值。

SageMakerVariantInvocationsPerInstance = (MAX_RPS * SAFETY_FACTOR) * 60

其中,MAX_RPS 是您之前确定的最大 RPS,SAFETY_FACTOR 是您为确保客户端不超过最大 RPS 而选择的安全系数。乘以 60 可从 RPS 转换为每分钟调用数,以匹配 SageMaker 用于实现自动扩展的每分钟 CloudWatch 指标(如果您测量每分钟请求数而不是每秒请求数,则不需要这样做)。

注意

SageMaker 建议您使用 0.5 的 SAFETY_FACTOR 开始测试。测试您的自动扩展配置,以确保它在您的模型中以您期望的方式运行,以便在终端节点上增加和减少客户流量。