asc.language.basic.set_load_data_boundary
- asc.language.basic.set_load_data_boundary(boundary: int) None
设置 load_3d 时 A1/B1 边界值。 如果 load_3d 指令在处理源操作数时,源操作数在 A1/B1 上的地址超出设置的边界,则会从 A1/B1 起始地址开始读取数据。
对应的 Ascend C 函数原型
__aicore__ inline void SetLoadDataBoundary(uint32_t boundaryValue)
参数说明
- boundary_value
边界值。 load_3d_v1 指令:单位是 32 字节。 load_3d_v2 指令:单位是字节。
约束说明
用于 load_3d_v1 时, boundary_value 的最小值是 16 (单位: 32 字节);用于 load_3d_v2 时, boundary_value 的最小值是 1024 (单位:字节)。
如果使用 SetLoadDataBoundary 接口设置了边界值,配合 load_3d 指令使用时, load_3d 指令的 A1/B1 初始地址要在设置的边界内。
如果 boundary_value 设置为 0 ,则表示无边界,可使用整个 A1/B1 。
调用示例
import asc asc.set_load_data_boundary(1024)