4. Tile 与 GlobalTensor¶
4.1 范围¶
本章定义 Tile 操作数与全局内存操作数之间的数据模型契约,说明架构可见的数据搬运与解释规则。
4.2 Tile 数据模型¶
Tile 是计算类指令的主要架构数据对象。 Tile 契约包含:
- 元素类型与形状类别
- 有效区域元数据(
Rv、Cv) - 在指令合法性中要求的位置-意图角色
- 后端合法性需要的布局/对齐属性
4.3 GlobalTensor 数据模型¶
GlobalTensor(或等价内存视图)表示可寻址的全局内存数据。 其架构可见契约包括:
- 与相关 Tile 操作兼容的元素类型
- 内存指令要求的地址与步长解释
- 在顺序约束下的可见性行为
4.4 GM <-> Tile 搬运契约¶
TLOAD 与 TSTORE 指令族是 GM 与 Tile 的主要桥接。
一致性实现 MUST 保持:
- 定义有效域内的元素映射语义
- 在事件/TSYNC 与内存模型约束下的顺序保证
- 量化/缩放与模式属性的已记录行为
4.5 形状与域兼容性¶
对于搬运和布局变换操作:
- 源域与目标域 MUST 满足指令定义的兼容约束
- 域外行为 MUST 要么显式定义(如 pad/fill),要么声明为未指定
- 后端合法性检查 MUST 对不支持的 shape/layout 组合给出确定性拒绝
4.6 布局变换类操作¶
例如 extract/insert/reshape/transpose 的操作,是对 Tile 域的架构级变换。 这类操作 MUST 定义:
- 索引空间映射
- 有效域映射
- 部分覆盖域行为
- 存在硬件差异时的实现定义约束
4.7 诊断要求¶
搬运/布局诊断 SHOULD 报告:
- 出错操作与操作数位置
- 不兼容的 shape/layout/location 维度
- 相关索引/偏移参数上下文
- 可复现 CI 的确定性错误文案