- 博客(5)
- 收藏
- 关注
原创 深入Ascend C(三):构建端到端自定义LayerNorm算子与性能调优实战
x: [B, S, H] —— 输入张量(FP16)gamma: [H] —— 缩放参数(FP16)beta: [H] —— 偏移参数(FP16)y: [B, S, H] —— 归一化结果(FP16)eps = 1e-5本文通过实现 LayerNorm 这一“小而关键”的算子,展示了 Ascend C 在Reduce 操作、精度控制、内存复用、流水线调度等方面的强大能力。可将 LLM 推理延迟降低 20%+能在边缘设备部署更大模型为自研模型提供性能护城河。
2025-12-12 22:09:30
735
原创 【无高性能推理利器:基于 Ascend C 实现 ReLU-Add 算子融合实战详解标题】
本文深入探讨了Ascend C 算子融合的原理与实践,通过ReLU-Add融合价值:减少 HBM 访问,提升带宽利用率;实现要点:双缓冲、数据同步、UB 生命周期管理;性能收益:实测提升超 50%,对推理延迟敏感场景意义重大。💡工程建议优先融合连续 element-wise 算子使用msprof分析内存瓶颈对长尾模型(如推荐系统)收益尤为显著随着大模型推理成本压力加剧,算子融合将成为昇腾开发者的核心技能。掌握 Ascend C,你就能在国产 AI 芯片上释放极致性能!
2025-12-11 18:13:59
745
原创 深入昇腾 AI 编程:用 Ascend C 从零实现高性能自定义算子(附完整代码)
Ascend C 要求每个算子是一个类,继承隐式约定(无需显式继承),并包含Init和Process方法。public:// 配置 Tensor 描述// UB 缓冲区// 每次处理 128 个 FP16(= 256 字节)// 1. 从 GM 搬运 A、B 到 UB// 2. 执行向量加法// 3. 将结果写回 GMprivate:TPipe pipe;🔍关键点说明__aicore__:表示该函数在 AI Core 上执行。DataCopy。
2025-12-11 18:08:56
794
原创 Ascend C 高级实战:自定义卷积算子开发与性能调优全解析
在深度学习模型中,卷积(Convolution)是最核心、计算最密集的操作之一。尽管主流 AI 框架(如 MindSpore、PyTorch)已内置高度优化的卷积实现,但在以下场景中,开发者仍需编写自定义卷积算子特殊卷积变体:如空洞卷积(Dilated Conv)、分组卷积(Group Conv)、深度可分离卷积(Depthwise Separable Conv)的混合变种;非标准数据布局:输入/权重采用非 NCHW 格式(如 NHWC、Fractal-Z);极致性能需求。
2025-12-10 23:02:55
733
原创 Ascend C 编程深度解析:从入门到高性能算子开发实战
Ascend C 是华为为昇腾 AI 处理器(如 Ascend 910B)量身定制的高性能编程接口。它运行在Device 端(即 AI Core 上),用于实现用户自定义的算子逻辑。贴近硬件:直接操作昇腾芯片的计算单元(Cube Unit、Vector Unit)和片上内存(Unified Buffer, UB)。自动流水线调度:通过Pipe机制实现计算与数据搬运的重叠,最大化硬件利用率。强类型安全:基于 C++ 模板和类型系统,避免低级错误。
2025-12-10 22:59:29
921
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅