--aicore_num
产品支持情况
|
产品 |
是否支持 |
|---|---|
|
|
√ |
|
|
√ |
|
|
√ |
|
|
√ |
|
|
√ |
功能说明
用于配置模型编译时使用的AI Core核数。
关联参数
无。
参数取值
参数值:"整数1|整数2",中间使用“|”分隔。
- 场景1:针对如下产品,整数1表示算子编译时使用的AI Core中的Cube Core核数,整数2表示算子编译时使用的AI Core中的Vector Core核数,整数1与整数2都需要大于0,小于等于昇腾AI处理器包含的最大Cube Core和Vector Core数量:
Atlas A3 训练系列产品 /Atlas A3 推理系列产品 Atlas A2 训练系列产品 /Atlas A2 推理系列产品 - 场景2:针对如下产品,仅需配置整数1,配置格式为:"整数1|",配置整数2不会生效,表示算子编译时使用的AI Core核数:
Atlas 200I/500 A2 推理产品 Atlas 推理系列产品 Atlas 训练系列产品
参数值约束:
- 针对参数值中的场景1:
- 针对参数值中的场景2:
- 如果配置该参数的同时启用了算子编译缓存功能(--op_compiler_cache_mode参数配置为“enable”或者“force”),此参数仅在首次编译时生效。若您想在非首次编译时生效该参数,需要清理编译磁盘的缓存。
其中,${INSTALL_DIR}请替换为CANN软件安装后文件存储路径。以root用户安装为例,则安装后文件存储路径为:/usr/local/Ascend/cann。<arch>表示具体操作系统架构,xxx请根据实际产品进行选择。
其中,${INSTALL_DIR}请替换为CANN软件安装后文件存储路径。以root用户安装为例,则安装后文件存储路径为:/usr/local/Ascend/cann。<arch>表示具体操作系统架构,xxx请根据实际产品进行选择。
推荐配置及收益
无。
示例
- 场景1配置示例:
--aicore_num="24|48"
- 场景2配置示例
--aicore_num="10|" 或 --aicore_num="10"
了解AI Core、Cube Core、Vector Core的关系
为便于理解AI Core、Cube Core、Vector Core的关系,此处先明确Core的定义,Core是指拥有独立Scalar计算单元的一个计算核,通常Scalar计算单元承担了一个计算核的SIMD(单指令多数据,Single Instruction Multiple Data)指令发射等功能,所以我们也通常也把这个Scalar计算单元称为核内的调度单元。不同产品上的AI数据处理核心单元不同,当前分为以下几类:
- 当AI数据处理核心单元是AI Core:
- 在AI Core内,Cube和Vector共用一个Scalar调度单元,例如
Atlas 训练系列产品 。
- 在AI Core内,Cube和Vector都有各自的Scalar调度单元,因此又被称为Cube Core、Vector Core。这时,一个Cube Core和一组Vector Core被定义为一个AI Core,AI Core数量通常是以多少个Cube Core为基准计算的,例如
Atlas A2 训练系列产品 /Atlas A2 推理系列产品 。
- 在AI Core内,Cube和Vector共用一个Scalar调度单元,例如
- 当AI数据处理核心单元是AI Core以及单独的Vector Core:AI Core和Vector Core都拥有独立的Scalar调度单元,例如
Atlas 推理系列产品 。
依赖约束
无。