登录社区云,与社区用户共同成长
邀请您加入社区
第一次在昇腾 910 上跑千卡训练的时候,通信开销直接把算力优势全吃掉了。8 张卡训练 ResNet-50,epoch 时间比单机还慢——这不是卡的问题,是通信没跑通。
昇腾NPU运行时(runtime)是连接算子编译与硬件执行的关键中间层,负责内存管理、任务调度和流控制。它通过Context管理设备资源,利用Stream实现并行计算,借助Event进行流间同步,并采用高效的内存分配策略。runtime采用命令队列模式下发任务,支持同步/异步执行,通过多Stream并行提升NPU利用率。开发者可通过内存池复用、多流并行等技术优化性能,并使用msprof工具监控硬件
摘要: 在昇腾NPU上运行LLaMA时发现RMSNorm(替代LayerNorm)占8%推理时间,因其标准实现未优化。RMSNorm相比LayerNorm计算量少30%(省去均值计算和β参数),但标准实现存在两次HBM读写和FP16数值不稳定问题。ops-transformer通过融合Kernel(单次HBM访问)、FP32累加和多核并行,将延迟降低67%(从1.8ms至0.6ms),占比从8.2