通用约束
Ascend C管理不同层级的物理内存时,用一种抽象的逻辑位置(TPosition)来表达各级别的存储,代替了片上物理存储的概念,达到隐藏硬件架构的目的。TPosition类型包括:VECIN、VECOUT、VECCALC、A1、A2、B1、B2、CO1、CO2,具体介绍请参考TPosition。TPosition与物理内存的映射关系如表1所示。
TPosition  | 
物理内存  | 
|---|---|
GM  | 
Global Memory  | 
VECIN  | 
Unified Buffer  | 
VECCALC  | 
Unified Buffer  | 
VECOUT  | 
Unified Buffer  | 
A1  | 
L1 Buffer  | 
A2  | 
L0A Buffer  | 
B1  | 
L1 Buffer  | 
B2  | 
L0B Buffer  | 
C1  | 
Atlas 训练系列产品,Unified Buffer。 Atlas推理系列产品AI Core,Unified Buffer。 Atlas A2训练系列产品/Atlas 800I A2推理产品,L1 Buffer。  | 
C2  | 
Atlas 训练系列产品,L0C Buffer。 Atlas推理系列产品AI Core,L0C Buffer。 Atlas A2训练系列产品/Atlas 800I A2推理产品,BT Buffer。  | 
CO1  | 
L0C Buffer  | 
CO2  | 
Atlas 训练系列产品,Unified Buffer。 Atlas推理系列产品AI Core,Unified Buffer。 Atlas A2训练系列产品/Atlas 800I A2推理产品,Global Memory。  | 
TSCM  | 
L1 Buffer  | 
SPM  | 
Atlas 训练系列产品,L1 Buffer。 Atlas推理系列产品AI Core,L1 Buffer。 Atlas A2训练系列产品/Atlas 800I A2推理产品,Global Memory。  | 
C2PIPE2GM  | 
Ascend C内存管理模块在进行内存分配时会对起始地址进行对齐。各类存储单元的对齐要求如表2所示。
父主题: Ascend C Kernel API