| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
增加slice_write/lin_space/cast算子aicpu实现 Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !2677 merge dev into master 增加slice_write/lin_space/cast算子aicpu实现 Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 新增 slice_write、lin_space、cast 三个算子的 AICPU 实现。 主要变更: - **slice_write 算子**: 新增 AICPU 实现,支持多维切片写入操作 - **lin_space 算子**: 新增 AICPU 实现,生成线性序列 - **cast 算子**: 新增 AICPU 实现,支持多种数据类型转换 - **split_d/split_v 算子**: 移除 json 配置文件,统一使用 *_aicpu_def.cpp 定义算子原型 ## 关联的Issue #1554 ## 测试 根据代码变更,测试场景如下: 1. **slice_write 算子测试** - 执行 slice_write AICPU 算子单元测试 - 验证多维切片写入功能正确性 - 边界条件测试 2. **lin_space 算子测试** - 执行 lin_space AICPU 算子单元测试 - 验证线性序列生成功能正确性 - 不同数据类型测试 3. **cast 算子测试** - 执行 cast AICPU 算子单元测试 - 验证数据类型转换功能正确性 - 各数据类型组合测试 4. **split_d/split_v 算子测试** - 验证移除 json 配置后算子仍正常工作 - 执行原有单元测试验证功能不变 5. **编译构建测试** - 执行 cmake 配置和编译,验证新增算子正确构建 - 验证 aicpu_kernels.so 正常链接 ## 文档更新 - 新增 conversion/slice_write/README.md,描述 slice_write 算子使用方法 - 新增各算子单元测试文件 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2677 | 3 个月前 | |
增加slice_write/lin_space/cast算子aicpu实现 Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !2677 merge dev into master 增加slice_write/lin_space/cast算子aicpu实现 Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 新增 slice_write、lin_space、cast 三个算子的 AICPU 实现。 主要变更: - **slice_write 算子**: 新增 AICPU 实现,支持多维切片写入操作 - **lin_space 算子**: 新增 AICPU 实现,生成线性序列 - **cast 算子**: 新增 AICPU 实现,支持多种数据类型转换 - **split_d/split_v 算子**: 移除 json 配置文件,统一使用 *_aicpu_def.cpp 定义算子原型 ## 关联的Issue #1554 ## 测试 根据代码变更,测试场景如下: 1. **slice_write 算子测试** - 执行 slice_write AICPU 算子单元测试 - 验证多维切片写入功能正确性 - 边界条件测试 2. **lin_space 算子测试** - 执行 lin_space AICPU 算子单元测试 - 验证线性序列生成功能正确性 - 不同数据类型测试 3. **cast 算子测试** - 执行 cast AICPU 算子单元测试 - 验证数据类型转换功能正确性 - 各数据类型组合测试 4. **split_d/split_v 算子测试** - 验证移除 json 配置后算子仍正常工作 - 执行原有单元测试验证功能不变 5. **编译构建测试** - 执行 cmake 配置和编译,验证新增算子正确构建 - 验证 aicpu_kernels.so 正常链接 ## 文档更新 - 新增 conversion/slice_write/README.md,描述 slice_write 算子使用方法 - 新增各算子单元测试文件 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2677 | 3 个月前 | |
增加slice_write/lin_space/cast算子aicpu实现 Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !2677 merge dev into master 增加slice_write/lin_space/cast算子aicpu实现 Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 新增 slice_write、lin_space、cast 三个算子的 AICPU 实现。 主要变更: - **slice_write 算子**: 新增 AICPU 实现,支持多维切片写入操作 - **lin_space 算子**: 新增 AICPU 实现,生成线性序列 - **cast 算子**: 新增 AICPU 实现,支持多种数据类型转换 - **split_d/split_v 算子**: 移除 json 配置文件,统一使用 *_aicpu_def.cpp 定义算子原型 ## 关联的Issue #1554 ## 测试 根据代码变更,测试场景如下: 1. **slice_write 算子测试** - 执行 slice_write AICPU 算子单元测试 - 验证多维切片写入功能正确性 - 边界条件测试 2. **lin_space 算子测试** - 执行 lin_space AICPU 算子单元测试 - 验证线性序列生成功能正确性 - 不同数据类型测试 3. **cast 算子测试** - 执行 cast AICPU 算子单元测试 - 验证数据类型转换功能正确性 - 各数据类型组合测试 4. **split_d/split_v 算子测试** - 验证移除 json 配置后算子仍正常工作 - 执行原有单元测试验证功能不变 5. **编译构建测试** - 执行 cmake 配置和编译,验证新增算子正确构建 - 验证 aicpu_kernels.so 正常链接 ## 文档更新 - 新增 conversion/slice_write/README.md,描述 slice_write 算子使用方法 - 新增各算子单元测试文件 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2677 | 3 个月前 | |
增加slice_write/lin_space/cast算子aicpu实现 Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !2677 merge dev into master 增加slice_write/lin_space/cast算子aicpu实现 Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 新增 slice_write、lin_space、cast 三个算子的 AICPU 实现。 主要变更: - **slice_write 算子**: 新增 AICPU 实现,支持多维切片写入操作 - **lin_space 算子**: 新增 AICPU 实现,生成线性序列 - **cast 算子**: 新增 AICPU 实现,支持多种数据类型转换 - **split_d/split_v 算子**: 移除 json 配置文件,统一使用 *_aicpu_def.cpp 定义算子原型 ## 关联的Issue #1554 ## 测试 根据代码变更,测试场景如下: 1. **slice_write 算子测试** - 执行 slice_write AICPU 算子单元测试 - 验证多维切片写入功能正确性 - 边界条件测试 2. **lin_space 算子测试** - 执行 lin_space AICPU 算子单元测试 - 验证线性序列生成功能正确性 - 不同数据类型测试 3. **cast 算子测试** - 执行 cast AICPU 算子单元测试 - 验证数据类型转换功能正确性 - 各数据类型组合测试 4. **split_d/split_v 算子测试** - 验证移除 json 配置后算子仍正常工作 - 执行原有单元测试验证功能不变 5. **编译构建测试** - 执行 cmake 配置和编译,验证新增算子正确构建 - 验证 aicpu_kernels.so 正常链接 ## 文档更新 - 新增 conversion/slice_write/README.md,描述 slice_write 算子使用方法 - 新增各算子单元测试文件 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2677 | 3 个月前 | |
增加slice_write/lin_space/cast算子aicpu实现 Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !2677 merge dev into master 增加slice_write/lin_space/cast算子aicpu实现 Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 新增 slice_write、lin_space、cast 三个算子的 AICPU 实现。 主要变更: - **slice_write 算子**: 新增 AICPU 实现,支持多维切片写入操作 - **lin_space 算子**: 新增 AICPU 实现,生成线性序列 - **cast 算子**: 新增 AICPU 实现,支持多种数据类型转换 - **split_d/split_v 算子**: 移除 json 配置文件,统一使用 *_aicpu_def.cpp 定义算子原型 ## 关联的Issue #1554 ## 测试 根据代码变更,测试场景如下: 1. **slice_write 算子测试** - 执行 slice_write AICPU 算子单元测试 - 验证多维切片写入功能正确性 - 边界条件测试 2. **lin_space 算子测试** - 执行 lin_space AICPU 算子单元测试 - 验证线性序列生成功能正确性 - 不同数据类型测试 3. **cast 算子测试** - 执行 cast AICPU 算子单元测试 - 验证数据类型转换功能正确性 - 各数据类型组合测试 4. **split_d/split_v 算子测试** - 验证移除 json 配置后算子仍正常工作 - 执行原有单元测试验证功能不变 5. **编译构建测试** - 执行 cmake 配置和编译,验证新增算子正确构建 - 验证 aicpu_kernels.so 正常链接 ## 文档更新 - 新增 conversion/slice_write/README.md,描述 slice_write 算子使用方法 - 新增各算子单元测试文件 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2677 | 3 个月前 | |
增加slice_write/lin_space/cast算子aicpu实现 Co-authored-by: sujunwei3<sujunwei3@huawei.com> # message auto-generated for no-merge-commit merge: !2677 merge dev into master 增加slice_write/lin_space/cast算子aicpu实现 Created-by: sujunwei3 Commit-by: sujunwei3 Merged-by: cann-robot Description: ## 描述 新增 slice_write、lin_space、cast 三个算子的 AICPU 实现。 主要变更: - **slice_write 算子**: 新增 AICPU 实现,支持多维切片写入操作 - **lin_space 算子**: 新增 AICPU 实现,生成线性序列 - **cast 算子**: 新增 AICPU 实现,支持多种数据类型转换 - **split_d/split_v 算子**: 移除 json 配置文件,统一使用 *_aicpu_def.cpp 定义算子原型 ## 关联的Issue #1554 ## 测试 根据代码变更,测试场景如下: 1. **slice_write 算子测试** - 执行 slice_write AICPU 算子单元测试 - 验证多维切片写入功能正确性 - 边界条件测试 2. **lin_space 算子测试** - 执行 lin_space AICPU 算子单元测试 - 验证线性序列生成功能正确性 - 不同数据类型测试 3. **cast 算子测试** - 执行 cast AICPU 算子单元测试 - 验证数据类型转换功能正确性 - 各数据类型组合测试 4. **split_d/split_v 算子测试** - 验证移除 json 配置后算子仍正常工作 - 执行原有单元测试验证功能不变 5. **编译构建测试** - 执行 cmake 配置和编译,验证新增算子正确构建 - 验证 aicpu_kernels.so 正常链接 ## 文档更新 - 新增 conversion/slice_write/README.md,描述 slice_write 算子使用方法 - 新增各算子单元测试文件 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!2677 | 3 个月前 |
SliceWrite
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR/Ascend 950DT | √ |
| Atlas A3 训练系列产品/Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品/Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | √ |
| Atlas 推理系列产品 | √ |
| Atlas 训练系列产品 | √ |
功能说明
- 算子功能:将 value tensor 写入 x tensor 的指定位置(由 begin 指定偏移)。这是一个原地操作(in-place operation),输出与输入 x 共用同一块内存。
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| x | 输入 | 目标 tensor,将被原地修改。 | FLOAT16、FLOAT、DOUBLE、INT32、INT64 | ND |
| begin | 输入 | 写入起始位置偏移量。1D tensor,最多 2 个元素(row_offset, col_offset)。 | INT32、INT64 | ND |
| value | 输入 | 要写入的 tensor。维度必须与 x 相同。 | FLOAT16、FLOAT、DOUBLE、INT32、INT64 | ND |
| x | 输出 | 输出结果,与输入 x 同一块内存(原地操作)。 | FLOAT16、FLOAT、DOUBLE、INT32、INT64 | ND |
约束说明
- x 维度必须 <= 2
- value 维度必须与 x 维度相同
- begin 必须是 1D tensor,元素个数 <= 2
- value shape + begin offset 必须在 x shape 范围内
- 输入 x 和输出 x 必须是同一块内存
调用说明
| 调用方式 | 样例代码 | 说明 |
|---|---|---|
| 图模式接口 | test_geir_slice_write | 通过算子IR接口方式调用SliceWrite算子。 |