文档
注册

编译并安装自定义算子包

由于AMCT存在基于ONNX Runtime的自定义算子包,而自定义算子包编译时依赖ONNX Runtime提供的头文件,该头文件需要用户自行下载后,然后编译并安装自定义算子包。

方法如下,该步骤为必选操作,否则可能会导致AMCT无法使用:
  1. 解压自定义算子包。
    tar -zvxf amct_onnx_op.tar.gz

    解压后文件目录组织如下:

    amct_onnx_op                           #  自定义算子根目录
    ├── inc                             #  自定义算子编译头文件目录
    ├── src                             #  自定义算子实现源文件,请参见ONNX Runtime官方API说明   
    └── setup.py                        #  编译脚本,编译自定义算子,并且拷贝生成动态库至AMCT软件包内

    编译基于ONNX Runtime的自定义算子需要依赖ONNX Runtime提供的头文件,该文件需要在线从GitHub上下载。如果用户AMCT所在服务器能链接网络,并且能连通GitHub,则可以直接进行2;如果无法连接网络,则请自行下载如下文件,然后上传到AMCT所在服务器amct_onnx_op/inc目录:

    https://github.com/microsoft/onnxruntime/tree/v1.9.0/include/onnxruntime/core/session目录下的如下四个文件:

    • onnxruntime_cxx_api.h
    • onnxruntime_cxx_inline.h
    • onnxruntime_c_api.h
    • onnxruntime_session_options_config_keys.h

    下载的头文件版本必须和ONNX Runtime版本一致,如果import amct_onnx时出现“segmentation fault”,建议删除头文件,卸载amct_onnx后下载正确版本的头文件后重新安装。

  2. 进入amct_onnx_op目录,编译并安装自定义算子包。
    cd amct_onnx_op && python3 setup.py build

    出现以下信息表示编译并安装自定义算子包成功,若编译失败,请参见编译并安装自定义算子包时提示"AttributeError: module ‘onnxruntime’ has no attribute ‘SessionOption’"信息进行处理。

    1
    2
    [INFO] Build amct_onnx_op success!
    [INFO] Install amct_onnx_op success!
    
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词