编译模型

HAT集成了编译定点模型的能力,将pytorch的模型编译为可以上板运行的形式。您可以选择下面的方式来编译模型。

使用方法

此方式使用 tools/compile_perf_hbir.py 脚本,命令如下:

python3 tools/compile_perf_hbir.py -c {$CONFIG_FILE}

此命令会从config文件的 hbir_compiler 字段获取编译相关配置,举例说明如下:

import horizon_plugin_pytorch

hbir_compiler = dict(
    march=March.NASH_M,  # 可以选择 NASH_E, NASH_M, NASH_P
    opt=2, # 优化等级,可以选择 0, 1, 2,优化程度从低到高
    jobs=32, # 多线程编译
    debug=False, # 是否开启debug模式
    only_export=args.only_export, #是否只是导出编译前的hbir
    layer_details=True,  # 是否输出每层的性能情况
    input_source=["pyramid"],  # 模型上板时的输入来源
    model_path="./qat.bc", # qat 模型的路径
    out_path="tmp_compile/model.hbm", # 编译出的模型文件路径
    hbdk3_compatible_mode=False, # 是否编译兼容模式的hbm
)

编译完成后,生成的 model.hbm 文件会保存到预先设定的编译模型文件存储路径中。