已合并
修改缺少转义字符导致接口功能说明显示不完整 #6056
xuyiyang创建于 22 天前
修改缺少转义字符导致接口功能说明显示不完整 #6056
已合并
Pull Request已成功合入, 合并人@CANN-robot
(感谢 xuyiyang 的贡献)atomgit-bot
22 天前 评论:
22 天前 评论:
变更摘要
该 PR 按描述修复了文档显示问题:__sad、__usad 接口说明中的绝对值符号 |x - y| 未转义,会被 Markdown 误识别为表格列分隔符导致功能说明显示不完整,现改为 \|x - y\|;同时补齐 SIMT_programming_intro/api_list.md 与 SIMD_SIMT_hybrid_programming_intro/api_list.md 中 __high2half、normcdfinvf 缺失的句号。补丁主体则是对 impl/simt_api/math_functions_impl.h 中 hypotf、norm3df、norm4df、normf 等数学函数的数值算法重构:新增基于 rsqrtf + Newton 迭代的内部开方辅助函数 __internal_norm_sqrt,并抽取共享的位模式缩放常量,避免中间平方运算的溢出/下溢。
主要改动
- 新增
__internal_norm_sqrt内部辅助函数: 基于rsqrtf估计配合一次 Newton 修正(fmaf)计算sqrt,通过无符号位区间测试(x_bits - 0x0D000000U) > 0x727FFFFFU区分快速/慢速路径,慢速路径覆盖零(保留符号零)、负数(返回 NaN)、NaN、+Inf 及极小正数的缩放处理。 - 重写
hypotf: 改为用__float_as_uint/__uint_as_float位运算,从较大幅值提取指数分桶构造 2 的幂缩放因子(复用新增常量__internal_norm_exponent_bucket_mask、__internal_norm_scale_anchor_bits、__internal_norm_restore_mantissa_bit),将平方项限制在安全范围后经__internal_norm_sqrt开方再恢复量级,替代原b/a除法缩放实现。 - 重写
norm3df/norm4df与__INTERNAL_NORMF宏: 采用与hypotf相同的指数缩放 + FMA 平方累加 + 恢复缩放方式计算多维范数,并增加"仅一个非零项时直接返回绝对值、跳过开方"的快速路径;原有norm3df/norm4df实现被移至ASCENDC_USE_LEGACY_PRECISION条件编译分支保留。 rhypotf/rnorm3df/rnorm4df抽取共享常量: 删除各函数内局部定义的scale_base/scale_mask,统一改用新引入的__internal_norm_scale_anchor_bits与__internal_norm_exponent_bucket_mask。- 魔法数替换为命名常量:
ldexpf与__internal_ilogbf_finite_abs中用新增的__internal_fp32_exponent_bias(127)、__internal_fp32_exponent_shift(23)等常量替代硬编码数值,并补充位模式说明注释。


不准确?
atomgit-bot
22 天前 评论:
22 天前 评论:
22 天前 添加了label:stat/needs-squash
22 天前 添加了label:cann-cla/yes
此处折叠了73条消息 查看更多
21 天前 合入了pull request
20 天前 删除了关联的issue:[Documentation|文档反馈]:未加转移字符导致内容显示不全
20 天前 关联了issue:[Documentation|文档反馈]:未加转移字符导致内容显示不全
20 天前 删除了关联的issue:[Documentation|文档反馈]:未加转移字符导致内容显示不全
20 天前 关联了issue:[Documentation|文档反馈]:未加转移字符导致内容显示不全
描述
修复 __sad 和 __usad 描述显示不全问题
将描述中的绝对值符号:
|x - y|+z
修改为:
|x - y|+z
避免 Markdown 将 | 识别为表格列分隔符。
修复 SIMT_programming_intro/api_list.md 中的句号缺失:
修复 SIMD_SIMT_hybrid_programming_intro/api_list.md 中的句号缺失:
关联的Issue
https://gitcode.com/cann/asc-devkit/issues/1668
测试
文档更新
类型标签