-
Notifications
You must be signed in to change notification settings - Fork 644
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
Env 中的多牌桌流程优化 数倍以上效率提升 #291
Comments
@leafsoar 感谢 有代码可以分享吗 |
@daochenzha 这边是基于 douzero 针对灌蛋的 “魔改” 尝试,融入了一些 rlcard 设计的优点。而针对 rlcard 框架的版本支持,可能涉及到的模型定义,流程上就需要考虑的比较多,还没有支持。 |
@leafsoar 好的 期待您的code |
请教一个问题,我使用DouZero训练出来的掼蛋模型发现一个问题,就是训练一个月了,loss值一直在5到6之间,不下降了,而且好像还不如随机出牌这么厉害请问是哪里的问题呢 |
可能的原因很多。每个环节都可能出问题,但没一点效果,主要是这两点排查一下: 是否对出牌输赢奖励进行区分 |
@xxTree 哥们,掼蛋是怎么实现的,求分享。 |
就是loss值不收敛,打比方刚开始训练loss在5左右,然后训练一段时间loss就在2.8到3.8之间 不会再降了 |
在 evn 中 run 函数内部,step 所执行的是单牌桌的单步操作,跟牌时的可操作数量往往很少(单牌只能根单牌和炸弹),所以频繁的调用 AI 计算次数的同时,计算量并不高。整体来说 GPU 的使用率会很高,多进程(CPU 核数多)时 GPU 可能会打满。
而使用多牌桌模型,将多个牌桌的 setp 所需数据,组合一次性送入 AI 模型计算,然后拆分到每桌进行逻辑处理。
计算量可能不会减少,但是送入的次数会大大降低。可以多尝试一些牌桌数量,这里测试的结果是,相比单桌 GPU 运算慢载(CPU 核数多,所以 GPU 成了瓶颈),修改成 32 桌同时进行,GPU 占用率会下降到百分之十几,帧率可以提高数倍(CPU 会成为瓶颈)。更多的牌桌数,会导致 GPU 的运算量下降到个位数,显存有一定提升,但不明显。更多的牌桌数不意味着更高的帧率,有个平衡点,这里测试的是 32 桌左右同时送入 step 中,会提高数倍的效率。均衡 CPU 和 GPU 的性能配比
测试硬件:13900KF + 4090
The text was updated successfully, but these errors were encountered: