1 Star 0 Fork 149

jiangzhihan1 / AscendSpeed_1

forked from Ascend / MindSpeed 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
swiglu.md 653 Bytes
一键复制 编辑 原始数据 按行查看 历史

swiglu融合优化

问题分析

swiglu常见于LLaMA、LLaMA2、Baichuan等LLM模型中的激活层,由于torch侧没有提供swiglu算子的接口,因此在模型中通常是以自定义的形式出现,这种形式的执行效率相对较低。

解决方法

Ascendspeed对将swiglu操作合并成一个算子,减少数据传输和临时存储。算子接口见link

使用场景

模型使用swiglu作为MLP层激活函数,脚本中设置了--swiglu

使用方法

设置--used-fused-swiglu即可调用swiglu融合算子。

使用效果

开启融合算子可以节省内存,提升性能。

1
https://gitee.com/jiangzhihan1/AscendSpeed_1.git
git@gitee.com:jiangzhihan1/AscendSpeed_1.git
jiangzhihan1
AscendSpeed_1
AscendSpeed_1
master

搜索帮助