| Files | Last commit | Last update |
|---|---|---|
根据markdownlint规范修正md写作问题和link失效 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !6398 merge master into master 根据markdownlint规范修正md写作问题和link失效 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 根据markdownlint规范修正md写作问题和link失效 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#2272](https://gitcode.com/cann/ops-math/issues/2272) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 所有md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6398 | 28 days ago | |
Add BoxMullerFloat Co-authored-by: gh_M<meiguohan@huawei.com> # message auto-generated for no-merge-commit merge: !3071 merge new_boxmullerfloat into master Add BoxMullerFloat Created-by: gh_M Commit-by: gh_M Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 原有BoxMullerFloat函数修改为BoxMullerFloatSafe, 新增 BoxMullerFloat 函数对齐torch实现;修复aclnnNormalFloatFloat/aclnnNormalFloatTensor/aclnnNormalTensorFloat/aclnnNormalTensorTensor接口文档及examples用例,对齐约束说明,offset为4的倍数 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/1822 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 泛化测试通过 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了aclnnNormalFloatFloat/aclnnNormalFloatTensor/aclnnNormalTensorFloat/aclnnNormalTensorTensor接口md文档 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!3071 | 5 months ago | |
fix: 规范 random 目录算子日志输出(级别错配/拼写/语法/格式符/中文残留) Co-authored-by: liangtongxue<lianglihui@h-partners.com> # message auto-generated for no-merge-commit merge: !5347 merge fix/log-spec-20260903-v2 into master fix: 规范 random 目录算子日志输出(级别错配/拼写/语法/格式符/中文残留) Created-by: liangtongxue Commit-by: liangtongxue Merged-by: cann-robot Description: ## 描述 对 random/ 全目录 26 个算子(含 examples、tests)的日志输出做规范整改,修复以下缺陷: - **级别错配(36 处)**:12 个 geir examples 失败分支 - INFO - [XIR]: xxx failed 改为 - ERROR -,按级别过滤时故障信息不再被忽略 - **拼写错误**:samller→smaller、excepted→expected(语义相反)、RadixSortTIling→RadixSortTiling、Infershape→InferShape 等修正 - **语法错误(100+ 处)**:only support→only supports、not support→does not support、should same with→should be the same as、must >→must be greater than、is begin→begins、running begin→started、序数 1th 改写、字符串拼接双空格/逗号粘连等 - **错误描述不完整(40+ 处)**:dtype/shape/size/coreNum/ubSize 校验失败补当前实际值;allowed set 补允许集合内容;onnx dtype 支持列表文案与 kvlist 实现对齐 - **格式符与实参类型不匹配**:按头文件实类型逐项核对修正(%lld→%llu、%d→%ld、%u→%lu、%f→%ld 等),消除 -Werror 编译失败与输出垃圾值 - **魔鬼数字**:GE version 裸数字 90000000 统一为 9.0.0(6 处) - **中文输出**:ST executor/golden.py 中文文案改英文(10 处);Format 支持列表中文顿号改半角逗号 - **统一日志接口**:random_infershape_base.cpp 业务代码 std::cerr 改 OP_LOGD/OP_LOGW/OP_LOGE(4 处);删除 random_dtype_fmt_gen.h 中无调用点的调试打印函数 Print/PrintByColsCore - **UT 修复**:truncated_normal_v2 tiling 用例期望串补齐尾部 3 个字段(RandomUnifiedSimtTilingDataStruct 实为 51 个 int64 字段,期望串原为 48 个;master 上存量失败) ### 改动方法 仅修改日志语句的文案/级别/格式符与配套标识符拼写(如 isContinous_→isContinuous_ 等全量同步改名),不改动任何校验逻辑与控制流。 ## 关联的Issue #3083 ## 测试 - pre-commit 全部通过(clang-format / ruff-check / ruff-format / codespell / OAT 等 10 项) - bash build.sh --pkg --jit --soc=ascend950 编译打包通过(含 -Werror=format 严格校验) - random 目录全部改动算子 UT:153 个测试全部 PASSED(含修复后的 truncated_normal_v2) - 输出文案中文残留、业务代码私有打印残留均为 0 ## 文档更新 无 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5347 | 2 months ago | |
feat(random): stateless_random_normal_v2/v3、stateless_uniform 支持 ascend960dt/ascend960pr 平台 Co-authored-by: wuchengwen_oh<wuchengwen4@huawei.com> # message auto-generated for no-merge-commit merge: !6175 merge feat/random-960-support into master feat(random): stateless_random_normal_v2/v3、stateless_uniform 支持 ascend960dt/ascend960pr 平台 Created-by: wuchengwen_oh Commit-by: wuchengwen_oh Merged-by: cann-robot Description: ## 描述 将 stateless_random_normal_v2、stateless_random_normal_v3、stateless_uniform 三个随机数算子的 Ascend 960 平台支持从 A6(ops-math-dev) 迁移到主线,支持 ascend960dt / ascend960pr 两颗芯片。 **迁移策略(少量修改→架构隔离,复用 arch35 目录)**:逐文件归一化比对(MicroAPI→Reg 改名、忽略换行缩进)后确认三者 kernel 逻辑与主线 arch35 版本完全等价,tiling 仅切分对齐粒度存在架构差异,故不新建 arch92 目录、不引入重复代码,差异按 NpuArch 精确等值判断隔离(SocVersion 枚举中 960 追加在末尾,不能用区间比较)。 改动内容: - **算子注册**:三个算子 def.cpp 增加 AddConfig("ascend960dt") / AddConfig("ascend960pr");CMakeLists.txt 的 SUPPORT_COMPUTE_UNIT 与 SUPPORT_TILING_DIR 一一对应新增两颗芯片(tiling 复用 arch35)。 - **kernel 编译配置**:ascendc_config.json 为三个算子注册 ascend960dt/ascend960pr 的 compute_units 与 compile_options(-mllvm -cce-aicore-dcci-before-kernel-end=false),与主线既有 960dt 算子(MirrorPad/Pad/SplitV 等)一致;否则 960 编译将缺失该 DCCI 选项。 - **tiling 架构隔离**: - stateless_random_normal_v2:IsArch92() 按 NpuArch::DAV_9201/9202 判断,arch92 核间按 32 元素对齐、UB 按 256 元素向下对齐;arch35 保持原 512 字节核间对齐、32 字节 UB 向上对齐。CompileInfo 增加 isArch92 标记,覆盖 platformInfo 不可用时回退 CompileInfo 通路的判定。 - stateless_random_normal_v3:新增 BeforeProcess() 覆写,arch92 下将 coreAlignSize 由 512 改为 32;platformInfo 为空时保持默认值。 - stateless_uniform:tiling/kernel 与主线 arch35 完全一致,无需隔离。 - **kernel 架构宏隔离**:stateless_random_normal_v3 kernel 入口用 #if defined(__DAV_VEC__) 包裹(AIV_ONLY 且依赖仅 Vector 核提供的 RegBase VF 接口),避免 AIC 编译通道实例化。 - **op_api**:aclnn_normal_out.cpp 抽取 IsNormalV3SupportedArch(),Normal V3 兼容通路由仅 DAV_3510 扩展为 DAV_3510/DAV_9201/DAV_9202。 - **UT**:新增 stateless_uniform_tiling.h host shim(stateless_uniform kernel 引用 device SIMT builtin __mul_i32toi64,host 侧编译缺失导致其 op_kernel UT 链接失败;cmake 检测到 <op>_tiling.h 后 -include 注入全部 TU 提供等价实现,stateless_normal 等 5 个既有算子早已采用此写法)。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3657 ## 测试 - op_host UT:30/30 通过(三个算子 tiling + infershape) - op_api UT:47/47 通过(Normal L2 四接口 + StatelessUniform L0) - 三个算子 ascend950 kernel 二进制构建通过;v3 的 __DAV_VEC__ 宏经 A/B 对比生成的 .o 与加宏前 MD5 完全一致(对 950 零影响) - arch92 tiling 算式对账:按 A6 公式算得编码 53876069761280 与 A6 自身提交的 UT 期望值一致;arch35 仍为 54563264528640,与主线一致 - libophost_math.so 全量编译通过;修改文件全部通过仓库 pre-commit(clang-format/end-of-file/codespell/OAT 合规) - 注:本地 CANN 包仅支持 ascend950,ascend960dt/ascend960pr 的 kernel 编译需在支持 960 的 CANN 版本上验证 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6175 | 24 days ago | |
add InferDataType for StatelessRandomNormalV2/StatelessRandperm/TensorEqual Co-authored-by: 贾剑勇<jiajianyong123@hisilicon.com> # message auto-generated for no-merge-commit merge: !5728 merge main into master add InferDataType for StatelessRandomNormalV2/StatelessRandperm/TensorEqual Created-by: jia-jianyong Commit-by: 贾剑勇 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> add InferDataType for StatelessRandomNormalV2/StatelessRandperm/TensorEqual ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/3301 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> GEIR验证ok,冒烟ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5728 | 1 month ago | |
feat(random): stateless_random_normal_v2/v3、stateless_uniform 支持 ascend960dt/ascend960pr 平台 Co-authored-by: wuchengwen_oh<wuchengwen4@huawei.com> # message auto-generated for no-merge-commit merge: !6175 merge feat/random-960-support into master feat(random): stateless_random_normal_v2/v3、stateless_uniform 支持 ascend960dt/ascend960pr 平台 Created-by: wuchengwen_oh Commit-by: wuchengwen_oh Merged-by: cann-robot Description: ## 描述 将 stateless_random_normal_v2、stateless_random_normal_v3、stateless_uniform 三个随机数算子的 Ascend 960 平台支持从 A6(ops-math-dev) 迁移到主线,支持 ascend960dt / ascend960pr 两颗芯片。 **迁移策略(少量修改→架构隔离,复用 arch35 目录)**:逐文件归一化比对(MicroAPI→Reg 改名、忽略换行缩进)后确认三者 kernel 逻辑与主线 arch35 版本完全等价,tiling 仅切分对齐粒度存在架构差异,故不新建 arch92 目录、不引入重复代码,差异按 NpuArch 精确等值判断隔离(SocVersion 枚举中 960 追加在末尾,不能用区间比较)。 改动内容: - **算子注册**:三个算子 def.cpp 增加 AddConfig("ascend960dt") / AddConfig("ascend960pr");CMakeLists.txt 的 SUPPORT_COMPUTE_UNIT 与 SUPPORT_TILING_DIR 一一对应新增两颗芯片(tiling 复用 arch35)。 - **kernel 编译配置**:ascendc_config.json 为三个算子注册 ascend960dt/ascend960pr 的 compute_units 与 compile_options(-mllvm -cce-aicore-dcci-before-kernel-end=false),与主线既有 960dt 算子(MirrorPad/Pad/SplitV 等)一致;否则 960 编译将缺失该 DCCI 选项。 - **tiling 架构隔离**: - stateless_random_normal_v2:IsArch92() 按 NpuArch::DAV_9201/9202 判断,arch92 核间按 32 元素对齐、UB 按 256 元素向下对齐;arch35 保持原 512 字节核间对齐、32 字节 UB 向上对齐。CompileInfo 增加 isArch92 标记,覆盖 platformInfo 不可用时回退 CompileInfo 通路的判定。 - stateless_random_normal_v3:新增 BeforeProcess() 覆写,arch92 下将 coreAlignSize 由 512 改为 32;platformInfo 为空时保持默认值。 - stateless_uniform:tiling/kernel 与主线 arch35 完全一致,无需隔离。 - **kernel 架构宏隔离**:stateless_random_normal_v3 kernel 入口用 #if defined(__DAV_VEC__) 包裹(AIV_ONLY 且依赖仅 Vector 核提供的 RegBase VF 接口),避免 AIC 编译通道实例化。 - **op_api**:aclnn_normal_out.cpp 抽取 IsNormalV3SupportedArch(),Normal V3 兼容通路由仅 DAV_3510 扩展为 DAV_3510/DAV_9201/DAV_9202。 - **UT**:新增 stateless_uniform_tiling.h host shim(stateless_uniform kernel 引用 device SIMT builtin __mul_i32toi64,host 侧编译缺失导致其 op_kernel UT 链接失败;cmake 检测到 <op>_tiling.h 后 -include 注入全部 TU 提供等价实现,stateless_normal 等 5 个既有算子早已采用此写法)。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3657 ## 测试 - op_host UT:30/30 通过(三个算子 tiling + infershape) - op_api UT:47/47 通过(Normal L2 四接口 + StatelessUniform L0) - 三个算子 ascend950 kernel 二进制构建通过;v3 的 __DAV_VEC__ 宏经 A/B 对比生成的 .o 与加宏前 MD5 完全一致(对 950 零影响) - arch92 tiling 算式对账:按 A6 公式算得编码 53876069761280 与 A6 自身提交的 UT 期望值一致;arch35 仍为 54563264528640,与主线一致 - libophost_math.so 全量编译通过;修改文件全部通过仓库 pre-commit(clang-format/end-of-file/codespell/OAT 合规) - 注:本地 CANN 包仅支持 ascend950,ascend960dt/ascend960pr 的 kernel 编译需在支持 960 的 CANN 版本上验证 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6175 | 24 days ago | |
AscendC接口整改 Co-authored-by: zhaozi3<zhaozi3@h-partners.com> # message auto-generated for no-merge-commit merge: !4547 merge master into master AscendC接口整改 Created-by: zhaozi3 Commit-by: zhaozi3 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> AscendC部分接口兼容性变更,为与对外接口文档保持一致,修改本组负责算子对应接口。修改后各算子二进制和修改前一致 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 修改后各算子二进制和修改前一致,算子调用OK,冒烟OK ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:算子AscendC接口兼容性整改 See merge request: cann/ops-math!4547 | 2 months ago | |
随机数算子新增st用例 Co-authored-by: zhaozi3<zhaozi3@h-partners.com> # message auto-generated for no-merge-commit merge: !6387 merge master into master 随机数算子新增st用例 Created-by: zhaozi3 Commit-by: zhaozi3 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 为 random 目录下 14 个此前缺少 ST 用例的随机数算子新增 Kernel 模式 ST 用例(tests/st/arch35/ttk_kernel__st.csv),共 75 条用例,补齐这些算子的 ST 测试覆盖。 涉及算子:drop_out_do_mask_v3、drop_out_v3_grad、random_uniform_int_v2、random_uniform_v2、stateless_bernoulli、stateless_normal、stateless_random、stateless_random_choice_with_mask、stateless_random_normal_v2、stateless_random_normal_v3、stateless_random_uniform_v2、stateless_random_uniform_v3、stateless_uniform、truncated_normal_v2。 ## 关联的Issue 关联 Issue:#3602 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 其他,请描述:随机数算子新增st用例 See merge request: cann/ops-math!6387 | 27 days ago | |
feat(random): stateless_random_normal_v2/v3、stateless_uniform 支持 ascend960dt/ascend960pr 平台 Co-authored-by: wuchengwen_oh<wuchengwen4@huawei.com> # message auto-generated for no-merge-commit merge: !6175 merge feat/random-960-support into master feat(random): stateless_random_normal_v2/v3、stateless_uniform 支持 ascend960dt/ascend960pr 平台 Created-by: wuchengwen_oh Commit-by: wuchengwen_oh Merged-by: cann-robot Description: ## 描述 将 stateless_random_normal_v2、stateless_random_normal_v3、stateless_uniform 三个随机数算子的 Ascend 960 平台支持从 A6(ops-math-dev) 迁移到主线,支持 ascend960dt / ascend960pr 两颗芯片。 **迁移策略(少量修改→架构隔离,复用 arch35 目录)**:逐文件归一化比对(MicroAPI→Reg 改名、忽略换行缩进)后确认三者 kernel 逻辑与主线 arch35 版本完全等价,tiling 仅切分对齐粒度存在架构差异,故不新建 arch92 目录、不引入重复代码,差异按 NpuArch 精确等值判断隔离(SocVersion 枚举中 960 追加在末尾,不能用区间比较)。 改动内容: - **算子注册**:三个算子 def.cpp 增加 AddConfig("ascend960dt") / AddConfig("ascend960pr");CMakeLists.txt 的 SUPPORT_COMPUTE_UNIT 与 SUPPORT_TILING_DIR 一一对应新增两颗芯片(tiling 复用 arch35)。 - **kernel 编译配置**:ascendc_config.json 为三个算子注册 ascend960dt/ascend960pr 的 compute_units 与 compile_options(-mllvm -cce-aicore-dcci-before-kernel-end=false),与主线既有 960dt 算子(MirrorPad/Pad/SplitV 等)一致;否则 960 编译将缺失该 DCCI 选项。 - **tiling 架构隔离**: - stateless_random_normal_v2:IsArch92() 按 NpuArch::DAV_9201/9202 判断,arch92 核间按 32 元素对齐、UB 按 256 元素向下对齐;arch35 保持原 512 字节核间对齐、32 字节 UB 向上对齐。CompileInfo 增加 isArch92 标记,覆盖 platformInfo 不可用时回退 CompileInfo 通路的判定。 - stateless_random_normal_v3:新增 BeforeProcess() 覆写,arch92 下将 coreAlignSize 由 512 改为 32;platformInfo 为空时保持默认值。 - stateless_uniform:tiling/kernel 与主线 arch35 完全一致,无需隔离。 - **kernel 架构宏隔离**:stateless_random_normal_v3 kernel 入口用 #if defined(__DAV_VEC__) 包裹(AIV_ONLY 且依赖仅 Vector 核提供的 RegBase VF 接口),避免 AIC 编译通道实例化。 - **op_api**:aclnn_normal_out.cpp 抽取 IsNormalV3SupportedArch(),Normal V3 兼容通路由仅 DAV_3510 扩展为 DAV_3510/DAV_9201/DAV_9202。 - **UT**:新增 stateless_uniform_tiling.h host shim(stateless_uniform kernel 引用 device SIMT builtin __mul_i32toi64,host 侧编译缺失导致其 op_kernel UT 链接失败;cmake 检测到 <op>_tiling.h 后 -include 注入全部 TU 提供等价实现,stateless_normal 等 5 个既有算子早已采用此写法)。 ## 关联的Issue https://gitcode.com/cann/ops-math/issues/3657 ## 测试 - op_host UT:30/30 通过(三个算子 tiling + infershape) - op_api UT:47/47 通过(Normal L2 四接口 + StatelessUniform L0) - 三个算子 ascend950 kernel 二进制构建通过;v3 的 __DAV_VEC__ 宏经 A/B 对比生成的 .o 与加宏前 MD5 完全一致(对 950 零影响) - arch92 tiling 算式对账:按 A6 公式算得编码 53876069761280 与 A6 自身提交的 UT 期望值一致;arch35 仍为 54563264528640,与主线一致 - libophost_math.so 全量编译通过;修改文件全部通过仓库 pre-commit(clang-format/end-of-file/codespell/OAT 合规) - 注:本地 CANN 包仅支持 ascend950,ascend960dt/ascend960pr 的 kernel 编译需在支持 960 的 CANN 版本上验证 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6175 | 24 days ago | |
docs: 修复 stateless_random_normal README 中 aclnnNormalTensorFloat 接口链接文字 Co-authored-by: tangpingchuan<tangpingchuan@huawei.com> # message auto-generated for no-merge-commit merge: !6489 merge docs/comment-cleanup-20261019-16 into master docs: 修复 stateless_random_normal README 中 aclnnNormalTensorFloat 接口链接文字 Created-by: pingchuantang Commit-by: tangpingchuan Merged-by: cann-robot Description: ## 描述 修复 random/stateless_random_normal_v2/README.md 与 random/stateless_random_normal_v3/README.md 中 aclnnNormalTensorFloat 接口所在行的链接文字错误。该行链接目标为 docs/aclnnNormalTensorFloat.md,但链接文字误写为 aclnnNormalFloatTensor,本次将链接文字修正为 aclnnNormalTensorFloat,使其与接口文档名称保持一致。 ## 关联的Issue - #3703 ## 测试 - pre-commit(含 OAT):通过 - Markdown 链接/图片检查:无新增失效项 - Markdown 代码围栏检查:通过 - 全部 26 个分支合并验证:无冲突 ## 文档更新 - random/stateless_random_normal_v2/README.md - random/stateless_random_normal_v3/README.md ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6489 | 23 days ago |
stateless_random_normal_v2
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR&950DT系列产品 | √ |
| Atlas A3系列产品 | × |
| Atlas A2系列产品 | × |
| Atlas 200I/500 A2推理产品 | × |
| Atlas推理系列产品 | × |
| Atlas训练系列产品 | × |
功能说明
- 算子功能:返回一个随机数张量,该随机数是从独立正态分布中获取。
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| shape | 输入 | 输入张量的形状。 | INT64、INT32 | ND |
| key | 输入 | 用于基于计数器的随机数生成算法的密钥。 | INT64 | ND |
| counter | 输入 | 用于基于计数器的随机数生成算法的初始计数值。 | INT64 | ND |
| alg | 输入 | 用于生成随机数的算法。 | INT32 | ND |
| out | 输出 | 输出指定形状的随机值。 | FLOAT、BF16、FLOAT16 | ND |
约束说明
无
调用说明
| 调用方式 | 样例代码 | 说明 |
|---|---|---|
| aclnn调用 | test_aclnn_normal_float_float | 通过aclnnNormalFloatFloat接口方式调用stateless_random_normal_v2算子。 |
| aclnn调用 | test_aclnn_normal_float_tensor | 通过aclnnNormalFloatTensor接口方式调用stateless_random_normal_v2算子。 |
| aclnn调用 | test_aclnn_normal_tensor_float | 通过aclnnNormalTensorFloat接口方式调用stateless_random_normal_v2算子。 |
| aclnn调用 | test_aclnn_normal_tensor_tensor | 通过aclnnNormalTensorTensor接口方式调用stateless_random_normal_v2算子。 |