The task-based dataflow programming model has emerged as an alternative to the process-centric programming model for extreme-scale applications. However, load balancing is still a challenge in task-based dataflow runtimes. In this paper, we present extensions to the PaR-SEC runtime to demonstrate that distributed work stealing is an effective load-balancing method for task-based dataflow runtimes. In contrast to shared-memory work stealing, we find that each process should consider future tasks and the expected waiting time for execution when determining whether to steal. We demonstrate the effectiveness of the proposed work-stealing policies for a sparse Cholesky factorization, which shows a speedup of up to 35% compared to a static division of work.
翻译:基于任务的数据流编程模式已成为极端规模应用以过程为中心的编程模式的替代办法,但是,工作量平衡仍然是基于任务的数据流运行时间中的一项挑战。在本文件中,我们提出对PAR-SEC运行时间的延长,以证明分散的工作盗窃是基于任务的数据流运行时间的一种有效的负载平衡方法。我们发现,与共用的工作盗窃相比,每个过程在决定是否偷窃时应考虑未来的任务和预期的等待执行时间。我们显示了拟议的稀疏空空天空因子化工作节省政策的有效性,与静态的工作分工相比,该政策的速度高达35%。