Silu【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品 / Atlas A3 推理系列产品√Atlas A2 训练系列产品 / Atlas A2 推理系列产品√Atlas 200I/500 A2 推理产品xAtlas 推理系列产品 AI Core√Atlas 推理系列产品 Vector CorexAtlas 训练系列产品xKirin X90√Kirin 9030√功能说明按元素做Silu运算计算公式如下函数原型template typename T, bool isReuseSource false __aicore__ inline void Silu(const LocalTensorT dstLocal, const LocalTensorT srcLocal, uint32_t dataSize)参数说明表 1模板参数说明参数名描述T操作数的数据类型。支持的数据类型为half、float。isReuseSource是否允许修改源操作数。该参数预留传入默认值false即可。表 2接口参数说明参数名输入/输出描述dstLocal输出目的操作数。类型为LocalTensor支持的TPosition为VECIN/VECCALC/VECOUT。srcLocal输入源操作数。类型为LocalTensor支持的TPosition为VECIN/VECCALC/VECOUT。源操作数的数据类型需要与目的操作数保持一致。dataSize输入实际计算数据元素个数。返回值说明无约束说明操作数地址偏移对齐要求请参见通用说明和约束。不支持源操作数与目的操作数地址重叠。当前仅支持ND格式的输入不支持其他格式。调用示例// dstLocal: 存放Silu计算结果的Tensor // srcLocal: 存放Silu计算输入的Tensor // 需要参与计算的元素个数为512 AscendC::Silu(dstLocal, srcLocal, 512);结果示例如下输入数据(srcLocal): [-100. -50. -20. -10. -5. -4. -3. -2. -1. -0.5 -0.4 -0.3 -0.2 -0.1 -0.01 0. 0. 0.01 0.1 0.2 0.3 0.4 0.5 1. 2. 3. 4. 5. 10. 20. 50. 100. ] 输出数据(dstLocal): [ -0. -0. -0.00000004 -0.00045398 -0.03346425 -0.07194484 -0.14227761 -0.23840587 -0.2689414 -0.18877034 -0.16052495 -0.12766725 -0.0900332 -0.04750208 -0.004975 0. 0. 0.005025 0.05249792 0.10996681 0.17233276 0.23947507 0.31122968 0.7310586 1.761594 2.8577225 3.928055 4.9665356 9.999546 20. 50. 100. ]【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考