limit_core_num
功能说明
reduce-overhead模式和max-autotune模式下可通过本接口配置算子执行时使用的最大AI Core数和Vector Core数。
- 说明1:实际使用的核数可能少于配置的最大核数。
- 说明2:配置的最大核数不能超过AI处理器本身允许的最大AI Core数量与最大Vector Core数量。
注意,两种模式的底层实现并不一样,reduce-overhead模式实现了Stream级核数配置,max-autotune模式实现了算子级核数配置,具体功能介绍参见图内设置AI Core和Vector Core核数(aclgraph)和图内设置AI Core和Vector Core核数(Ascend IR)。
函数原型
limit_core_num(op_aicore_num: int, op_vectorcore_num: int)
参数说明
参数 |
输入/输出 |
说明 |
是否必选 |
|---|---|---|---|
op_aicore_num |
输入 |
整数类型,表示算子运行时的最大AI Core数,取值范围为[1, max_aicore] |
必选 |
op_vectorcore_num |
输入 |
整数类型,表示算子运行时的最大Vector Core数,取值范围为[1, max_vectorcore]。 当AI处理器上仅存在AI Core不存在Vector Core时,此时仅支持取值为0。 |
必选 |
返回值说明
无
约束说明
- 本功能支持reduce-overhead模式和max-autotune模式。
- max-autotune模式下,算子级核数配置优先级高于全局核数配置,具体参见图内设置AI Core和Vector Core核数(Ascend IR)。
- 配置核数不能超过AI处理器本身允许的最大核数,假设最大AI Core数为max_aicore、最大Vector Core数量为max_vectorcore,系统默认采用最大核数作为实际运行核数。
调用示例
- reduce-overhead:参考图内设置AI Core和Vector Core核数(aclgraph)中使用示例。
- max-autotune:参考图内设置AI Core和Vector Core核数(Ascend IR)中使用示例。
父主题: torchair.scope