Roll
【免费下载链接】ops-math本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-math
贡献说明
| 贡献者 | 贡献方 | 贡献算子 | 贡献时间 | 贡献内容 |
|---|---|---|---|---|
| boxw987 | 个人开发者 | Roll | 2026/06 | Roll 算子适配开源仓 |
支持的产品型号
- Atlas A2 训练系列产品
算子描述
功能描述
Roll沿给定维度对输入张量执行循环位移;当dims为空时,先按逻辑视图展平,再执行一维循环位移,最后按原始形状输出。原型信息
算子类型(OpType) Roll name Type data type format 算子输入 x tensor uint8, int8, bfloat16, float16, float32, int32, uint32 ND 算子输出 y tensor 与 x 相同 ND 属性 shifts listInt 整型列表 - dims listInt 整型列表 - 核函数名 roll
约束与限制
- 仅支持
ND格式。 - 支持 0 维到 8 维输入。
dims为空时,shifts长度必须为 1。dims非空时,shifts与dims长度必须一致。dims取值范围为[-rank, rank)。
算子使用
使用该算子前,请参考社区版 CANN 开发套件包安装文档完成开发运行环境部署。
编译部署
cd ${git_clone_path}/ops-math bash build.sh --pkg --experimental --soc=ascend910b --ops=roll ./build_out/cann-ops-<vendor_name>-linux.<arch>.run调用说明
| 调用方式 | 调用样例 | 说明 |
|---|---|---|
| aclnn 调用 | test_aclnn_roll.cpp | 通过 aclnnRoll 接口方式调用 Roll 算子 |
【免费下载链接】ops-math本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-math
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考