【问题标题】:Scaling of Google Cloud ML Engine with online predictions. How to measure the node utilization?使用在线预测扩展 Google Cloud ML Engine。如何衡量节点利用率?
【发布时间】:2019-07-02 15:15:33
【问题描述】:

我有一个 Inception V3 模型,其中包含一些输入和输出修改部署到 Google Cloud ML Engine 以进行在线预测。在一周左右的时间里,我收到的稀疏请求相对较少(大约 130 个),中位​​延迟大约 100 毫秒,95% 的百分位数是 2000 毫秒。我已经生成了大约 2 个节点*小时。最小节点数设置为 0。这是我第一次想在生产中使用 Cloud ML Engine。

问题:

我知道节点在请求后几分钟就启动了。但是我如何估计会导致系统扩展的请求量,比如每 1 分钟?似乎没有关于节点 CPU 使用率的信息。

就我而言,我假设请求的数量会稳步增长。我是否应该期望 node*hours 达到大约 30*24(一个月中的天数小时数),然后在这个值上饱和一段时间,然后在预测节点的 CPU 利用率达到 70% 时进一步提高?

【问题讨论】:

    标签: cpu-usage scaling google-cloud-ml price


    【解决方案1】:

    您很快就能监控正在使用的节点数量,但目前还不能这样做。您可以根据平均 qps 和延迟进行快速而粗略的估计。假设利用率约为 60%,则:

    X qps * .2 secs/query / .6
    

    【讨论】:

    • 如果您需要我们向您展示最近使用情况的图表,我们可以通过 cloudml-feedback@google.com 与我们联系,为您完成一次。
    【解决方案2】:

    我们会在 Stackdriver 上发布请求级别的日志。您可以通过使用 online_prediction_logging = True 创建模型来打开它们。 在这些日志中,我们有一个名为 loading_request 的字段,它可以告诉您此请求是否到达了新机器上。对于给定的较短时间段,这可以让您粗略估计启动了多少节点。为了更准确地扩展节点,rhaertel80 建议的功能应该会有所帮助。

    【讨论】:

      猜你喜欢
      • 2019-02-08
      • 1970-01-01
      • 2018-06-23
      • 1970-01-01
      • 2019-08-24
      • 2019-02-09
      • 1970-01-01
      • 2014-05-28
      • 2018-06-06
      相关资源
      最近更新 更多