虚拟化规则
虚拟化模板
当前各处理器及型号包含的硬件资源如表1所示。
处理器型号 |
AI Core核数 |
内存 |
AI CPU |
VPC总核数 |
VDEC总核数 |
JPEGD总核数 |
PNGD总核数 |
VENC总核数 |
JPEGE总核数 |
|---|---|---|---|---|---|---|---|---|---|
30 |
32G |
14 |
16 |
16 |
16 |
24 |
NA |
8 |
|
32 |
32G |
14 |
16 |
16 |
16 |
24 |
NA |
8 |
|
8 |
24G |
7 |
12 |
12 |
16 |
NA |
3 |
8 |
昇腾AI处理器包含AI Core、AI CPU、DVPP、内存等硬件资源,主要用途如下:
- AI Core主要用于矩阵乘等计算,适用于卷积模型。
- AI CPU主要负责执行CPU类算子(包括控制算子、标量和向量等通用计算)。
- 虚拟化实例(创建指定芯片的vNPU)会使能SRIOV,将data CPU转化为AI CPU,因此会导致NPU信息中的AI CPU个数发生变化。
- DVPP为数字视觉预处理模块,提供对特定格式的视频和图像进行解码、缩放等预处理操作,以及对处理后的视频、图像进行编码再输出的能力,包含VPC、VDEC、JPEGD、PNGD、VENC、JPEGE模块。
- VPC:视觉预处理核心,提供对图像进行缩放、色域转换、降bit数处理、存储格式转换、区块切割转换等能力。
- VDEC:视频解码器,提供对特定格式的视频进行解码的能力。
- JPEGD:JPEG图像解码器,提供对JPEG格式的图像进行解码的能力。
- PNGD:PNG图像解码器,提供对PNG格式的图像进行解码的能力。
- VENC:视频编码器,提供对特定格式的视频进行编码的能力。
- JPEGE:JPEG图像编码器,提供对图像进行编码输出为JPEG格式的能力。
产品型号 |
虚拟化实例模板 |
说明 |
|---|---|---|
虚拟化实例模板包括:vir02、vir04、vir08、vir16。 |
|
|
虚拟化实例模板包括:vir01、vir02、vir04、vir02_1c、vir04_3c、vir04_3c_ndvpp、vir04_4c_dvpp。 |
|
处理器型号 |
虚拟化实例模板 |
AI Core核数 |
内存 |
AI CPU |
VPC |
VDEC |
JPEGD |
PNGD |
VENC |
JPEGE |
|---|---|---|---|---|---|---|---|---|---|---|
vir16 |
16 |
16G |
7 |
8 |
8 |
8 |
12 |
NA |
4 |
|
vir08 |
8 |
8G |
3 |
4 |
4 |
4 |
6 |
NA |
2 |
|
vir04 |
4 |
4G |
1 |
2 |
2 |
2 |
3 |
NA |
1 |
|
vir02 |
2 |
2G |
1 |
1 |
1 |
1 |
1 |
NA |
0 |
|
vir04 |
4 |
12G |
4 |
6 |
6 |
8 |
NA |
2 |
4 |
|
vir04_3c |
4 |
12G |
3 |
6 |
6 |
8 |
NA |
1 |
4 |
|
vir02 |
2 |
6G |
2 |
3 |
3 |
4 |
NA |
1 |
2 |
|
vir02_1c |
2 |
6G |
1 |
3 |
3 |
4 |
NA |
0 |
2 |
|
vir01 |
1 |
3G |
1 |
1 |
1 |
2 |
NA |
0 |
1 |
|
vir04_3c_ndvpp |
4 |
12G |
3 |
0 |
0 |
0 |
NA |
0 |
0 |
|
vir04_4c_dvpp |
4 |
12G |
4 |
12 |
12 |
16 |
NA |
3 |
8 |
虚拟化实例组合
由于
如果您需要了解典型模型在vNPU上推理的性能数据,您可以联系华为技术支持工程师获取信息。
虚拟化模式
- 硬件虚拟化是指NPU虚拟化为vNPU后,该vNPU对应的AICore、AICPU、内存等硬件资源和其他vNPU相互隔离,为AI任务分配一个vNPU后,该任务可单独使用为其分配的硬件资源,互不影响。
- 软件虚拟化是指用户创建vNPU时,相当于创建一个虚拟实例,而NPU的硬件资源相当于一个资源池,虚拟实例分配给AI任务使用时,该虚拟实例从资源池调用对应的硬件资源。
- vGroup是指虚拟化时NPU根据用户指定的虚拟化模板划分出虚拟资源组vGroup,每个vGroup包含若干AICore、AICPU、片上内存、DVPP资源;
- 如果用户使用模板vir04、vir04_3c、vir02、vir02_1c、vir04_3c_ndvpp、vir04_4c_dvpp,那么系统就会创建一个对应资源的vGroup,该vGroup包含与虚拟化实例模板匹配的AICore和其他硬件资源,vGroup再将资源提供给vNPU使用,虚拟化实例模板组合和vGroup的分配关系如图2所示;
Atlas 推理系列产品 最多支持划分4个vGroup,vGroup至少包含2个AICore,如果用户使用模板vir01(无论是1个vir01还是2个vir01),NPU分配的vGroup同样包含2个AICore,vNPU通过分时复用的方式使用vGroup资源,比如通过2个vir01模板切分的2个vNPU,那么每个vNPU会通过串行的方式轮流使用vGroup的资源(如vNPU1使用1毫秒,然后vNPU2使用1毫秒)。

