pypto.set_host_options#

产品支持情况#

产品

是否支持

Atlas A3 训练系列产品/Atlas A3 推理系列产品

Atlas A2 训练系列产品/Atlas A2 推理系列产品

功能说明#

该接口是编译框架提供的运行时动态配置管理功能的核心部分,它将原本静态配置在tile_fwk_config.json中的参数转变为动态、可编程的指令,主要功能是控制上板流程的执行。

函数原型#

set_host_options(*, compile_stage: Optional[CompStage] = None,
                    compile_monitor_enable: Optional[bool] = None,
                    compile_timeout: Optional[int] = None,
                    compile_timeout_stage: Optional[int] = None,
                    compile_monitor_print_interval: Optional[int] = None) -> None

参数说明#

参数名

输入/输出

说明

compile_stage

输入

含义:控制编译执行的阶段
说明:
ALL_COMPLETE: 无影响,正常编译与运行;
TENSOR_GRAPH: 编译阶段,生成最终张量图后停止;
TILE_GRAPH: 编译阶段,生成最终分片图后终止;
EXECUTE_GRAPH: 编译阶段,生成最终执行图后终止;
CODEGEN_INSTRUCTION: 编译阶段,生成指令代码后终止;
CODEGEN_BINARY: 编译生成代码二进制后终止, 编译阶段结束。
取值范围: CompStage (ALL_COMPLETE/TENSOR_GRAPH/TILE_GRAPH/EXECUTE_GRAPH/CODEGEN_INSTRUCTION/CODEGEN_BINARY)
默认值: ALL_COMPLETE

compile_monitor_enable

输入

含义:控制编译阶段是否开启编译进度监控打印
说明:
True: 使能监控;
False: 关闭监控。
取值范围: bool (True/False)
默认值: False

compile_timeout

输入

含义:使能编译进度监控,当前编译的总耗时超过该值后,打印超时告警提示信息
说明:仅在compile_monitor_enable为True时生效,单位(秒),数值为0时表示禁用告警提示打印
数值类型: int 。
取值范围: int [0, 2147483647]
默认值: 600

compile_timeout_stage

输入

含义:使能编译进度监控,编译流程单个阶段的耗时超过该值后,打印超时告警提示信息
说明:仅在compile_monitor_enable为True时生效,单位(秒),数值为0时表示禁用告警提示打印
数值类型: int 。
取值范围: int [0, 2147483647]
默认值: 0(禁用)

compile_monitor_print_interval

输入

含义:使能编译进度监控,编译流程单个阶段的耗时超过60s后,开始按照此间隔进行进度打印
说明:仅在compile_monitor_enable为True时生效,单位(秒)
数值类型: int 。
取值范围: int [0, 2147483647]
默认值: 60

返回值说明#

void:Set方法无返回值。设置操作成功即生效。

约束说明#

  • 类型安全:需要确保传入的value的类型与参数定义的类型完全一致,否则可能导致未定义行为或运行时错误。

  • 作用范围:参数设置是全局性的,会影响后续所有的编译过程。

调用示例#

pypto.set_host_options(compile_stage=pypto.CompStage.EXECUTE_GRAPH,
                       compile_monitor_enable=True,
                       compile_timeout=120,
                       compile_timeout_stage=30,
                       compile_monitor_print_interval=20
                       )