mirror of
https://github.com/PaddlePaddle/FastDeploy.git
synced 2025-10-05 16:48:03 +08:00
[Backend] Add KunlunXin XPU deploy support (#894)
Revert "Revert "[Backend] Add KunlunXin XPU deploy support" (#893)"
This reverts commit 0990ab9b50
.
This commit is contained in:
@@ -245,6 +245,34 @@ class RuntimeOption:
|
||||
return
|
||||
return self._option.use_gpu(device_id)
|
||||
|
||||
def use_xpu(self,
|
||||
device_id=0,
|
||||
l3_workspace_size=16 * 1024 * 1024,
|
||||
locked=False,
|
||||
autotune=True,
|
||||
autotune_file="",
|
||||
precision="int16",
|
||||
adaptive_seqlen=False,
|
||||
enable_multi_stream=False):
|
||||
"""Inference with XPU
|
||||
|
||||
:param device_id: (int)The index of XPU will be used for inference, default 0
|
||||
:param l3_workspace_size: (int)The size of the video memory allocated by the l3 cache, the maximum is 16M, default 16M
|
||||
:param locked: (bool)Whether the allocated L3 cache can be locked. If false, it means that the L3 cache is not locked,
|
||||
and the allocated L3 cache can be shared by multiple models, and multiple models
|
||||
:param autotune: (bool)Whether to autotune the conv operator in the model.
|
||||
If true, when the conv operator of a certain dimension is executed for the first time,
|
||||
it will automatically search for a better algorithm to improve the performance of subsequent conv operators of the same dimension.
|
||||
:param autotune_file: (str)Specify the path of the autotune file. If autotune_file is specified,
|
||||
the algorithm specified in the file will be used and autotune will not be performed again.
|
||||
:param precision: (str)Calculation accuracy of multi_encoder
|
||||
:param adaptive_seqlen: (bool)adaptive_seqlen Is the input of multi_encoder variable length
|
||||
:param enable_multi_stream: (bool)Whether to enable the multi stream of xpu.
|
||||
"""
|
||||
return self._option.use_xpu(device_id, l3_workspace_size, locked,
|
||||
autotune, autotune_file, precision,
|
||||
adaptive_seqlen, enable_multi_stream)
|
||||
|
||||
def use_cpu(self):
|
||||
"""Inference with CPU
|
||||
"""
|
||||
|
@@ -65,11 +65,13 @@ setup_configs["ENABLE_POROS_BACKEND"] = os.getenv("ENABLE_POROS_BACKEND",
|
||||
"OFF")
|
||||
setup_configs["ENABLE_TRT_BACKEND"] = os.getenv("ENABLE_TRT_BACKEND", "OFF")
|
||||
setup_configs["ENABLE_LITE_BACKEND"] = os.getenv("ENABLE_LITE_BACKEND", "OFF")
|
||||
setup_configs["PADDLELITE_URL"] = os.getenv("PADDLELITE_URL", "OFF")
|
||||
setup_configs["ENABLE_VISION"] = os.getenv("ENABLE_VISION", "OFF")
|
||||
setup_configs["ENABLE_FLYCV"] = os.getenv("ENABLE_FLYCV", "OFF")
|
||||
setup_configs["ENABLE_TEXT"] = os.getenv("ENABLE_TEXT", "OFF")
|
||||
setup_configs["WITH_GPU"] = os.getenv("WITH_GPU", "OFF")
|
||||
setup_configs["WITH_IPU"] = os.getenv("WITH_IPU", "OFF")
|
||||
setup_configs["WITH_XPU"] = os.getenv("WITH_XPU", "OFF")
|
||||
setup_configs["BUILD_ON_JETSON"] = os.getenv("BUILD_ON_JETSON", "OFF")
|
||||
setup_configs["TRT_DIRECTORY"] = os.getenv("TRT_DIRECTORY", "UNDEFINED")
|
||||
setup_configs["CUDA_DIRECTORY"] = os.getenv("CUDA_DIRECTORY",
|
||||
@@ -78,10 +80,12 @@ setup_configs["LIBRARY_NAME"] = PACKAGE_NAME
|
||||
setup_configs["PY_LIBRARY_NAME"] = PACKAGE_NAME + "_main"
|
||||
setup_configs["OPENCV_DIRECTORY"] = os.getenv("OPENCV_DIRECTORY", "")
|
||||
setup_configs["ORT_DIRECTORY"] = os.getenv("ORT_DIRECTORY", "")
|
||||
setup_configs["PADDLEINFERENCE_DIRECTORY"] = os.getenv("PADDLEINFERENCE_DIRECTORY", "")
|
||||
setup_configs["PADDLEINFERENCE_DIRECTORY"] = os.getenv(
|
||||
"PADDLEINFERENCE_DIRECTORY", "")
|
||||
|
||||
setup_configs["RKNN2_TARGET_SOC"] = os.getenv("RKNN2_TARGET_SOC", "")
|
||||
if setup_configs["RKNN2_TARGET_SOC"] != "" or setup_configs["BUILD_ON_JETSON"] != "OFF":
|
||||
if setup_configs["RKNN2_TARGET_SOC"] != "" or setup_configs[
|
||||
"BUILD_ON_JETSON"] != "OFF":
|
||||
REQUIRED_PACKAGES = REQUIRED_PACKAGES.replace("opencv-python", "")
|
||||
|
||||
if setup_configs["WITH_GPU"] == "ON" or setup_configs[
|
||||
|
Reference in New Issue
Block a user