需求:将任务调度到有拥有某种资源或标签的节点,但是不消耗资源,类似K8S中就是根据标签有无来左右Ray的调度行为
问题:
请问是否存在某种办法定义类似标签的概念,将task或actor指定调度到对应节点,但是不消耗资源?
附注,排除ray.remote(resources={“special_hardware”: 1})这种方式,因为这种方式其实会消耗资源。
实测ray.remote(resources={“special_hardware”: 0})这样子也不行,因为会随机调度
需求:将任务调度到有拥有某种资源或标签的节点,但是不消耗资源,类似K8S中就是根据标签有无来左右Ray的调度行为
问题:
请问是否存在某种办法定义类似标签的概念,将task或actor指定调度到对应节点,但是不消耗资源?
附注,排除ray.remote(resources={“special_hardware”: 1})这种方式,因为这种方式其实会消耗资源。
实测ray.remote(resources={“special_hardware”: 0})这样子也不行,因为会随机调度
你的这个需求我们就正在社区提Proposal,现在正在和社区讨论,距离落地实现还有一段时间。
现在你可以先设置resources={“special_hardware”: 99999}
把资源设置无限大,先绕过使用。
好的,感谢回复,期待对应的支持机制出现
没试过special_hardware,但是调度到指定节点是可以的。
我是用state._available_resources_per_node获取到节点清单,从中找出合适的节点,然后.options(resources={nodeID:0.01}).remote() , nodeID是’node:xx.xx.xx.xx’,其中只要’node:'这个key的value高于0.01就行了