停靠程序运行命令
docker run -t --rm -p 8500:8500 -p 8501:8501
-v /home/zhi.wang/tensorflow-serving/model:/models
-e MODEL_NAME=beidian_cart_ctr_wdl_model tensorflow/serving:1.12.0
--enable_batching=true --batching_parameters_file=/models/batching_parameters.txt &batching_parameters.txt
num_batch_threads { value: 40 }
batch_timeout_micros { value: 5000}
max_batch_size {value: 20000000}服务器配置
40 cpu和64G内存
测试结果
1线程预测成本为30
40线程预测一个预测成本300 40
cpu使用率
在docker中的cpu使用率只能达到300%,主机cpu使用率很低。
java测试脚本
TensorProto.Builder tensor = TensorProto.newBuilder();
tensor.setTensorShape(shapeProto);
tensor.setDtype(DataType.DT_STRING);
// batch set 200
for (int i=0; i<200; i++) {
tensor.addStringVal(example.toByteString());
}发布于 2019-02-28 03:31:44
我也面临同样的问题,我发现这可能是网络io的问题,您可以使用dstat来监视您的网络接口。
我还发现example.toByteString()也花费了很多时间
https://stackoverflow.com/questions/54858600
复制相似问题