mirror of
https://github.com/PaddlePaddle/FastDeploy.git
synced 2025-10-05 16:48:03 +08:00
[Other] Support Ascend deployment on X86 platform. (#1067)
* Add Huawei Ascend NPU deploy through PaddleLite CANN * Add NNAdapter interface for paddlelite * Modify Huawei Ascend Cmake * Update way for compiling Huawei Ascend NPU deployment * remove UseLiteBackend in UseCANN * Support compile python whlee * Change names of nnadapter API * Add nnadapter pybind and remove useless API * Support Python deployment on Huawei Ascend NPU * Add models suppor for ascend * Add PPOCR rec reszie for ascend * fix conflict for ascend * Rename CANN to Ascend * Rename CANN to Ascend * Improve ascend * fix ascend bug * improve ascend docs * improve ascend docs * improve ascend docs * Improve Ascend * Improve Ascend * Move ascend python demo * Imporve ascend * Improve ascend * Improve ascend * Improve ascend * Improve ascend * Imporve ascend * Imporve ascend * Improve ascend * acc eval script * acc eval * remove acc_eval from branch huawei * Add detection and segmentation examples for Ascend deployment * Add detection and segmentation examples for Ascend deployment * Add PPOCR example for ascend deploy * Imporve paddle lite compiliation * Add FlyCV doc * Add FlyCV doc * Add FlyCV doc * Imporve Ascend docs * Imporve Ascend docs * Improve PPOCR example * Support Ascend deployment on X86 platform * Improve Ascend docs * Improve ascend * Improve ascend * Change Paddle Lite Ascend URL
This commit is contained in:
@@ -23,12 +23,14 @@ import sys
|
||||
def process_paddle_lite(paddle_lite_so_path):
|
||||
if platform.system().lower() != "linux":
|
||||
return
|
||||
rpaths = ["$ORIGIN"]
|
||||
rpaths = ["$ORIGIN", "$ORIGIN/mklml/lib/"]
|
||||
patchelf_exe = os.getenv("PATCHELF_EXE", "patchelf")
|
||||
|
||||
for paddle_lite_so_file in os.listdir(paddle_lite_so_path):
|
||||
paddle_lite_so_file = os.path.join(paddle_lite_so_path,
|
||||
paddle_lite_so_file)
|
||||
|
||||
# Patch /paddlelite/lib/*.so
|
||||
if '.so' in paddle_lite_so_file:
|
||||
command = "{} --set-rpath '{}' {}".format(
|
||||
patchelf_exe, ":".join(rpaths), paddle_lite_so_file)
|
||||
@@ -38,6 +40,27 @@ def process_paddle_lite(paddle_lite_so_path):
|
||||
command) == 0, "patchelf {} failed, the command: {}".format(
|
||||
paddle_lite_so_file, command)
|
||||
|
||||
# Patch /paddlelite/lib/mklml/lib/*.so
|
||||
if 'mklml' in paddle_lite_so_file:
|
||||
paddle_lite_mklml_lib_path = os.path.join(
|
||||
paddle_lite_so_path, paddle_lite_so_file, 'lib')
|
||||
|
||||
for paddle_lite_mklml_so_file in os.listdir(
|
||||
paddle_lite_mklml_lib_path):
|
||||
paddle_lite_mklml_so_file = os.path.join(
|
||||
paddle_lite_mklml_lib_path, paddle_lite_mklml_so_file)
|
||||
|
||||
if '.so' in paddle_lite_mklml_so_file:
|
||||
command = "{} --set-rpath '{}' {}".format(
|
||||
patchelf_exe, ":".join(rpaths),
|
||||
paddle_lite_mklml_so_file)
|
||||
if platform.machine() != 'sw_64' and platform.machine(
|
||||
) != 'mips64':
|
||||
assert os.system(
|
||||
command
|
||||
) == 0, "patchelf {} failed, the command: {}".format(
|
||||
paddle_lite_mklml_so_file, command)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
process_paddle_lite(sys.argv[1])
|
||||
|
Reference in New Issue
Block a user