1

我想在多节点分布式内存集群中并行调度和运行任务。

我有许多不同的任务依赖于其他任务,但我也想使用不同的参数并行运行相同的任务。例如,假设我有一个任务,其所需的最佳参数为 10,但有可能失败(由于特定任务中的某些复杂性 - 事先无法知道)。为了对冲失败的风险,我还想使用下一个最佳参数运行相同的任务。为了继续对冲风险,我想运行更多任务,同时降低次优参数。

基于最佳参数的任务之间存在隐含的层次结构。所有具有较少最优参数的任务都可以被认为是对更好价值的对冲。

我的主要问题是:由于我正在使用不同的参数并行运行相同的任务,并且基于参数的最优性,任务的优先级是在该任务的任何实例成功完成的意义上,我想要杀死具有较低优先级(具有更差参数)的任务的所有后续实例并将它们从进程队列中删除。换句话说,当我知道更好的参数任务已成功完成时,我想终止对冲进程。

DAGuE允许这样做吗即从队列中删除任务?如果没有,是否可以建议另一个 C++ 调度程序。

4

0 回答 0