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
Paddle Inference 推理库:CPU 上的模型推理

原文地址: https://www.cveoy.top/t/topic/oDVN 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录