mirror of
https://github.com/PaddlePaddle/FastDeploy.git
synced 2025-10-07 09:31:35 +08:00
[Backend] Support Intel GPU with heterogeneous mode (#701)
* Add some comments for python api * support openvino gpu * Add cpu operators * add interface to specify hetero operators * remove useless dir * format code * remove debug code * Support GPU for ONNX
This commit is contained in:
@@ -28,8 +28,9 @@ namespace fastdeploy {
|
||||
struct OpenVINOBackendOption {
|
||||
std::string device = "CPU";
|
||||
int cpu_thread_num = -1;
|
||||
int ov_num_streams = 1;
|
||||
int num_streams = 0;
|
||||
std::map<std::string, std::vector<int64_t>> shape_infos;
|
||||
std::set<std::string> cpu_operators{"MulticlassNms"};
|
||||
};
|
||||
|
||||
class OpenVINOBackend : public BaseBackend {
|
||||
@@ -38,13 +39,13 @@ class OpenVINOBackend : public BaseBackend {
|
||||
OpenVINOBackend() {}
|
||||
virtual ~OpenVINOBackend() = default;
|
||||
|
||||
bool InitFromPaddle(
|
||||
const std::string& model_file, const std::string& params_file,
|
||||
const OpenVINOBackendOption& option = OpenVINOBackendOption());
|
||||
bool
|
||||
InitFromPaddle(const std::string& model_file, const std::string& params_file,
|
||||
const OpenVINOBackendOption& option = OpenVINOBackendOption());
|
||||
|
||||
bool InitFromOnnx(
|
||||
const std::string& model_file,
|
||||
const OpenVINOBackendOption& option = OpenVINOBackendOption());
|
||||
bool
|
||||
InitFromOnnx(const std::string& model_file,
|
||||
const OpenVINOBackendOption& option = OpenVINOBackendOption());
|
||||
|
||||
bool Infer(std::vector<FDTensor>& inputs,
|
||||
std::vector<FDTensor>* outputs) override;
|
||||
@@ -58,7 +59,7 @@ class OpenVINOBackend : public BaseBackend {
|
||||
std::vector<TensorInfo> GetInputInfos() override;
|
||||
std::vector<TensorInfo> GetOutputInfos() override;
|
||||
|
||||
std::unique_ptr<BaseBackend> Clone(void *stream = nullptr,
|
||||
std::unique_ptr<BaseBackend> Clone(void* stream = nullptr,
|
||||
int device_id = -1) override;
|
||||
|
||||
private:
|
||||
@@ -71,4 +72,5 @@ class OpenVINOBackend : public BaseBackend {
|
||||
std::vector<TensorInfo> input_infos_;
|
||||
std::vector<TensorInfo> output_infos_;
|
||||
};
|
||||
|
||||
} // namespace fastdeploy
|
||||
|
Reference in New Issue
Block a user