我打算在网站上服务pytorch模型(resnet18)。
然而,在cpu(amd3600)中的推理需要70%的cpu资源。
我不认为服务器(heroku)能够处理这个计算。
有没有办法优化cpu中的推理?
非常感谢。
pip install openvino-dev[pytorch,onnx]
dummy_input = torch.randn(1, 3, IMAGE_HEIGHT, IMAGE_WIDTH)
torch.onnx.export(model, dummy_input, "model.onnx", opset_version=11)
mo --input_model "model.onnx" --input_shape "[1,3, 224, 224]" --mean_values="[123.675, 116.28 , 103.53]" --scale_values="[58.395, 57.12 , 57.375]" --data_type FP16 --output_dir "model_ir"
# Load the network
ie = Core()
model_ir = ie.read_model(model="model_ir/model.xml")
compiled_model_ir = ie.compile_model(model=model_ir, device_name="CPU")
# Get output layer
output_layer_ir = compiled_model_ir.output(0)
# Run inference on the input image
result = compiled_model_ir([input_image])[output_layer_ir]
https://pytorch.org/tutorials/intermediate/pruning_tutorial.html https://pytorch.org/tutorials/advanced/dynamic_quantization_tutorial.html