不运行任何job的时候,Ray集群节点中的内存使用率过高

使用kuberay部署集群,ray == 2.4.0 python ==3.7.15

集群在运行过程中,在没有任何job运行的情况下,head节点和gpu group节点的内存使用率很高,而且集群的内存使用率在每次job运行完之后,与提交job前的内存使用率相比,都会更高。

进入gpu pod内部发现,是raylet的内存很多,

这个集群是我重启过的,在重启之前,gpu的内存占用率到达过将近50%(没有任何job运行),且head节点被发现重启过一次,我认为可能是oom之后重启。
这个是那个集群时的dashboard截图:



有所不同的是这个时候的集群还多了一些idle的内存占用

我在github和英文论坛上找到了一些类似的问题,但都没有给出明确的解决方案,请问各位大佬有什么建议吗?感谢大家。

这是我找到的一些讨论链接:
这个可能最相关:

idle相关:

我现在有一个猜想,我们团队目前在ray上跑一些测试代码,有时运行出现问题,我们会使用ray job里的stop api强行停止某个job,这会导致Raylet占用的内存不断增加吗?

raylet在跑任务后确实会有共享内存占用,你这里大部分是SHR。可以尝试把object store的内存调下,调整这个参数 free_objects_period_milliseconds

另外可以参考这个帖子 Ray 2.4 python 遇到一个疑似内存放大的问题 - #7,来自 Catch-Bull