Paddle Inference 推理库:CPU 上的模型推理
import argparse import numpy as np
引用 paddle inference 推理库
import paddle.inference as paddle_infer
def main(): args = parse_args()
# 创建 config
config = paddle_infer.Config(args.model_file, args.params_file)
# 根据 config 创建 predictor
predictor = paddle_infer.create_predictor(config)
# 获取输入的名称
input_names = predictor.get_input_names()
input_handle = predictor.get_input_handle(input_names[0])
# 设置输入
fake_input = np.random.randn(args.batch_size, 3, 318, 318).astype('float32')
input_handle.reshape([args.batch_size, 3, 318, 318])
input_handle.copy_from_cpu(fake_input)
# 运行predictor
predictor.run()
# 获取输出
output_names = predictor.get_output_names()
output_handle = predictor.get_output_handle(output_names[0])
output_data = output_handle.copy_to_cpu() # numpy.ndarray类型
print('Output data size is {}'.format(output_data.size))
print('Output data shape is {}'.format(output_data.shape))
def parse_args(): parser = argparse.ArgumentParser() parser.add_argument('--model_file', type=str, help='model filename') parser.add_argument('--params_file', type=str, help='parameter filename') parser.add_argument('--batch_size', type=int, default=1, help='batch size') return parser.parse_args()
if name == 'main': main()
如何选择 CPU
在创建 config 时,可以通过设置 paddle_infer.Config 的参数来选择 CPU。具体来说,可以通过设置 use_gpu=False 来选择 CPU。代码如下所示:
config = paddle_infer.Config(args.model_file, args.params_file)
config.disable_gpu() # 选择 CPU
另外,如果您的电脑有多个 CPU,您也可以通过设置 cpu_math_library_num_threads 来控制使用的 CPU 数量。代码如下所示:
config.set_cpu_math_library_num_threads(4) # 使用 4 个 CPU
原文地址: https://www.cveoy.top/t/topic/oDVN 著作权归作者所有。请勿转载和采集!