-
Notifications
You must be signed in to change notification settings - Fork 215
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
torch, triton版本确认及显存占用分析 #490
Comments
v100 请到 github 上triton的官网,找到安装 nightly 版本的命令,2.0.0 和 2.1.0 都不能很好的支持V100显卡。 |
多谢回复;目前在A800上启动的镜像可以正常work了,但是在测试过程中还有问题没追溯清楚; 我们启动命令如下:
问题:裸模型情况下的推理显存分布; 当前测试的deepseek v2模型,原模型有236b,裸模型参数bfloat16分布在8卡上共计444gb,单卡大致需要57gb;
单卡实际显存显示:66.5gb,请问这将近10gb的显存主要是哪些地方在占用,因为我们也没有指定额外的参数。 第二类问题,kv cache大小及max_total_token_num的设定 deepseek v2的kv cache管理也追溯了相关代码,应该实现了mla的做法;但对于这部分我们也有两个问题...
公式中146需要除以/2,也就是146/2/0.000488281,这个还请确认下。 以上,是当前测试遇到的问题; 先感谢大佬们的工作,可以开源mla的实现,目前应该是首家... 因为我们项目时间也比较紧,所以就直接提问了,还望不吝赐教,谢谢! |
I tried to use
my kernel is already with @triton.jit
Any advice on this? Thanks in advance! |
@LittleYouEr 第二个问题, mla 的max total token num 参数的计算和估计,和文档中描述的可能不是那么适用,因为那个主要是老的MHA架构的计算,你的思考是正确的,如果tp了确实需要多有一份kv,为了速度,没办法。 还有一个问题就是目前的 mla 算子没有详细的调优过,可能有不少提升空间。 moe 矩阵乘法部分实现也很粗糙,有很大的提升空间,后续还会逐步改进。 |
@brisker I did not use this feature before. Maybe you can try to update your triton version to nightly version. I am not sure that triton == 2.1.0 can support pdb.set_trace(). |
显存消耗那块看了源码,也做了一些调试输出,比较清楚了; 后面mla的优化,感觉还得靠大佬带飞啊; 感谢回复! |
@hiworldwzj |
requirements.txt中是torch 2.0.0;安装的时候和triton 2.1.0 不兼容;
安装时triton改为2.0.0安装;
安装后单独更新安装triton至2.1.0版本;
server可以正常运行,请求时发生错误:
基础环境:redhat 7, cuda11.8, 4卡v100,python3.10
The text was updated successfully, but these errors were encountered: