Open NHZlX opened 5 years ago
// 创建配置 AnalysisConfig config; // 设置模型文件路径 config.SetModel(FLAGS_dirname + "/model", FLAGS_dirname + "/params"); // 打开GPU config.EnableUseGpu(100 /*memory_pool_init_size_mb*/, 0 /*gpu_id*/); // config.EnableTensorRtEngine(); // // CPU // config.DisableGpu(); // config.EnableMKLDNN(); // config.SetCpuMathLibraryNumThreads(); // 打开显存优化 config.EnableMemoryOptim(); // 关闭优化 config.SwitchIrOptim(false); // 打开可视化 config.pass_builder()->TurnOnDebug(); // ...
// 创建predictor auto predictor = CreatePaddlePredictor(config); // 准备输入 std::vector<PaddleTensor> inputs; std::vector<PaddleTensor> outputs; PaddleTensor img; img.shape = {batch_size, channels, height, width}; img.data = PaddleBuf(static_cast<void*>(input), input_num * sizeof(float)); img.dtype = PaddleDType::FLOAT32; inputs.emplace_back(img); // 运行 predictor->Run(inputs, &outputs, batch_size); // 获取输出 float* data_o = static_cast<float*>(outputs[0].data.data());