mirror of
https://github.com/PaddlePaddle/FastDeploy.git
synced 2025-10-07 01:22:59 +08:00
[Backend & Serving] Serving and Runtime support Clone (#464)
* Add Serving and Runtime use Clone * support TRT, OpenVINO and Paddle Backend Co-authored-by: Jason <jiangjiajun@baidu.com>
This commit is contained in:
@@ -25,6 +25,7 @@
|
||||
#include "NvOnnxParser.h"
|
||||
#include "fastdeploy/backends/backend.h"
|
||||
#include "fastdeploy/backends/tensorrt/utils.h"
|
||||
#include "fastdeploy/utils/unique_ptr.h"
|
||||
|
||||
class Int8EntropyCalibrator2 : public nvinfer1::IInt8EntropyCalibrator2 {
|
||||
public:
|
||||
@@ -45,7 +46,7 @@ class Int8EntropyCalibrator2 : public nvinfer1::IInt8EntropyCalibrator2 {
|
||||
|
||||
void writeCalibrationCache(const void* cache,
|
||||
size_t length) noexcept override {
|
||||
std::cout << "NOT IMPLEMENT." << std::endl;
|
||||
fastdeploy::FDERROR << "NOT IMPLEMENT." << std::endl;
|
||||
}
|
||||
|
||||
private:
|
||||
@@ -62,6 +63,11 @@ struct TrtValueInfo {
|
||||
};
|
||||
|
||||
struct TrtBackendOption {
|
||||
std::string model_file = ""; // Path of model file
|
||||
std::string params_file = ""; // Path of parameters file, can be empty
|
||||
// format of input model
|
||||
ModelFormat model_format = ModelFormat::AUTOREC;
|
||||
|
||||
int gpu_id = 0;
|
||||
bool enable_fp16 = false;
|
||||
bool enable_int8 = false;
|
||||
@@ -99,6 +105,8 @@ class TrtBackend : public BaseBackend {
|
||||
TensorInfo GetOutputInfo(int index);
|
||||
std::vector<TensorInfo> GetInputInfos() override;
|
||||
std::vector<TensorInfo> GetOutputInfos() override;
|
||||
std::unique_ptr<BaseBackend> Clone(void *stream = nullptr,
|
||||
int device_id = -1) override;
|
||||
|
||||
~TrtBackend() {
|
||||
if (parser_) {
|
||||
@@ -119,6 +127,7 @@ class TrtBackend : public BaseBackend {
|
||||
std::vector<TrtValueInfo> outputs_desc_;
|
||||
std::map<std::string, FDDeviceBuffer> inputs_device_buffer_;
|
||||
std::map<std::string, FDDeviceBuffer> outputs_device_buffer_;
|
||||
std::map<std::string, int> io_name_index_;
|
||||
|
||||
std::string calibration_str_;
|
||||
|
||||
|
Reference in New Issue
Block a user