登录社区云,与社区用户共同成长
邀请您加入社区
本文总结了Ascend C算子开发的8个关键要点:1)建议首个算子选择Softmax/LayerNorm等稍复杂的算子以体会并行化等核心机制;2)Tiling策略直接影响并行效率,需根据场景选择合适切分方式;3)必须处理32字节地址对齐问题;4)调试需依赖黑盒日志和分段验证;5)性能优化重点在于减少数据搬运,推荐双缓冲技术;6)算子集成需编译为.so并注册到GE;7)测试需覆盖shape、数值和对
前两天,我一个朋友跳槽去了华为诺亚方舟实验室。这哥们儿之前在外企干了五年,天天写PyTorch代码,调调ResNet、YOLO什么的,日子过得也算滋润。结果一入职华为,第一周就被扔了一个任务:“给我们写一个自定义算子,要求在昇腾NPU上跑,比PyTorch原生快30%。他当时就懵了——“啥?自定义算子?我连CUDA都没写过啊!后来他才知道,有个仓库叫catlass,专门解决这类问题。// 1. 定