【问题标题】:Do Tensorflow Serving run inference with cache?Tensorflow Serving 是否使用缓存运行推理?
【发布时间】:2020-12-26 09:52:08
【问题描述】:

当我通过 docker 为我的 TF 模型提供 tensorflow 服务时,在版本 2.1.0 上,我使用 Jmeter 执行压力测试。这儿存在一个问题。 TPS 单条数据测试会达到 4400,而 txt 文件中的多条数据只能达到 1700。 模型是 BiLSTM,我在没有任何缓存设置的情况下训练过。实验全部在本地服务器上进行,而不是通过网络进行。

指标:

在单个数据任务中,我设置了 30 个请求线程在 10 分钟内无间隔地运行具有相同数据的 HTTP 请求。
  • TPS:4491
  • CPU 占用率:2100%
  • 99% 延迟线(毫秒):17
  • 错误率:0
在多数据任务中,我将运行 HTTP 请求设置为通过 30 个请求线程读取一个 txt 文件,一个包含 9740000 个不同示例的数据集。
  • TPS:1711
  • CPU 占用率:2300%
  • 99% 延迟线(毫秒):42
  • 错误率:0

硬件:

  • CPU 核心数:12
  • 处理器:24
  • Intel(R) Xeon(R) Silver 4214 CPU @ 2.20GHz

Tensorflow Serving 中有缓存吗?

为什么在压力测试任务中单数据测试的TPS比多数据测试的TPS大三倍?

【问题讨论】:

    标签: docker jmeter tensorflow-serving stress-testing


    【解决方案1】:

    我已经解决了这个问题。读取同一文件的请求线程需要等待运行 Jmeter 的 CPU 成本。

    【讨论】:

    • 但是您对最初的问题有答案吗:TFS 是否使用缓存运行推理?
    猜你喜欢
    • 1970-01-01
    • 2018-07-09
    • 1970-01-01
    • 2018-05-29
    • 2020-01-07
    • 2017-04-29
    • 2018-02-01
    • 2016-12-20
    • 2017-07-20
    相关资源
    最近更新 更多